6067 : [기초-조건/선택실행구조] 정수 1개 입력받아 분류하기(설명)(py)
문제설명 |
0이 아닌 정수 1개가 입력되었을 때, 음(-)/양(+)과 짝(even)/홀(odd)을 구분해 분류해보자. 음수이면서 짝수이면, A 음수이면서 홀수이면, B 양수이면서 짝수이면, C 양수이면서 홀수이면, D 를 출력한다. |
입력값 |
정수 1개가 입력된다. -2147483648 ~ +2147483647, 단 0은 입력되지 않는다. |
출력값 |
음수이면서 짝수이면, A 음수이면서 홀수이면, B 양수이면서 짝수이면, C 양수이면서 홀수이면, D 를 출력한다. |
입력 예시 |
-2147483648 |
출력 예시 |
A |
정답 및 가능한 정답
a=int(input())
if a<0 and a%2==0:
print("A")
if a<0 and a%2!=0:
print("B")
if a>0 and a%2==0:
print("C")
if a>0 and a%2!=0:
print("D")
a=int(input())
if a<0:
if a%2==0:
print("A")
else:
print("B")
if a>0:
if a%2==0:
print("C")
else:
print("D")
해설
if 문의 조건문에는 논리연산식을 활용하여
if (n<0) and (n%2==0) :
print('A')
와 같이 논리연산자(not, and, or)를 이용해 합쳐 표현할 수도 있다.
비교 연산(<, >, <=, >=, ==, !=)의 계산 결과는 True 또는 False의 불(boolean) 값이고,
불 값들 사이의 논리연산(not, and, or)의 결과도 True 또는 False의 불 값이다.
중첩 if 조건문
if 조건문 안에 또 다른 조건을 적용시킬 수 있다.
if a>5:
if a>10:
print("big")
else:
print("middle")
들여 쓰기에 주의하여 작성하자.
위 문제는 논리연산식으로 조건문을 작성하던가, 중첩 if 조건문으로 if 문을 작성할 수 있다.