Algorithm/[Python] Code Up_basic100

[ 6063, 6064 ] 코드업 python 기초 100제, 기초-3항연산

내일은개발천재🎵 2021. 4. 8. 23:57

< 6063 > 정수 2개 입력받아 큰 값 출력하기

a,b = map(int, input().split())
print (a if (a>b) else b)

📌 a > b이면 a 를 출력하고, 아니라면 b를 출력하라.

   -> a가 b보다 크면 a를 출력, b가 더 크면 b를 출력하는 코드.

 

< 6064 >정수 3개 입력받아 가장 작은 값 출력하기

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

📌 코드 가독성이 많이 떨어지지만, 설명 해보자면 (차례대로 해석하면 됩니다.)

      ->  a if a < b and a < c else b   if b < c else c

          => 만약, a<b 이고, a<c 이면 a를 출력해.

          => 그렇지 않으면  a if a < b and a < c else if b < c else c 

                => b<c 이면 b를, 그렇지 않으면 c를 출력해.

 

a, b, c = map(int, input().split())
x = a if a < b else b
y = x if x < c else c
print (y)

📌 조금 더 깔끔한 방법으로 풀어봤습니다.

   -> a와 b를 비교해서 더 작은 수를 x에 저장합니다.

   -> x와 c를 비교해서 더 작은 수를 y에 저장합니다.

   => y를 출력하면 가장 작은 수가 출력됩니다.

 

✏️ 중첩 삼항연산자 자체가 코드만 보고 바로 이해하기 어렵다고 느껴져서 직관적으로 풀어 보았습니다