프로그래밍 언어/Python

등비수열(파이썬 출력)

ruby-jieun 2023. 1. 18. 23:02

 

등비수열


 

 

 

다음 수열의 일반항을 구하고 n번째항의 값과 합을 출력

 

{2, 6, 18, 54, 162, 486, 1458, 4374, 13122, … }

 

 

inputA1 = int(input('a1 입력: '))
inputR = int(input('공비 입력: '))
inputN = int(input('n 입력: '))

valueN = 0
sumN = 0
n = 1
while n <= inputN:

    if n == 1:
        valueN = inputA1
        sumN += valueN
        print('{}번째 항의 값: {}'.format(n, valueN))
        print('{}번째 항까지의 합: {}'.format(n, sumN))
        n += 1
        continue

    valueN *= inputR
    sumN += valueN
    print('{}번째 항의 값: {}'.format(n, valueN))
    print('{}번째 항까지의 합: {}'.format(n, sumN))
    n += 1

print('{}번째 항의 값: {}'.format(inputN, valueN))
print('{}번째 항까지의 합: {}'.format(inputN, sumN))
inputA1 = int(input('a1 입력: '))
inputR = int(input('공비 입력: '))
inputN = int(input('n 입력: '))

# 등비 수열(일반항) 공식: an = a1 * r^(n-1)
valueN = inputA1 * (inputR ** (inputN-1))
print('{}번째 항의 값: {}'.format(inputN, valueN))
inputA1 = int(input('a1 입력: '))
inputR = int(input('공비 입력: '))
inputN = int(input('n 입력: '))

# 등비 수열(합) 공식: sn = a1 * (1 - r^n) / (1-r)
sumN = inputA1 * (1 - (inputR ** inputN)) / (1 - inputR)
print('{}번째 항까지의 합: {}'.format(inputN, int(sumN)))

 

 

a1 입력: 2
공비 입력: 3
n 입력: 10
1번째 항의 값: 2
1번째 항까지의 합: 2
2번째 항의 값: 6
2번째 항까지의 합: 8
3번째 항의 값: 18
3번째 항까지의 합: 26
4번째 항의 값: 54
4번째 항까지의 합: 80
5번째 항의 값: 162
5번째 항까지의 합: 242
6번째 항의 값: 486
6번째 항까지의 합: 728
7번째 항의 값: 1458
7번째 항까지의 합: 2186
8번째 항의 값: 4374
8번째 항까지의 합: 6560
9번째 항의 값: 13122
9번째 항까지의 합: 19682
10번째 항의 값: 39366
10번째 항까지의 합: 59048
10번째 항의 값: 39366
10번째 항까지의 합: 59048