*В. Случайным образом сгенерируйте 4-значное число. Попросите пользователя угадать четырехзначное число. На каждую цифру, которую пользователь правильно угадал в правильном месте, у него приходится «корова». Для каждой цифры, которую пользователь угадал, число в неправильном месте — это «бык».
Каждый раз, когда пользователь загадывает, сообщайте ему, сколько у него «коров» и «быков». Как только пользователь угадает правильное число, игра заканчивается. Следите за количеством предположений, которые пользователь делает на протяжении всей игры, и сообщайте об этом пользователю в конце.*
**Проблема в том, что я создал программу, но она может генерировать любое четырехзначное число, и именно тогда возникает проблема. Например:
Сгенерированное число — 3568.
Пользователь вводит: 3266
Затем пользователь получает 2 коровы и 2 быка.
Но у пользователя нет возможности узнать, какие цифры в набранном им числе являются правильными.
Мне нужна функция, которая может сообщать пользователю числа, которые он угадал правильно.
В этом примере программа должна сообщить пользователю, что 3 и 6 являются правильными в следующих местах.**
import random
def compare_number(number, user_guess):
cowbull = [0, 0]
for i in range(len(number)):
if number == user_guess:
cowbull[1] += 1
else:
cowbull[0] += 1
return cowbull
if __name__ == "__main__":
playing = True
number = str(random.randint(1000, 10000))
guesses = 0
print("Let's Play A Game Of Cows And Bulls!")
print("I Will Generate A 4 Digit Number, And You Have To Guess The Numbers One Digit At A Time.")
print("For Every Number I The Wrong Place, You Get A Bull. For Every Number In The Right Place,
You Get A Cow.")
print("The Game Will End When You Get 4 Bulls.")
print("Type Exit At Any Prompt To Exit!")
while playing:
user_guess = input("Give Me The Best You Got!: ")
if user_guess.lower() == "exit":
break
cowbull_count = compare_number(number, user_guess)
guesses += 1
print(f"You Have {cowbull_count[1]} Cows, And {cowbull_count[0]} Bulls.")
if cowbull_count[1] == 4:
playing = False
print(f"You Win The Game After {guesses} Guess(es)!. The Number Was {number}.")
break
else:
print(f"Your Guess Isn't Quite Right, Tyr Again!.")
Подробнее здесь: https://stackoverflow.com/questions/615 ... -bull-game
Python: игра «Корова и бык» ⇐ Python
Программы на Python
1767303386
Anonymous
*В. Случайным образом сгенерируйте 4-значное число. Попросите пользователя угадать четырехзначное число. На каждую цифру, которую пользователь правильно угадал в правильном месте, у него приходится «корова». Для каждой цифры, которую пользователь угадал, число в неправильном месте — это «бык».
Каждый раз, когда пользователь загадывает, сообщайте ему, сколько у него «коров» и «быков». Как только пользователь угадает правильное число, игра заканчивается. Следите за количеством предположений, которые пользователь делает на протяжении всей игры, и сообщайте об этом пользователю в конце.*
**Проблема в том, что я создал программу, но она может генерировать любое четырехзначное число, и именно тогда возникает проблема. Например:
Сгенерированное число — 3568.
Пользователь вводит: 3266
Затем пользователь получает 2 коровы и 2 быка.
Но у пользователя нет возможности узнать, какие цифры в набранном им числе являются правильными.
Мне нужна функция, которая может сообщать пользователю числа, которые он угадал правильно.
В этом примере программа должна сообщить пользователю, что 3 и 6 являются правильными в следующих местах.**
import random
def compare_number(number, user_guess):
cowbull = [0, 0]
for i in range(len(number)):
if number[i] == user_guess[I]:
cowbull[1] += 1
else:
cowbull[0] += 1
return cowbull
if __name__ == "__main__":
playing = True
number = str(random.randint(1000, 10000))
guesses = 0
print("Let's Play A Game Of Cows And Bulls!")
print("I Will Generate A 4 Digit Number, And You Have To Guess The Numbers One Digit At A Time.")
print("For Every Number I The Wrong Place, You Get A Bull. For Every Number In The Right Place,
You Get A Cow.")
print("The Game Will End When You Get 4 Bulls.")
print("Type Exit At Any Prompt To Exit!")
while playing:
user_guess = input("Give Me The Best You Got!: ")
if user_guess.lower() == "exit":
break
cowbull_count = compare_number(number, user_guess)
guesses += 1
print(f"You Have {cowbull_count[1]} Cows, And {cowbull_count[0]} Bulls.")
if cowbull_count[1] == 4:
playing = False
print(f"You Win The Game After {guesses} Guess(es)!. The Number Was {number}.")
break
else:
print(f"Your Guess Isn't Quite Right, Tyr Again!.")
Подробнее здесь: [url]https://stackoverflow.com/questions/61582316/python-cow-and-bull-game[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия