[C++] Obliczanie funkcji sinus
: 20 mar 2014, o 15:19
Witam. Muszę napisać program, który będzie mi obliczał wartość funkcji sinus od zadanego argumentu. Skorzystałem z rozwinięcia w szereg i skleiłem coś takiego :
Program się kompiluje tylko podaje mi złe wartości. Ktoś pomoże znaleźć błąd?
Kod: Zaznacz cały
#include <iostream>
#include <math.h>
using namespace std;
int silnia(int n)
{
switch (n)
{
case 0: return 1;
break;
default: return n * silnia(n-1);
}
}
int main ()
{
int x;
cout << " Podaj wartosc dla ktorej obliczony ma byc sinus " <<endl;
cin >> x;
int n;
cout << " Podaj liczbe do ktorej chcesz sumowac szereg " <<endl;
cin >> n;
long double sinx = 0;
for (int i = 0 ; i<=n ; i++){
long double s = pow(x,2*i+1);
int j = pow(-1,i);
int m = silnia(2*i+1);
sinx += j * (s/m);
}
cout << " Sinus wartosci ktora podales wynosi " << sinx <<endl;
}