어떤 규칙에 따라 수를 순서대로 나열한 것을 수열이라고 한다.
예를 들어 2 6 18 54 162 486 ... 은 2부터 시작해 이전에 만든 수에 3을 곱해 다음 수를 만든 수열이다.
이러한 것을 수학에서는 앞뒤 수들의 비율이 같다고 하여 등비(비율이 같다의 한문 말) 수열이라고 한다.
등비 수열을 알게된 영일이는 갑자기 궁금해졌다.
"그럼.... 13번째 나오는 수는 뭘까?"
영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다.
시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때 n번째 수를 출력하는 프로그램을 만들어보자.
입력
시작 값(a), 등비의 값(r), 몇 번째 인지를 나타내는 정수(n)가 공백을 두고 입력된다.(모두 0 ~ 10)
2 3 7
출력
n번째 수를 출력한다.
1458
<풀이>
더보기
내가 쓴 풀이
a, r, n = map(int, input().split())
i = a
count = 0
result = []
while count < n:
result.append(i)
count += 1
i *= r
print(result[-1])
강의 풀이
a, r, n = map(int, input().split())
i = a
count = 0
geom = []
while count < n:
geom.append(i)
i *= r
count += 1
print( geom[-1] )
<풀이 비교>
앞 문제는 등차수열. 지금 문제는 등비수열이다. 이 문제 푸는데 갑자기 멍해져서 잠시 머리가 안 돌아갔지만 그래도 잘 풀 수 있었다. 앞 문제 강의 풀이처럼 리스트를 활용해서 풀어보았다.
'Python > CodeUp' 카테고리의 다른 글
코드업 기초 100제 92번 - 함께 문제 푸는 날 (0) | 2021.11.22 |
---|---|
코드업 기초 100제 91번 - 수 나열하기3 (0) | 2021.11.22 |
코드업 기초 100제 89번 - 수 나열하기1 (0) | 2021.11.22 |
코드업 기초 100제 88번 - 3의 배수는 통과? (0) | 2021.11.22 |
코드업 기초 100제 87번 - 여기까지! 이제 그만~ (0) | 2021.11.22 |