Cita:
Iniciado por amchacon Deja el segundo campo del for (n<20) en blanco.
Pero eso no tendría ningún sentido, el programa continuaría hasta el infinito y nunca obtendría un resultado... Tienes que programar con aproximaciones (puedes hacer 30 iteraciones o pedirle al usuario cuantas iteraciones quiere realizar).
es cierto ya le pregunte al profe y me dijo que pusiera de limite la division; que cuando d>0.1 ya dejara de hacer iteraciones lo modifique y asi queda.
Código C:
Ver original#include<stdio.h>
main(){
double p,w=1,x,sum=0,r=0,f,d=0;
int k=0;
printf("Programa para calcular e^x\n"); do{
if(k==0){
w=1;
f=1;
}
else{
p=x*w;
w=p;
f=1;
int b;
for(b=1;b<=k;b++){
f=f*b;
}
}
k++;
d=w/f;
sum=sum+d;
}while(d>0.1);
printf ("\n\n e^x = %.5lf",sum
); }
pero ahora hay otro problema en teoria el programa debiería hacer hasta e^100 pero cuando lo ingreso me da de resultado esto
e^x=-1.#INDO ¿porque sale eso?