if else문 간단한 질문입니다.
조회수 631회
age = int(input("나이를 입력하시오"))
if age >= 20:
print('you are adult')
elif age >=10 or age < 20:
print('you are adolescent')
elif age < 10:
print('you are baby')
이렇게 코드 짰는데 마지막 코드에서 10 이하를 넣어도 'you are adolescent' 가 출력되네요.
문제는 다음과 같습니다.
나이를 입력받아 20살이 넘으면 'you are adult' 를 출력해주고, 10살 이상 20살 미만은 'you are adolescent'를 10살 미만은 'you are baby'를 출력해주는 프로그램을 작성해 보자.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
매우 간단한 문제이지만
elif age >=10 or age < 20: print('you are adolescent')
이 부분에서
or
을 사용하게 되면age < 20, age>=10
를 만족하는 모든것이 다 포함이 되기 때문에 실수 전체를 말하게 되고,if age >= 20: print('you are adult')
에 해당되지 않는 모든 실수가 해당될 수 밖에 없습니다. 따라서 두 조건을 동시에 만족하도록
or
을and
로 바꿔주면 됩니다.elif age >=10 and age < 20: print('you are adolescent')
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력