본문 바로가기
알고리즘/Python

6088 : 수 나열하기1(Python 기초 100제)

by yhyuk 2021. 3. 3.
728x90
반응형

< 문제 >
어떤 규칙에 따라 수를 순서대로 나열한 것을 수열(sequences)이라고 한다.

예를 들어
1 4 7 10 13 16 19 22 25 ... 은
1부터 시작해 이전에 만든 수에 3을 더해 다음 수를 만든 수열이다.
이러한 것을 수학에서는 앞뒤 수들의 차이가 같다고 하여

등차(차이가 같다의 한문 말) 수열이라고 한다. (등차수열 : arithmetic progression/sequence)
수열을 알게 된 영일이는 갑자기 궁금해졌다.

"그럼.... 123번째 나오는 수는 뭘까?"

영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다.

시작 값(a), 등차(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때
n번째 수를 출력하는 프로그램을 만들어보자.



< 입력 >

시작 값(a), 등차의 값(d), 몇 번째 수 인지를 의미하는 정수(n)가
공백을 두고 입력된다.(모두 0 ~ 100)

< 출력 >

n번째 수를 출력한다.

< 입력 예시 >

1 3 5

< 출력 예시 >

13

 

< 풀이 1 >

a,d,n = map(int, input().split())
for i in range(n-1):
    a = a+d
print(a)

< 풀이 2 >

a,d,n = map(int, input().split())
print(a+d*(n-1))

< 느낀점 >

등차수열이 뭔지 몰랐는데 찾아보니 등차수열 기본공식은 a+(n-1)d 라는 공식이 있었다. 수알못인 나는 처음 알았다.

 

< 출처 >

codeup.kr/problem.php?id=6088

 

[기초-종합] 수 나열하기1(py)

python언어기초100제v1.0 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요. - 모든 내용

codeup.kr

 

728x90
반응형

댓글