Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
0 / 0 / 0
Регистрация: 30.11.2016
Сообщений: 14

Нужно сделать лотерею, в которой сложно выиграть

15.01.2017, 16:48. Показов 4115. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Смысл такой. Нужно сделать лотерею, в которой нельзя выйграть. Нам дают несколько наборов чисел (4 числа в каждом от 0 до 9, числа могут повторяться и идти в любом порядке), таких наборов чисел может быть бесконечно много. Задача в том, что бы программа выдала 4 числа, которые использовались реже всего. Получится, что все вроде честно, но выйграть очень сложно.

Например:
Нам даны ряды чисел 1 2 3 4, 2 2 4 5, 4 6 7 8, 8 8 8 8, 3 4 6 7 (берутся эти ряды из внешних txt фалов, их можно считать лотерейными билетами)
Программа должна вывести набор чисел : 9 1 0 3 , ведь эти числа либо вообще не встречались, либо встречались редко(в любом порядке)

Надеюсь понятно объяснил.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.01.2017, 16:48
Ответы с готовыми решениями:

Выиграть в лотерею
выводстандартный вывод У Аллена много денег, а именно, на счету в банке у него n долларов. По соображениям безопасности он хочет снять...

Вероятность выиграть в лотерею
Есть такой код: from random import choice lot = ticket = x = 1 while x <= 4:

Как выиграть в казино, лотерею, карты и т.п?
Вот интересно,если отлично знать теорию вероятности и т.п. можно ли выиграть в азартных играх или хотя бы повысить вероятность выигрыша и...

2
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
15.01.2017, 17:47
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from collections import Counter
 
 
s = '1 2 3 4, 2 2 4 5, 4 6 7 8, 8 8 8 8, 3 4 6 7'
n = 4
 
dg = set('0123456789')
 
cnt = Counter(ch for ch in s if ch.isdigit())
missing = dg - cnt.keys()
l = min(n, len(missing))
res = [missing.pop() for _ in range(l)]
res.extend(k for k, v in cnt.most_common()[:-(n-l)-1:-1])
 
print(' '.join(res))
С бесконечным набором чисел могут быть трудности...
1
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
15.01.2017, 17:57
Лучший ответ Сообщение было отмечено Alexh1n11 как решение

Решение

Цитата Сообщение от Alexh1n11 Посмотреть сообщение
Программа должна вывести набор чисел : 9 1 0 3
должна 0 9 1 5 так как 0 и 9 вообще не встречались а 1 и 5 по одному разу а вот 3 уже 2 раза встречалась
находишь числа которые вообще не встречались и записываешь в список. эти точно не встречаются. берешь четыре любых в результат. если их не хватает или совсем нет то берем из списка где числа отсортированы по возрастанию их встречаемости
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
list_input = [1,2,3,4,2,2,4,5,4,6,7,8,8,8,8,8,3,4,6,7]
list_numbers = [0,1,2,3,4,5,6,7,8,9]
not_input = [i for i in list_numbers if i not in list_input]
list_sort = [i for i in sorted(set(list_input), key = lambda x : list_input.count(x))]
rez = []
 
if not_input:
    for i in not_input:
        if len(rez) == 4:
               break
        rez.append(i)
for i in list_sort:
    if len(rez) == 4:
        break
    rez.append(i)
print(*(rez))
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.01.2017, 17:57
Помогаю со студенческими работами здесь

Крокодил Гена захотел выиграть в лотерею автомобиль
Крокодил Гена захотел выиграть в лотерею автомобиль. Для этого он накупил N лотерейных билетов, Чебурашка попросил поделиться с ним, потому...

Нужно создать лотерею
Нужно создать лотерею. С помощью генератора случайных чисел нужно что бы выпало число от 1 до 5 И ответ был подарок: 1-Компьютер ...

Написать программу-лотерею в которой используется генератор чисел определить призы: принтер флешка сканер DVD
Написать программу-лотерею в которой используется генератор чисел определить призы: принтер флешка сканер DVD

Вероятность выиграть по одному билету лотереи равна 1/7. Какова вероятность, имея 6 билетов, не выиграть по 2-м билетам
Вероятность выиграть по одному билету лотереи равна 1/7. Какова вероятность, имея 6 билетов, не выиграть по 2-м билетам. p=1/7 q=1/7 ...

Сколько карточек нужно заполнить, чтобы выиграть наверняка
В лотерее «Спортлото» 6 из 49 выигрыш пал на шесть не стоящих рядом цифр. Сколько карточек нужно заполнить, чтобы выиграть наверняка? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru