본문 바로가기
Coding/초보자를 위한 파이썬 300제

초보자를 위한 파이썬 300제 // 178 abs()

by 포스트it 2021. 2. 7.
728x90
반응형

 

문제

리스트에는 네 개의 정수가 저장되어 있다. 각각의 데이터에 대해서 자신과 우측값과의 차분값을 화면에 출력하라.

my_list = [100, 200, 400, 800]

예를들어 100을 기준으로 우측에 위치한 200과의 차분 값를 화면에 출력하고, 200을 기준으로 우측에 위치한 400과의 차분값을 화면에 출력한다. 이어서 400을 기준으로 우측에 위치한 800과의 차분값을 화면에 출력한다.

100
200
400

내풀이

my_list = [100, 200, 400, 800]

for i in range(3):
    print(my_list[i])
    
결과값
100
200
400

정답

한 번에 코드를 작성하기 어렵다면 print 함수와 인덱싱만으로 결과를 표현해봅시다.

print(abs(my_list[1] - my_list[0]))
print(abs(my_list[2] - my_list[1]))
print(abs(my_list[3] - my_list[2]))

인덱스의 관계를 파악했다면 기준으로 사용할 인덱스를 결정합니다. 이번에는 우측에 있는 인덱스를 활용해서 for문을 작성해 보겠습니다.

for i in [0, 1, 2]:
    print(abs(my_list[i+1] - my_list[i]))

다음으로 코드를 다듬어 줍니다.

for i in range(len(my_list) - 1):
    print(abs(my_list[i+1] - my_list[i]))

문제도 그렇고 정답도 그렇고 정확하게 이해가 안된다....ㅠㅠ

abs() 함수는
절대값을 구할때 사용하는 함수 입니다.
728x90
반응형

댓글