본문 바로가기
프로그래밍/코드업 파이썬 기초 100제

코드업 파이썬 기초 100제 6064번(100제 64번째 문제)

by 리드민 2023. 2. 2.
반응형

[1] 코드업 파이썬 기초 100제
100제 64번째 문제

[2] 문제
입력된 세 정수 a, b, c 중 가장 작은 값을 출력하는 프로그램을 작성해보자.
단, 3항 연산을 사용한다.


1. 참고
프로그래밍언어 소스코드 작성시 모든 요소들은
"순서에 따라 한 단계씩 실행"
"미리 정해진 순서에 따라 하나씩 연산 수행"
"그 때까지 연산된 결과를 이용해 다시 순서에 따라 하나씩 연산"
...
등의 원리가 적용된다.
따라서 3항 연산을 중첩해(괄호로 묶는 등..) 이용하면 여러 값들을 순서대로 비교해 가장 큰/작은 값을 계산할 수 있다.
예를 들어
(a if a>b else b) if ((a if a>b else b)>c) else c
와 같은 계산식은 a, b, c 의 값 중 가장 큰 값으로 계산된다.

2. 입력
3개의 정수가 공백으로 구분되어 입력된다.
-2147483648 ~ +2147483648

3. 출력
가장 작은 값을 출력한다.

[3] 정답
1. 해설 미포함

a, b, c = input().split()
a = int(a)
b = int(b)
c = int(c)
d = (a if a<b else b) if (( a if a<b else b)<c) else c
print(d)


2. 해설 포함

a, b, c = input().split()
# 공백을 기준으로 값 3개를 입력받아 변수 a, b, c에 각각 저장한다.
a = int(a)
# 변수 a에 저장된 값을 정수형으로 변환한 후 다시 변수 a에 저장한다.
b = int(b)
# 변수 b에 저장된 값을 정수형으로 변환한 후 다시 변수 b에 저장한다.
c = int(c)
# 변수 c에 저장된 값을 정수형으로 변환한 후 다시 변수 c에 저장한다.
d = (a if a<b else b) if (( a if a<b else b)<c) else c
# 중첩 삼항연산을 한 후 a, b, c에 저장된 값중 가장 작은 값을 변수 d에 저장한다.
print(d)
# 변수 d에 저장된 값을 출력한다.

input 함수는 값을 입력받는 함수이다.

int 함수는 변수에 저장된 값을 int(정수형)으로 변환한 후 출력하는 함수이다.

3항 연산 : x if C else y의 형태로 작성된다. C 조건이 맞으면 x가 사용되고 다른 경우에는 y가 사용된다.

print 함수는 값을 출력하는 함수이다.

반응형