c++编程求一弧度的正弦近似值直到最后一项绝对值小于10的-5次方

作者&投稿:艾洋 (若有异议请与网页底部的电邮联系)
C++:编程计算π的近似值,要求计算到最后一项的绝对值小于为止。~

你好,很高兴为你解答!
你上面的程序大概有两个问题
1、为什么你得到的是4而不是3.14.....
因为在:先计算 1/(1+2*i) ,然后计算的结果再和y做计算
但是上面的 i 是int 类型,所以 1/(1+2*i) 结果也是int类型,那就会一直是0的,明白了吧o(∩_∩)o
当然y的值一直都是1,最终结果始终是4
2、你采用 switch的时候忘了一件事情哦, 每个case 后面有个break; 不然程序执行case 0 后都会再执行 case 1;结果也会是错误的

解决的办法就是:把你之前定义变量K也用上吧
#include
void main(void)
{
int i=1;
double y=1,k=1;
do
{
switch(i%2)
{
case 0:y=y+(k/(1+2*i));break;
case 1:y=y-(k/(1+2*i));break;
}
i++;
}while(2*i<=99999);
cout<<"pi="<<4*y<<'
';
}

祝你好运,如果有帮助,请采纳吧,谢谢o(∩_∩)o

d=1/b错了。b是int型,当b大于1时,d就永远是0。改成d=1.0/b就OK。


