파이썬 배수구하기
조회수 1887회
x=int(input("정수 x="))
if x%5==0 and x%4==0: print("20의 배수") elif ~x%4==0 and x%5==0: print("5의 배수") elif ~x%5==0 and x%4==0: print("4의 배수") else: print("이도 저도 아닌 녀석들")
input()
여기서 5를 입력하면 5의 배수 라는 텍스트가 나오길 원하는데 이도저도 아닌녀석들이 나와버리네요 ㅠㅠ 4나 20의 경우에는 맞춰서 나오는데 8 12의 경우에도 제대로 출력되지 않고요.. 뭐가 문제인 걸까요...?
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
안녕하세요?
x가 4로 나누어지지 않는 경우를
~x%4 == 0
로 표현하신 것 같습니다. 파이썬의~
는 비트 연산자라서 원하시는 결과가 나오지 않을 것입니다.제 생각에는 코드를 다음과 같이 약간 고치면 원하는 결과가 나올 것 같습니다.
if x%5==0 and x%4==0: print("20의 배수") elif x%4!=0 and x%5==0: print("5의 배수") elif x%5!=0 and x%4==0: print("4의 배수") else: print("이도 저도 아닌 녀석들")
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력