Учеба и наука
Создал игру, где нужно угадать число от одного до ста, но почему-то при определенном порядке чисел программа виснет(например 1,50). Может кто знает в чем проблема? - вопрос №1157879
чем тут дело?
var a,b,c,d,x: integer;
begin
randomize;
writeln ('Igra ugadai chislo ot 1 do 99');
x:=random(99)+1;
c:=99;
d:=1;
repeat
readln (a);
begin
if a=x then
break;
end;
begin
if a>x then
begin
writeln ('menshe');
if c>a then
c:=a;
end
else
begin
writeln ('bolshe');
if d<a then
d:=a;
end;
end;
begin
repeat
b:=random(c-d);
until (b>d) and (b<c);
writeln ('Bot govorit ',b)
end;
begin
if b>x then
begin
writeln ('menshe');
if c>b then
c:=b;
end
else
begin
writeln ('bolshe');
if d<b then
d:=b;
end;
end;
until (a=x) or (b=x);
writeln ('Ugadal ', x);
end.
август 24, 2014 г.
-
Всего ответов: 1
-
- Могу помочь разобраться, обращайтесь.
- У вас программа зацикливается на выборе ответа бота. Исправить легко, нужно уточнить, что именно хотелось сделать.
Самое простое — строку b:=random(c-d); замените на b:=random(c-d)+d; — виснуть не должно.
Не забудьте оценить ответ.
Похожие вопросы
В соответствии с вариантом вычислите значение функции F для изменяющегося параметра A и переменной х. Для каждого значения А переменная х должна
январь 5, 2022 г.
Даны три различных целых числа a, b и с. Используя оператор безусловного перехода составить программу для вывода чисел в порядке возрастания значения. язык Pascal
ноябрь 3, 2021 г.