자연 상수 e
는 시리즈 1 + 1 1! + 1 2! +… + 1 n! +… 1+ \ frac {1} {1!} + \ frac {1} {2!} + ... + \를 사용할 수 있습니다. frac {1} {n!} + ...1+1 !(1)+2 !(1)+⋯+n !(1)+... 근사치 계산. 이 문제는 주어진 음이 아닌 정수n
,n+1
항목을 찾기 전에 시리즈가 필요합니다.
입력 형식 :
첫 번째 줄에 제공된 음이 아닌 정수를 입력합니다 n(≤1000)
.
출력 형식:
소수점 이하 8 자리를 유지하면서 부분 합계 값을 한 줄로 출력합니다.
입력 샘플 :
10
샘플 출력 :
2.71828180
암호:
# include <stdio.h>
# include <stdlib.h>
double fact(int n) {
double value = 1,i;
for (i=1;i<=n;i++) {
value *= i;
}
return value;
}
int main() {
int n,i = 0;
double value = 0.0;
scanf("%d",&n);
for (;i<=n;i++) {
value += (1.0/fact(i));
}
printf("%.8lf",value);
return 0;
}
스크린 샷 제출 :
문제 해결 아이디어 :
이런 종류의 반환 값의 double
경우 함수 내에서 double
유형 변수 를 사용 하는 것이 좋습니다 . 그렇지 않으면 설명 할 수없는 오류가 발생합니다!