9.14. Лотерея: создайте список или кортеж, содержащий серию из 10 чисел и 5 букв. Случайным образом выберите 4 числа или буквы из списка. Выведите сообщение о том, что
билет, содержащий эту комбинацию из четырех цифр или букв, является выигрышным.
9.15. Анализ лотереи: напишите цикл, который проверяет, насколько сложно выиграть
в смоделированной вами лотерее. Создайте список или кортеж с именем my_ticket. Напишите цикл, который продолжает генерировать комбинации до тех пор, пока не выпадет выигрышная комбинация. Выведите сообщение с информацией о том, сколько выполнений
цикла понадобилось для получения выигрышной комбинации.
Пробовал разные способы, какие знаю, но всё не выходит добиться нужного результата.
Никак не пойму, где ошибка.
В своём коде я уменьшил количество букв в списках из-за лени.
билет, содержащий эту комбинацию из четырех цифр или букв, является выигрышным.
9.15. Анализ лотереи: напишите цикл, который проверяет, насколько сложно выиграть
в смоделированной вами лотерее. Создайте список или кортеж с именем my_ticket. Напишите цикл, который продолжает генерировать комбинации до тех пор, пока не выпадет выигрышная комбинация. Выведите сообщение с информацией о том, сколько выполнений
цикла понадобилось для получения выигрышной комбинации.
Пробовал разные способы, какие знаю, но всё не выходит добиться нужного результата.
Никак не пойму, где ошибка.
В своём коде я уменьшил количество букв в списках из-за лени.
Код:
import random
def make_ticket(tickets, winners): #создает список из трёх случайных букв
counter = 0
while counter < 3:
win = random.choice(tickets)
winners.append(win)
counter += 1
return winners
ticket = ['a', 'b', 'c', 'd', 'e']
winner = []
my_ticket = ['a', 'b', 'c']
my_counter = 0
flag = 1
while flag == 1:
if my_ticket != winner:
my_counter += 1
make_ticket(ticket, winner)
else:
flag = 0
print(my_counter)
Последнее редактирование: