Вниз
Скачать: CL | DM;

Глюк с while?   Найти похожие ветки 

 
Алиса   (2002-02-05 15:29) [0]

Интересно это глюк с while..do.. или я что-то не понимаю:)?
var i:Double;
Begin
i:=0;
while i<1 do
i:=i+0.1
S:=i;
end;
На выходе S=1.1
если:
var i:integer;
Begin
i:=0;
while i<10 do
i:=i+1
S:=i;
end;
На выходе S=10 ??!!!

Спасибо за ответ!


 
Johnmen ©   (2002-02-05 15:38) [1]

В 1 случае д.б. 1.0


 
Romkin ©   (2002-02-05 15:39) [2]

var i:Double;
Begin
i:=0;
while round(i * 10) < 10 do
i:=i+0.1
S:=i;
end;
Так все должно получится, это из-за приближенного представления числа с плавающей точкой, посмотри при пошаговых проходах


 
Johnmen ©   (2002-02-05 15:45) [3]

Romkin © прав.


 
USAtyj ©   (2002-02-05 17:33) [4]

Про вещественные числа была хорошая ссылка уже здесь:
http://www.delphikingdom.com/helloworld/reals.htm



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
1-66527
sammy
2002-02-07 08:38
2002.02.21
Удаление файлов.


3-66453
Dup
2002-01-28 15:41
2002.02.21
dbgrig из нескольких таблиц


6-66634
Иван Мхитаров
2001-12-03 13:45
2002.02.21
Использование TClientSocket внутри TServerClientThread


3-66495
Ser_Kham1
2002-01-25 13:37
2002.02.21
Время выполнения запроса


3-66494
DeNNiss
2002-01-29 15:52
2002.02.21
уважаемые программисты!




   Наверх