计算sinx的值,c语言编程问题
来源:百度知道 编辑:UC知道 时间:2024/06/27 08:52:41
做上来者,加15分,好的话可以在加
#include <iostream>
#include <math.h>
#include <conio.h>
int fact(int n) {
if(n == 0) return 1;
return n * fact(n - 1);
}
double mysin(double x) {
const double PRECISION = 100.;
double sum = x, preTerm = x;
for(int i = 1;; i++) {
double currentTerm = (i % 2 == 1 ? -1 : 1) * pow(x, (2 * i + 1)) / fact(2 * i + 1);
sum += currentTerm;
if(fabs(preTerm + currentTerm) * PRECISION > 1.) preTerm = currentTerm;
else break;
}
return sum;
}
int main(int argc, char* argv) {
std::cout << mysin(3.14 / 2) << std::endl << sin(3.14 / 2) << std::endl;
getch();
return 0;
}
#include<iostream.h>
////////////////////////
//计算x^n //
//////////////////////
double fun1(int x,int n)
{ if(n<0)
ex