Код для поиска числа e не запускаеться
#include <stdio.h>
int main() {
int s=2;
double a,k=1,sum=1;
scanf("%lf",&a);
do{
sum=sum+k;
k=k*(1/s);
s++;
}while (a<k);
printf("%.8lf",sum);
return 0;
}
Небольшой код, Вычислить число e=1+1/1!+1/2!+1/3!+...+1/k! и так пока следующее слагаемое не станет меньше а
Не понимаю в чем ошибка?
Ответы (1 шт):
Автор решения: Mikhailo
→ Ссылка
Замените одну строку:
k=k*(1/s);
на
k=k/s;
Когда вы пишите 1/s, то получаете 0, потому что и 1, и s имеют тип int, и деление получается целочисленное. А так как s больше 1, то и в результате - 0.