Помощь - Поиск - Пользователи - Календарь
Полная версия: Игра "Угадай число" (2)
Форум «Всё о Паскале» > Pascal, Object Pascal > Написание игр
Katolisa
Написать программу, которая "задумывает" число в диапазоне от 1 до 10 и предлагает пользователю угадать число за 5 попыток. Ниже представлен рекомендуемый вид экрана во время работы программы:

Игра "Угадай число".
Компьютер "задумал" число от 1 до 10.
Угадайте его за 5 попыток.
Введите число и нажмите <Enter>
-> 5
Нет.
-> 3
Вы выиграли! Поздравляю!
sheka
Цитата(Katolisa @ 11.01.2010 15:55) *

Игра "Угадай число".
Компьютер "задумал" число от 1 до 10.
Угадайте его за 5 попыток.
Введите число и нажмите <Enter>
-> 5
Нет.
-> 3
Вы выиграли! Поздравляю!

Как-то так. Извините, но у меня на клавиатуре западает точка blum.gif , поэтому кое-что вам прийдется дописать... yes2.gif
...
begin
randomize;
writeln('Игра "Угадай число".');
writeln('Компьютер "задумал" число от 1 до 10.');
writeln('Угадайте его за 5 попыток.');
... :=random(...)+1;
for ... do
begin
writeln('Введите число и нажмите <Enter>');
write('-> ');
readln(chislo);
if ... then
begin
writeln('Вы выиграли! Поздравляю!');
readln;
halt;
end
else
writeln('Нет.');
end;
writeln('Вы проиграли!');
readln;
end.
Katolisa
спасибо, я почти cделала в Pascale? Возникли вопросы, как скопировать Word или заново печатать?
volvo
Какой Word ты хочешь скопировать? Может В Word? Тогда не надо ничего заново печатать, открой PAS-файл любым текстовым редактором (при желании - даже тем же Word-ом), и делай с текстом что хочешь...
Katolisa
Я в смысле уже сделала почти и хочу скопировать сюда, чтобы посмотрели на ошибку..... smile.gif
volvo
Зачем копировать (да еще через Word)? Присоедини PAS-файл (нажимаешь на кнопку "Ответить", и видишь "Прикрепление файлов")
Katolisa
program ygadaj4islo;

uses crt;
var x, y, n:integer;
const
p=5;

BEGIN
clrscr;
randomize;
x:=random(9)+1;
writeln('Игра "Угадай число".');
writeln('Компьютер задумал число от 1 до 10 ');
writeln('Угадайте его за ', p , ' попыток.');
writeln('Введите число и нажмите <Enter>');
repeat;
n:=n+1;
write('->');
readln(y);
until (n=p) or (x=y); if x=y
then writeln ('Вы выиграли! Поздравляю! ')
else writeln ('Нет');
readln;
END.




Получилось, смысл в том что комп даёт сразу игроку 5 попыток, а мне нужно, чтобы сразу после неправильного он писал "Нет"........ blush.gif cool.gif
volvo
Тебе чуть выше написали, как надо делать: надо СРАЗУ после того, как число было введено, внутри цикла ещё, проверять его на равенство с тем числом, которое загадал компьютер. А ты проверяешь только после окончания цикла...

P.S. Добавь теги CODE, программа не воспринимается без них совершенно... Какой-то набор символов...
Katolisa
Всё УРА, спасибо огромное за помощь....всё получилось!!!! good.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.