프로그램

[파이썬] 문제 : 10개의 임의의 두 자리 정수와 한 자리 정수로 +,-,* 퀴즈

오디세이99 2023. 4. 3. 22:17
728x90
반응형

import random

while True:                                   # 10번씩 문제를 하는 게임을 반복. 나중에 break로 짜져 나감
    tot = 0
    for i in range(10):                        # 10번의 문제 반복문
        x = random.randrange(10, 100)          # 2자리 정수
        y = random.randrange(1, 10)            # 1자리 정수
        t = random.randrange(3)                # +,-,x 를 위한 수 생성
        
        if t == 0:                             # +로 정의
            answer = input(f"{x} + {y} = ")     # 답 입력 받기
            if answer != '':                   # 값 입력이 있는 입력의 경우
                answer = int(answer)            # 입력 받은 값을 정수로 변환
            else:                              # 값 입력이 없는 입력의 경우
                answer = 0                      # 0으로 처리
            if answer == (x+y):                # 입력 받은 값과 실제 계산한 값이 같으면
                tot += 10                      # 점수 +10
        elif t == 1:                           # -로 정의
            answer = int(input(f"{x} - {y} = "))
            if answer != '':
                answer = int(answer)
            else:
                answer = 0
            if answer == (x-y):
                tot += 10
        elif t == 2:                            # * 로 정의
            answer = int(input(f"{x} x {y} = "))
            if answer != '':
                answer = int(answer)
            else:
                answer = 0
            if answer == (x*y):
                tot += 10
    print(f"점수 = {tot}")                     # 10번 문제 종합 점수
    yn = input('다시 하시겠습니까?(Y/N):')     # 다시 할 것인지 입력 받음
    if yn.upper() == 'N':                      # 소문자도 대문자로 변환해 N면 종료
        print('안녕히 가십시오!')
        break                                 # break로 while 문 빠져 나감

728x90
반응형