문제
본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다.
------
어떤 규칙에 따라 수를 순서대로 나열한 것을 수열(sequences)이라고 한다.
예를 들어
2 6 18 54 162 486 ... 은
2부터 시작해 이전에 만든 수에 3을 곱해 다음 수를 만든 수열이다.
이러한 것을 수학에서는 앞뒤 수들의 비율이 같다고 하여
등비(비율이 같다의 한문 말) 수열이라고 한다. (등비수열 : geometric progression/sequence)
등비 수열을 알게된 영일이는 갑자기 궁금해졌다.
"그럼.... 13번째 나오는 수는 뭘까?"
영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다.
시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때
n번째 수를 출력하는 프로그램을 만들어보자.
내 풀이
a, r, n = map(int,input().split())
print(a*r**(n-1))
모범답안
a, r, n = input().split()
a = int(a)
r = int(r)
n = int(n)
for i in range(1, n) :
a = a*r
print(a)
해설
등비수열의 일반항은 ar^(n-1)이다. (a는 첫째항, r은 공비, n은 순번)
'CodeUp 기본 100제 - Python' 카테고리의 다른 글
[CodeUp] 6091 : [기초-종합] 함께 문제 푸는 날 (Python) (0) | 2023.05.12 |
---|---|
[CodeUp] 6090 : [기초-종합] 수 나열하기3 (Python) (0) | 2023.05.12 |
[CodeUp] 6088 : [기초-종합] 수 나열하기1 (Python) (0) | 2023.05.12 |
[CodeUp] 6087 : [기초-종합] 3의 배수는 통과 (Python) (0) | 2023.05.12 |
[CodeUp] 6086 : [기초-종합] 거기까지! 이제 그만~ (Python) (0) | 2023.05.12 |