코드업 python 문제집100개 막바지를 향해 가는중🚗

김나현·2024년 12월 12일
0

Python

목록 보기
47/48

(이포스팅 누가볼까봐 무섭😓)

82번

친구들과 함께 3 6 9 게임을 하던 영일이는 잦은 실수 때문에 계속해서 벌칙을 받게 되었다.
3 6 9 게임의 왕이 되기 위한 369 마스터 프로그램을 작성해 보자.

** 3 6 9 게임은?
여러 사람이 순서를 정한 후, 순서대로 수를 부르는 게임이다.
만약 3, 6, 9 가 들어간 수를 자신이 불러야 하는 상황이라면, 수를 부르는 대신 "박수(X)" 를 쳐야 한다.
33과 같이 3,6,9가 두 번 들어간 수 일때, "짝짝"과 같이 박수를 두 번 치는 형태도 있다.

참고

...
for i in range(1, n+1) :
  if i%10==3 :
    print("X", end=' ')    #출력 후 공백문자(빈칸, ' ')로 끝냄
...
입력
30 보다 작은 정수 1개가 입력된다.
(1 ~ 29)

출력
1 부터 그 수까지 순서대로 공백을 두고 수를 출력하는데,
3 또는 6 또는 9가 포함 되어있는 수인 경우, 그 수 대신 영문 대문자 X 를 출력한다.

입력 예시   
9

출력 예시
1 2 X 4 5 X 7 8 X

나의 답

n=int(input()) 

for i in range(1, n+1) :
  if i%10==3 :
    print("X", end=' ')
  else:
    print(i, end=' ')
    
    
 출력 결과
 
 1 2 X 4 5 6 7 8 9 

🤔 6과 9는 그대로 출력이 됬다. X로 출력이 되어야 하는데
직접 대입해서 생각해본다.
9를 입력 했을 때

for i in range(1, 10):
	if i%10 == 3:
      print("X", end='') --- 3 
     else:
      print(i, end='')  ---1 2 4 5 6 7 8 9
      
   3만 나머지가 3인게 당연하구나....#코드는 죄가 없습니다ㅠㅠ
      
    

1부터 10까지 10으로 나눈 나머지는
1 ÷ 10 = 0, 나머지 1
2 ÷ 10 = 0, 나머지 2
3 ÷ 10 = 0, 나머지 3
4 ÷ 10 = 0, 나머지 4
5 ÷ 10 = 0, 나머지 5
6 ÷ 10 = 0, 나머지 6
7 ÷ 10 = 0, 나머지 7
8 ÷ 10 = 0, 나머지 8
9 ÷ 10 = 0, 나머지 9
10 ÷ 10 = 1, 나머지 0

자신의 수다.

10보다 작은 숫자들은 자기 자신이 나머지로 남고,
10은 10으로 나누어 떨어져서 나머지가 0
1부터 9까지는 각각 자기 자신이 나머지 <-산수시간
10은 나머지가 0

문제에서는 나머지가 3의 배수이어야한다.

if i%10 == 3: 이게 아니라

if i%3 == 0: 이지 않을까

또 틀림🤯

출력 결과
1 2 X 4 5 X 7 8 X 10 11 X 13 14 X 16 17 X 19 20 X 22 23 X 25 26

26이 X로 출력되지 않았다.

왤까

아 3의 배수가 아니라 3,6,9라는 숫자가 들어가면 X 구나 💡<-멍청 모먼트

n=int(input())  9 

for i in range(1, n+1) : 1, 10
  if i%10==3 or 6 or 9 :  3
    print("X", end=' ')
  else:  1 2 4 5 
    print(i, end=' ')

이렇게 해야 하나...

또 틀림(해탈)

출력 결과
X X X X X X X X X

결국 뤼튼에 물어봄....

이 조건은 if (i % 10 == 3) or (6) or (9):와 같아서 6과 9는 항상 참으로 간주됩니다. <-멍청모먼트2

맞네..................

정확히

if i % 10 == 3 or i % 10 == 6 or i % 10 == 9:

이렇게 써줘야 함

정답 ⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️

n=int(input()) 

for i in range(1, n+1) :
  if i % 10 == 3 or i % 10 == 6 or i % 10 == 9:
    print("X", end=' ')
  else:  
    print(i, end=' ')

하 😂

profile
참 쉽죠? #개발계의 밥아저씨를 꿈꿉니다⋆⁺₊⋆ ☾⋆⁺₊⋆

0개의 댓글