
Ayuda ejercicio en C
Publicado por Victor (17 intervenciones) el 19/08/2016 13:16:17
Hola buenas, tengo un problema con mi codigo. El programa tiene que calcular el seno de un numero como una serie de terminos. Mi problema es que cuando el termino de la serie, n , es 15 el valor de la variable serie toma un numero erroneo, los terminos anteriores los suma y salen todos bien, pero cuando n = 15 el programa me falla y no se por qué la verdad.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//Ejercicio 24
// Calcular el seno de un numero
#include <stdio.h>
#include <math.h>
void seno(int x);
int main(){
int x;
printf("Introduce el valor para calcular el seno: ");
scanf("%i",&x);
seno(x);
system("pause");
return 0;
}
void seno(int x){
int i, n, j, aux;
double serie;
serie = 0.0;
n = 3;
aux = 1;
for(i = 1; i < 20; i+= 2){ // factoriales
aux = 1;
for(j = 1; j <= n; j++){
aux *= j;
}
if(i == 1){
serie = x - (pow(x,n) / aux);
n += 2;
}
else {
serie = serie + (pow(x,n) / aux); // aux = n!
serie = (-1) * (serie); // falla cuando n = 15 no se por que
n += 2;
}
}
printf("El seno de %i es: %f \n",x,serie);
}
Valora esta pregunta


0