실험 4-2-2 e의 근사값 구하기 (15 점)

자연 상수 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유형 변수 를 사용 하는 것이 좋습니다 . 그렇지 않으면 설명 할 수없는 오류가 발생합니다!

추천

출처blog.csdn.net/weixin_43862765/article/details/114624336