![]() |
Разработать программу, моделирующую игру
На Pascal или на Delphi
Разработать программу, моделирующую игру. Игра имеет следующие правила. Перед Вами большое число ящиков с деньгами. Сумма денег в каждом ящике – случайная величина, равномерно распределённая на отрезке [0, 1]. Вы выбираете ящик, открываете его и или берёте деньги из ящика, или отказываетесь от них. Если Вы берёте деньги, игра кончается. В противном случае Вы можете выбрать другой ящик. Эта процедура повторяется максимум до пяти ящиков (деньги из пятого ящика должны быть взяты, если он открыт). Разработать программу, моделирующую игру «Скачки». В игре участвуют 10 наездников; за каждый тур игры каждый из них продвигается вперёд на расстояние от 1 до 5 км случайным образом. Длина дистанции – 50 км. Всего проводится 5 заездов, победителю каждого заезда начисляется 5 очков. Победителем считается наездник, набравший наибольшее количество очков во всех заездах. Перед началом заездов участник игры выбирает номер наездника, с которым он будет идентифицироваться во время игры. Количество участников игры не превышает 10. В каждом туре с вероятностью 0.1 каждый наездник может упасть, т.е. продвинуться за этот тур на ноль км. Передвижение наездников отобразить графически на экране. Предусмотреть возможность случайного распределения номеров наездников. |
ну первую я не понял...
а какие проблемы со вторым? бешешь функйию (procedure).... и там стандартными фичами рисуешь что надо... с вероятностью 0,1 я тоже не понял.. можно рандом 1-10 сделать.. и если 1 выпадает - чувак падает |
Действительно, первая не совсем понятна ... можно подробней ?
Со второй, действительно, проблем нет. Ты не можешь написать иливозникают сложности. Если что, пиши - помогу. |
Надо только проверку вставить на корректность вводимого номера... как это сделать?
program sch; const StageCount=5; HorsCount=10; FailureProb=0.1; type intarray=array[1..HorsCount] of integer; var Hno:integer; HorsArray:intarray; MaxDistance:integer; winner:integer; i,j:integer; begin Write ('Input horseman number '); Readln ( Hno); Randomize; for i:=1 to HorsCount do HorsArray[i]:=0; for i:=1 to StageCount do for j:=1 to Horscount do if (random>FailureProb) then HorsArray[j]:=HorsArray[j]+round(random(4))+1; writeln ('Horseman no. ',Hno,' distance=',HorsArray[Hno],' km'); MaxDistance:=0; for i:=1 to HorsCount do if HorsArray[i]>MaxDistance then begin MaxDistance:=HorsArray[i]; Winner:=i; end; writeln ('Winner is horseman no. ',Winner,'! Distance= ',MaxDistance,' km.'); end. |
от 1 до 5 км случайным образом. Длина дистанции – 50 км. Всего проводится 5 заездов
а нафига тут 50км???? коли махимум 25 проковылять могут?? А в прорамульке условие что победили более одного участника??? |
Re: Разработать программу, моделирующую игру
Есть несколько вопросов:
1. Скачки прекращаются как только одна из лошадей доскачет до отметки в 50 км, или они двигаются 5 раз по 0-5 км ? 2. Цитата:
3. И что означает: Цитата:
|
Всего проводится 5 заездов, победителю каждого заезда начисляется 5 очков. Победителем считается наездник, набравший наибольшее количество очков во всех заездах.Dep
|
Так все-таки, что такое заезд ? А лучше ответь на мои вопросы, так проще будет.
|
| Часовой пояс GMT +4, время: 03:58. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.