[파이썬] if, while, for문 가위바위보 / 구구단 만들기

2023. 1. 24. 06:30파이썬

Q.if 문 random.choice 함수로 가위바위보를 구현하라.

import random
p1 = random.choice(['가위', '바위', '보자기'])
print(f'player1의 선택 : {p1}')
p2 = random.choice(['가위', '바위', '보자기'])
print(f'player2의 선택 : {p2}')

if p1 == '가위':
    if p2 == '가위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 비겼습니다.')
    elif p2 == '바위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 졌습니다.')
    else:
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 이겼습니다.')

elif p1 == '바위':
    if p2 == '가위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 이겼습니다.')
    elif p2 == '바위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 비겼습니다.')
    else:
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 졌습니다.')

else:
    if p2 == '가위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 졌습니다.')
    elif p2 == '바위':
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 이겼습니다.')
    else:
        print(f'player1이 {p1}로 player2의 {p2}에 맞서 비겼습니다.')

 

Q. while 문을 사용하여 구구단을 구현하라.

-- 중첩 while문 이용. 구구단은 2단부터 시작.

 

dan = 2
while dan < 10:
    n = 1
    print(f'{dan}단')
    while n < 10:
        print(f'{dan} X {n} = {dan * n}')
        n += 1
    dan += 1

 

 

-- 원하는 단 입력받기

 

dan = int(input("구구단을 외자! 몇 단을 보고 싶으세요? [2단부터 9단까지 입력해주세요.]:"))
print(f'{dan}단')
n = 1
while n < 10:
    print(f'{dan} X {n} = {dan * n}')
    n += 1

 

Q. for 문을 사용하여 구구단을 구현하라.

-- 중첩 for문 이용. 구구단은 2단부터 시작.

for dan in range(2,10):
    print(f'{dan}단')
    for number in range(1, 10):
        print(f'{dan} X {number} = {dan * number}')
        number += 1
    dan += 1

 

-- 랜덤하게 조회할 단 정하기

import random
dan = random.randint(2,9)
print(f'{dan}단')

for number in range(1, 10):
    print(f'{dan} X {number} = {dan * number}')
    number += 1

*

문제 풀면서 들여쓰기의 중요성이 크다는 것을 알았다.