Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ программа на цикл пока

Автор: noflymouse 16.05.2010 18:46

Боксер тяжелого веса решил соревноваться в другой весовой категории. Через сколько дней он похудеет со 100 до 80 кг, если в день он может сбрасывать 1% своего веса?

Простейшая задачка. Написал программу:


program bokser;
uses crt;
var k : integer;
x : real;
begin
clrscr;
x:=100;
writeln('Боксёр решил соревноваться в другой категории. Он похудеет через: ');
while x<>80 do begin x:=(x-(x/100)); k:=(k+1); end;
write(k);
end.



Не могу понять в чём тут ошибка. В окне выполнения только "Боксёр решил соревноваться в другой категории. Он похудеет через: " и всё.

Автор: Client 16.05.2010 18:51

x<>80
Заменить на >= или > ?

Автор: TarasBer 17.05.2010 13:58

Вещественные числа вообще сравнивать бесполезно. Они всегда разные. В том числе и из-за погрешностей расчёта и хранения.