| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 356 人关注过本帖
标题:有请各位帮帮忙啊...真的很急...
只看楼主 加入收藏
爱之叶青
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-9-27
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
有请各位帮帮忙啊...真的很急...
急求个三角函数的编程...就是sin(x)=..........就是(-1)的i次方再乘以x的(2i+1)次方..最后除以(2i+1)的阶乘....谢谢了..我要交给老师的..作业来的
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{   
   
    cout<<setprecision(15);
    cout<<"input x=";
    double x;
    cin>>x;
    cout<<"input required precision:";
    double prec;
    cin>>prec;
    double precp=1e100;
    int i=0;
    double result=0;

    do
    {
        double temp=1;
        for(int j=1;j<=(i+i+1);j++)
        {   
        
            temp*=x/j;
        
        
        }
        result+=temp;
        i++;
        precp=fabs(temp);

    }while(precp>prec);

    cout<<result<<endl;
    cout<<exp(x)<<endl;
    cout<<i<<endl;
    cout<<precp<<endl;

    return 0;
}
怎么改才对啊.....帮帮忙..
搜索更多相关主题的帖子: 有请 
2010-09-28 15:44
m21wo
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:4
帖 子:440
专家分:1905
注 册:2010-9-23
收藏
得分:20 
帮你一下!呵呵!
程序代码:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{   
   
    cout<<setprecision(15);
    cout<<"input x=";
    double x;
    cin>>x;
    cout<<"input required precision:";
    double prec;
    cin>>prec;
    double precp;
    double i=0;
    double result=0;

    do
    {
        double temp=1;
        for(int j=1;j<=(i+i+1);j++)
            temp*=x/j;
        temp=temp*pow(-1,i);
        result+=temp;
        i++;
        precp=fabs(temp);

    }while(precp>prec);
    cout<<"利用泰勒展开式得sin(x)为:"<<endl;
    cout<<result<<endl;
    cout<<"直接调用cmath库里函数sin(x)为:"<<endl;
    cout<<sin(x)<<endl;
    cout<<"泰勒展开式n值为:"<<endl;
    cout<<i<<endl;
    cout<<"在精度下泰勒展开式最后一项为:"<<endl;
    cout<<precp<<endl;

    return 0;
}

If You Want Something, Go Get It, Period.
2010-09-28 21:17
爱之叶青
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-9-27
收藏
得分:0 
我令x=30,结果怎么等于-0.5的呀?
2010-09-29 10:41
爱之叶青
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-9-27
收藏
得分:0 
回复 2楼 m21wo
我令x=30,结果怎么等于-0.5呀
2010-09-29 10:41
m21wo
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:4
帖 子:440
专家分:1905
注 册:2010-9-23
收藏
得分:0 
你输得30 是弧度啊 !一弧度约等于57度。所以sin(30)不等于0.5
图片附件: 游客没有浏览图片的权限,请 登录注册

If You Want Something, Go Get It, Period.
2010-09-29 16:25
快速回复:有请各位帮帮忙啊...真的很急...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013824 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved