본문 바로가기
개발일지/Python

파이썬 등비 수열 코드 (공식응용버전 포함)

by 다니엘의 개발 이야기 2022. 5. 1.
320x100

첫번째.

반복문 while을 통한 과정 나열

# 등비 수열

# 등비수열의 일반 항 공식
# an = a1 * r^(n-1)

# 등비 수열의 합 공식
# sn = a1 * (1 - r^n) / (1 - r)

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()
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))

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

 

a1 = 2

공비 = 3

n = 10

으로 할 경우에

10번째 항의 값은 39366

10번재 항까지의 값은 59048

이렇게 나오게 된다.

300x250