Python/기본 문법
Python 문제 풀이 ) 난수 생성&맞추기 / 야구게임 / 입력받은 값 합계, 평균 구하기
빵으니
2020. 5. 22. 15:26
문제 1) 랜덤 숫자를 생성해 사용자가 입력한 값과 비교하기
문제 2) 야구게임
* 두 게임의 소스코드
# 문제 1) 컴퓨터가 랜덤 숫자 1개 내면(0~99) 맞추는 게임
# 커요 작아요 말해주기
from random import randint
com = int(randint(0, 99))
print(com)
count = 0
while True:
user = int(input('숫자를 입력하세요(0~99)'))
count += 1
if com > user:
print('더 큰 숫자를 입력하세요')
elif com < user:
print('더 작은 숫자를 입력하세요')
elif com == user:
print('정답입니다')
break
print("당신은 {}번 만에 성공하셨습니다".format(count))
# 문제 2) 야구게임
# 1~9 숫자 중 3가지 숫자 입력 (중복 불가)
# 1. 숫자와 자리가 모두 일치할 경우 "Strike"
# 2. 자리는 일치하지 않지만 숫자는 일치할 경우 "Ball"
# 3. 숫자와 자리 모두 일치하지 않을 경우 "Out"
from random import randint
list = []
for i in range(3):
random = randint(0, 9)
list.append(random)
# print(list)
com1 = int(list[0])
com2 = int(list[1])
com3 = int(list[2])
count = 0
while True:
strike = 0
ball = 0
out = 0
user = input('숫자 세 개를 입력하세요').split()
num1 = int(user[0])
num2 = int(user[1])
num3 = int(user[2])
if com1 == num1:
strike += 1
elif com1 == num2 or com1 == num3:
ball += 1
if com2 == num2:
strike += 1
elif com2 == num1 or com2 == num3:
ball += 1
if com3 == num3:
strike += 1
elif com3 == num1 or com3 == num2:
ball += 1
out = 3 - (strike + ball)
count += 1
print('%s-Strike %s-Ball %s-Out' % (strike, ball, out))
if strike == 3:
break
print('%d회 만에 성공하셨습니다' % (count))
print('성공!')
문제 3) 사용자에게 입력받은 숫자 5개를 출력하고, 합계와 평균 구하기
* 소스코드
user = input('숫자를 5개 입력하세요').split()
total = 0
for i in user:
a = int(i)
total += a
print(a)
print(total)
avg = total / len(user)
print(avg)