【常见算法】求近似值
目录
1. 求sinx的近似值
2. 求π的近似值
1. 求sinx的近似值
已知求sinx的近似值,要求误差小于。
思路:
声明变量inc和s,inc表示增量,s表示sinx的值。当inc的绝对值<精度时结束循环,每次循环先让s累加,再更新inc。
#define eps 1e-8//精度#include <stdio.h>
#include <math.h>double Sin(double x)
{double inc = x;double s = 0.0;int i = 1;while (fabs(inc) >= eps)//fabs用于求绝对值,头文件math.h{s += inc;inc *= -x * x / ((2 * i + 1) * (2 * i));i++;}return s;
}int main()
{double x = 0.0;scanf("%lf", &x);printf("%lf\n", Sin(x));return 0;
}
2. 求π的近似值
已知求π的近似值,要求误差小于。
思路:
声明变量tmp和halfpi,tmp表示前n项的积,halfpi表示π/2的值,当tmp-halfpi<精度时结束循环,每次循环先把tmp赋值给halfpi,再更新tmp。
#define eps 1e-5//精度#include <stdio.h>double Pi()
{double tmp = 1.0;double halfpi = 0.0;int i = 1;while (tmp - halfpi >= eps){halfpi = tmp;tmp *= ((2 * i * 1.0) / (2 * i - 1)) * ((2 * i * 1.0) / (2 * i + 1));i++;}return 2 * halfpi;
}int main()
{printf("%lf\n", Pi());return 0;
}
【常见算法】求近似值相关推荐
- c语言分治法求众数重数_五大常见算法策略之——递归与分治策略
递归与分治策略 递归与分治策略是五大常见算法策略之一,分治策略的思想就是 分而治之 ,即先将一个规模较大的大问题分解成若干个规模较小的小问题,再对这些小问题进行解决,得到的解,在将其组合起来得到最终的 ...
- 分治法一个整数数列求最大值最小值_五大常见算法策略之丨递归与分治策略
递归与分治策略 递归与分治策略是五大常见算法策略之一,分治策略的思想就是分而治之,即先将一个规模较大的大问题分解成若干个规模较小的小问题,再对这些小问题进行解决,得到的解,在将其组合起来得到最终的解. ...
- 机器学习常见算法及优缺点!
点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 ? Index 决策树算法 分类算法 聚类算法 集成算法(AdaBoost算法) 人工 ...
- JavaScript 面试中常见算法问题详解
JavaScript 面试中常见算法问题详解,翻译自 https://github.com/kennymkchan/interview-questions-in-javascript.下文提到的很多问 ...
- acm常见算法及例题
1 acm常见算法及例题 2 3 初期: 4 一.基本算法: 5 (1)枚举. (poj1753,poj2965) 6 (2)贪心(poj1328,poj2109,poj2586) 7 (3)递归和分 ...
- etc的常见算法_几个常用算法的适应场景及其优缺点(非常好)
本文主要回顾下几个常用算法的适应场景及其优缺点! 机器学习算法太多了,分类.回归.聚类.推荐.图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验. ...
- 看得见的算法蒙特卡洛问题——使用蒙特卡洛算法求PI值
看得见的算法蒙特卡洛问题--使用蒙特卡洛算法求PI值 1.什么是蒙特卡洛问题 蒙特卡洛方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算 ...
- Java尚硅谷基础笔记-day4数组-数组常见算法
第三章 数组 3.4 数组中涉及的常见算法 3.1 数组的概述 3.2 一维数组的使用 3.3 多维数组的使用 3.4 数组中涉及的常见算法 3.5 数组工具类的使用 3.6 数组使用中的常见异常 3 ...
- 常见算法之Flood Fill算法
常见算法之Flood Fill算法 算法介绍 基本作用:寻找连通块 基本方法:BFS搜索 适用题目:需要找出分类块的题目/一些聚类问题 顾名思义,Flood Fill算法就是像洪水泛滥一样去寻找周围符 ...
- c语言最长递增子序列nlogn,十月常见算法考题、最长递增子序列,Leetcode第300题最长上升子...
十月常见算法考题.最长递增子序列,Leetcode第300题最长上升子 十月常见算法考题.最长递增子序列,Leetcode第300题最长上升子序列的变种,我没见过乔丹,今天詹姆斯就是我的神! @Aut ...
最新文章
- 解密 Dubbo 三大中心的部署架构
- 使用Eclipse更新软件时出现Unable to locate secure storage module错误的解决方法
- Python之美[从菜鸟到高手]--一步一步动手给Python写扩展(异常处理和引用计数)
- oracle 唯一索引,唯一约束,主键之间的联系
- 剑指offer之两个队列实现栈的问题
- 光纤交换机产品功能介绍
- StringBuilder String string.Concat 字符串拼接速度再议
- LeetCode篇:1(两数之和)
- AirFlow常见问题汇总
- uni app input添加获取验证码按钮_FILEX | 如何在UniSwap挖到UNI?
- ‘vue-cli-service' 不是内部或外部命令,也不是可运行的程序或批处理文件的报错
- vofuria的开发(3)将vuforia引入新建立的工程
- 转载:Visio2013的密钥
- vs2003远程调试总结
- 秦九韶多项式运算时间java_多项式计算之秦九韶算法
- matlab中nc值是什么意思,科学网-.nc数据读取详细资料matlab2010a及后面的版本-张凌的博文...
- memory exhausted mysql 42000 1064
- bzoj4246: 两个人的星座
- 大学寒假这样过,过完惊艳所有人,不只是你的宿友,mysql基础教程西泽pdf
- 肖星老师《一本书读懂财报》经典语句摘录(下)实战篇