計算角度的正弦值

正弦函數的求解公式

#define PI 3.14159265
#include <iostream>
#include <cmath>
//#include <stdio.h>
using namespace std;
//階乘
long mul(int n)
{
	//assert(n>0);
	if(n==1)return 1;
	long value=1;
	for(int i=1;i<=n;++i)
	value *= i;
	
	return value;
}
//求通項
float fun(float x,int n)
{
	//assert(n>=0)b
	int a;//符號
	if((2*n+1)%4==1)
		a=1;
	else
		a=-1;
	return pow(x,2*n+1)/mul(2*n+1)*a;
}

int main()
{
	int n;
	while(1)
	{
		cout<<"請輸入需計算的角度值:"<<endl;
		cin>>n;
		float d=n/180.0*PI;
		float sin=0;
		//計算7項和
		for(int i=0;i<7;++i)
			sin+=fun(d,i);
		
		cout<<"sin"<<n<<"度="<<sin<<endl;
	}
	return 0;

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章