Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

sozdaniie i proverka


spogi ©   (2004-02-27 00:24:00) 

Priver vsem!
Kto v kurse ili xotya bi znaet otkuda mojno vzyat takoy vesh:
- po teleku pokazivayut igru Loto... primerno, kajdiy celovek imeet svoy bilet, tam cifri, popadayut cifri i bilet viiqrivaet (ne vse konecno)... kakie primeri po sozdaniyu takoy programmi mojete pokazat??? ocen nujen...


TButton   (2004-02-27 17:31:00) [1]

имхо вопрос не про шары был, а про билеты...


Defunct   (2004-02-27 02:08:00) [2]

Просто подумайте как такое реализовать.

Пусть будет X из N шаров.

Ваша задача отобрать случайным образом X шаров.
Создаем массивы

TotalBalls : Array[1..N] of Boolean; // будет показывать имеетсяли шар с таким номером или уже нет.
RandomBalls : Array[1..X] of Byte; // Будет накапливать результат
Ну а дальше все просто, говорим, что в исходном состоянии присутствуют все N шаров:

For I:=1 to N Do TotalBalls[i]:=True;

Выбираем X случайных шаров:

For I:=1 to X Do
Begin
 PreferredBall := Random(N);         // Выбираем случайный шар
 While Not TotalBalls[PrefferedBall] Do // Пока шара с таким номером нет
    PreferredBall := Random(N);      // выбираем случйный шар
 TotalBalls[PrefferedBall] := False; // Забрали шар
 RandomBalls[i] := PrefferedBall;    // добавили к результату
End;

вот и все лото.


Наверх

Титульная страница Поиск, карта сайта Написать письмо