수열 0.6, 0.06, 0.006, 0.0006, … 는 각 항이 바로 앞의 항을 10으로 나눈 값으로 이루어진 등비수열입니다. 첫째 항은 6/10이며, 공비는 1/10(즉, 0.1)입니다.
등비수열의 합을 구할 때 공비 r이 1보다 작은 경우에는 다음 공식을 적용합니다.
Sₙ = a(1 - rⁿ) / (1 - r)
여기에 a = 6/10, r = 1/10을 대입하고 단계별로 정리하면 다음과 같습니다.
합 = (6/10) × [1 - (1/10)ⁿ] / (1 - 1/10)
합 = (6/9) × [1 - (1/10)ⁿ]
합 = (2/3) × [1 - (1/10)ⁿ]
n이 커질수록 (1/10)ⁿ은 0에 가까워지므로, 이 수열의 합은 2/3(약 0.666667)에 수렴합니다.
예제
#include <stdio.h>
#include <math.h>
int main() {
int n = 6;
float sum = 2 * ((1 - 1 / pow(10, n))) / 3;
printf("sum = %f", sum);
return 0;
}
출력
sum = 0.666666
위 코드는 n = 6일 때 유도한 공식 (2/3) × [1 - (1/10)ⁿ]을 그대로 계산합니다. pow(10, n) 함수로 10의 n제곱 값을 구한 뒤 식에 대입하면, 소수점 여섯 자리까지 0.666666이 출력되는 것을 확인할 수 있습니다. n의 값을 변경하더라도 같은 공식으로 임의의 항 개수에 대한 수열의 합을 손쉽게 구할 수 있습니다.