Originariamente inviata da
Elizajaneface99
Ciao a tutti, devo calcolare il seno di un angolo utilizzando questa formula: sin(x)=x-(1/3!)*x^3 + (1/5!)*x^5 - (1/7!)*x^7 ...
Per farlo ho fatto questo programma che in teoria mi sembra giusto, ma quando il computer lo esegue o non scrive nulla o continua il ciclo all'infinito
Ecco il programma:
#include <iostream>
#include <cmath>
using namespace std;
int fatt(int a)
{
if(a==1){return 1;}
else
return a*fatt(a-1);
}
int main()
{
float x, a, sin=0;
cout<<"Inserisci l'angolo di cui vuoi sapere il seno: ";
cin>>x;;
a = (x*M_PI)/180;
for(int i=3; i<10; i+6){
sin = sin + (1/(fatt(i)))*pow(a, i)+(1/(fatt(i+2)))*pow(a, i+2)-(1/fatt(i+4))*pow(a, i+4);
}
cout<<"Il valore del seno e': "<<a-sin<<endl;
return 0;
}
Cosa è sbagliato secondo voi? Grazie in anticipo
codice:
#include <iostream>
#include <cmath>
using namespace std;
int fatt(int a)
{
if(a==1){return 1;}
else
return a*fatt(a-1);
}
int main()
{
float x, a, sin=0;
cout<<"Inserisci l'angolo di cui vuoi sapere il seno: ";
cin>>x;;
a = (x*M_PI)/180;
for(int i=3; i<10; i+=6){
sin = sin + (1/(fatt(i)))*pow(a, i)+(1/(fatt(i+2)))*pow(a, i+2)-(1/fatt(i+4))*pow(a, i+4);
}
cout<<"Il valore del seno e': "<<a-sin<<endl;
return 0;
}