# include <stdio.h>
int main ()
{
double sx,x,a,b;
int n,f=1;
printf ("Please input x:");
scanf ("%lf",&x);
sx=a=x;
b=1;
for (n=1;n<=20;++n)
{
a*=x*x;
b*=2*n*(2*n+1);
f=-f;
sx+=a/b*f;
}
printf ("sin(%lg)=%.5lf
",x,sx);
return 0;
}




用c 编程实现sin30度-tan30度表达式
包含头文件 #include <math.h> c 语言三角函数 用 弧度单位。你要用 角度数除以圆周率pi 得弧度,再计算 sin30度-tan30度。include <stdio.h> include <math.h> int main (){ double pi;double x;pi= 4.0*atan(1.0);printf("pi=%lf\\n",pi);x = sin(30.0\/180.0*pi)-tan...

弧度与角度换算公式
因此,掌握这两个单位之间的转换关系对于理解和应用数学知识至关重要。此外,在计算机编程中处理三角函数时,很多编程语言都默认使用弧度作为输入参数进行计算,因此了解换算公式对于编程人员来说也是必要的。总的来说,弧度与角度之间的换算公式是数学和科学计算中的基础工具。掌握这一工具可以帮助我们更好地...

请教一下:用matlab编角度转弧度,为什么会出现未定义函数或变量 'dms...
用matlab编角度转弧度,为什么会出现未定义函数或变量 'dms'?最大的问题可能没有对变量 dms 进行声明变量。可以在自定义的角度转弧度函数中,输入下列代码 syms dms 实际上matlab有自带deg2rad()角度转弧度函数,使用格式 dms=[30 45 18];%角度 30°45"18'D=dms2degrees(dms) %角度 R=deg2rad...

matlab函数sinx中自变量的单位是?
在 MATLAB 中的函数 sin(x) 中,自变量 x 通常假定以弧度为单位。MATLAB 和其他编程语言中的正弦函数以弧度而不是度为单位测量的角度上运行。一个弧度大约等于 57.3 度,因此要将度转换为弧度,可以使用以下公式:弧度 = 度 * (pi \/ 180)例如,要将 90 度转换为弧度,可以在 MATLAB 中...

c语言编程中,sinx怎么表示?
在写C语言的程序时,在开头加上一个头文件math.h即可。即可直接使用sin(x),特别注意x应该为弧度制,如果不是弧度制需要转化为弧度制。添加头文件方法:#include<math.h>。

怎样用C语言编写数学公式
x为弧度double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度double atan(double x) 返回x的反正切tan-1(x)值,x为弧度double atan2(double y,double x) 返回y\/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度double sin(double x) 返回x的...

怎样用c语言画正弦函数
3、之后,再按Enter键,会看到新的一行。4、在这一行中输入:#include<math.h>。5、接着,在void main()中去定义一个单精度型变量。6、定义完回车后,输入a=sin(90);注意,90指的是90弧度。7、再次回车,输入printf("%f",a);。8、可以按F5键去运行这段程序,会看到如下的结果。即90弧度...

fx5800怎么将角度转换成弧度!
如果是在普通计算模式COMP下,计算出角度值后按度分秒键(°′″)即可使计算结果在弧度与度之间转换,如下图:如果是在编程模式PROG下,按FUNCTION、5:ANGLE、2:r 即可使计算结果显示为弧度

怎么编程实现对 tan x = 0.5 x;的求解问题??x是弧度制。。。
就是图象y =tan x 与 y = 0.5 x 的交点:y =tan x 的定义域为:- 3.14 \/ 2 -- 3.14 \/ 2 所以就是求该范围中,两个图象的交点:Option Explicit Private Sub Command1_Click()Dim Pi As Double Dim x As Double Pi = 3.14159 For x = -Pi \/ 2 To Pi \/ 2 Step 0.0001 ...

VB编程:近似计算COS(X)=1-X^2\/2!+X^4\/4!-X^6\/6!+……(X为弧度,计算精度...
n = n + 1 Loop End If End Function Public Function f(n As Integer)If n = 0 Then f = 1 Else f = n * f(n - 1)End If End Function Private Sub Form_click()Form1.Show Dim x#, y x = InputBox("求cos x,请输入x.", "输入")y = c(x)Print Format(y, "0....

瓮安县13285226447: C++计算正弦的近似值.sin(x)=x - x^3/3!+x^5/5! - x^7/7!+……,直到最后一项的绝对值小于10^( - 5).哪里错了 -
秋养姜黄: 修改注意For循环语句:for (j =1, m = 1; j <= n; j++) 额外提示:为什么sin函数要这么来算?因为电脑不会计算非线性函数,通过《高等数学》中的“泰勒公式”,转化为线性函数来近似计算非线性函数的对应值.如果没有泰勒公式,计算机至少减少一半的功能

瓮安县13285226447: 输入一弧度值x,输出正弦sin(x),余弦cos(x),用c++编译 -
秋养姜黄: #include#include using namespace std; void main() { double x; cin >> x; cout << "cos(x)=" << cos(x) << endl << "sin(x)=" << sin(x) << endl; }

瓮安县13285226447: 近似计算cos (x) = 1 - + - +…(x为弧度,计算精度为10) 用C++怎么编写程序啊 -
秋养姜黄: 给,已经编译运行确认:1.近似计算cos (x) = 1-x^2/2! + x^4/4!-x^6/6! +…(x为弧度,计算精度为10o) 注意一下:由于不知道你这里的"计算精度为10o"是什么意思,所以我的代码里是用1e-5,也就是10的-5次方做的,你到时候改成你想要的就行...

瓮安县13285226447: C++:编程计算π的近似值,要求计算到最后一项的绝对值小于为止. -
秋养姜黄: 你好,很高兴为你解答!你上面的程序大概有两个问题1、为什么你得到的是4而不是3.14.....因为在:先计算 1/(1+2*i) ,然后计算的结果再和y做计...

瓮安县13285226447: C语言编程求正弦 sin(x) 的近似值如题 谢谢了 -
秋养姜黄: 你这程序存在很多语法错误例如单精度浮点格式符是%f,不是f%,求阶乘不能用!,下面是我的程序,你可以参考一下: #include #include int jiecheng(int x);//递归求阶乘 main() { double x,e,s,d; int n; n=0; s=0; printf("依次输入x和误差e\n"...

瓮安县13285226447: 编写C++程序设计,输入一个三角形角度,计算它的正弦,余弦,正切.非常感谢,非常急. -
秋养姜黄: #include <stdio.h> #include <math.h>int main(){ double angle; printf("Input an angle:"); scanf("%f",&angle); printf("sin(%f)=%f\n",angle,sin(angle)); printf("cos(%f)=%f\n",angle,cos(angle)); printf("tan(%f)=%f\n",angle,tan(angle)); return 0; }

瓮安县13285226447: 使用C++,求pi的近似值用下面的公式求pi的近似值pi/4 = 1 - 1/3+1/5 - 1/7+.直到最后一项的绝对值小于10的 - 7次方为止如下式我自己编的#include "stdafx.h"... -
秋养姜黄:[答案] 才疏学浅,你的程序好多看不到,我挑主要的for循环中的说:#include "iostream"#include "math.h"using namespace std;void main(){int n = 1;double P = 0,pi;for(n=1;pow((2*n-1),(-1))>pow(10,(-7));n++) //pow()的...

瓮安县13285226447: c语言 输入一个度数x 求弧度 sin x cos x tan x cot x -
秋养姜黄: cosx=1/2,由常见角度的正余弦直接可得x=2kπ±π/3

瓮安县13285226447: C++:编程计算π的近似值,要求计算到最后一项的绝对值小于为止.利用公式π/4≈1 - 1/3+5/1 - 7/1+……,直到最后一项的绝对值小于10的 - 5次方#includevoid ... -
秋养姜黄:[答案] 很高兴为你解答!你上面的程序大概有两个问题1、为什么你得到的是4而不是3.14.因为在:先计算 1/(1+2*i) ,然后计算的结果再和y做计算但是上面的 i 是int 类型,所以 1/(1+2*i) 结果也是int类型,那就会一直是0的,明白了...

瓮安县13285226447: c++ 编写程序用公式 计算e的近似值.直到最后一项小于输入的精度. -
秋养姜黄: //利用公式e=1+1/1!+1/2!+...+1/n! #include "iostream" using namespace std; double fact(int n) {double sum=1.0;int i;for(i=1;i<=n;i++)sum*=i;return sum; } int main() {double e=0,f,item=1;int i;cout<<"请输入精度:";cin>>f;for(i=0;;i++...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网