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

Возведение в квадрат   Найти похожие ветки 

← →
Andrey K   (2012-08-07 16:28) [0]

Почему:

var
 i: integer;
 i1: double;
begin

 i := 100000;
 i1 := sqr(i);
end;
Результат: i1=1410065408 ???


← →
Andrey K   (2012-08-07 16:30) [1]

И как с этим бороться?


← →
MBo ©   (2012-08-07 16:36) [2]

Вычисления проводятся с целым типом, происходит переполнение, а приведение к double - уже потом.
i1 := i;
i1 := Sqr(i1);


← →
Andrey K   (2012-08-07 16:39) [3]

Спасибо. А то у меня уже мозг снесло.


← →
Anatoly Podgoretsky ©   (2012-08-07 16:42) [4]

> Andrey K  (07.08.2012 16:30:01)  [1]

Потому что их две функции с одинаковым именем, ты используешь не ту.


← →
Andrey K   (2012-08-07 16:49) [5]

Про это я читал. А как использовать ту?


← →
Anatoly Podgoretsky ©   (2012-08-07 16:54) [6]

> Andrey K  (07.08.2012 16:49:05)  [5]

Ту, которая Extended
Для этого смени тип с Integer на Extended
Да и включи проверку переполнения в компиляторе


← →
ProgRAMmer Dimonych ©   (2012-08-07 16:56) [7]

Интересно, кстати, мнение коллег по поводу варианта

i1 := Sqr(Extended(i));

Плюсы, минусы, подводные камни?


← →
Anatoly Podgoretsky ©   (2012-08-07 16:59) [8]

> ProgRAMmer Dimonych  (07.08.2012 16:56:07)  [7]

Зачем, когда проще I: Extended;


← →
AV ©   (2012-08-07 17:13) [9]


> i1 := Sqr(Extended(i));
>
> Плюсы, минусы, подводные камни?

D7 Invalid typecast


← →
Andrey K   (2012-08-07 23:58) [10]

Спасибо всем за помощь. Прога работала уже лет семь. Я считал её отлаженной. Ан нет.


← →
NoUser   (2012-08-08 21:43) [11]

А эта прога со спутниками никак не связана? Ж)


← →
Jeer ©   (2012-08-08 21:49) [12]


> А эта прога со спутниками никак не связана?


Да и пусть "связана" со спутниками.
Важнее,чтобы не была связана с атомщиками :)


← →
Германн ©   (2012-08-09 02:30) [13]


> Jeer ©   (08.08.12 21:49) [12]
>
>
> > А эта прога со спутниками никак не связана?
>
>
> Да и пусть "связана" со спутниками.
> Важнее,чтобы не была связана с атомщиками :)

У атомщиков всё-таки меньше программистов, но больше железячников! :)


← →
Anatoly Podgoretsky ©   (2012-08-09 08:36) [14]

> Германн  (09.08.2012 02:30:13)  [13]

Хватит и одного, достаточно возвести в квадрат.



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

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



Память: 0.48 MB
Время: 0.05 c
15-1345197008
Painner777
2012-08-17 13:50
2013.03.22
Рисование, обводка в фотошопе?


2-1333830083
Den
2012-04-08 00:21
2013.03.22
заранее задать размер строки Setlength ?


15-1330893003
Юрий
2012-03-05 00:30
2013.03.22
С днем рождения ! 5 марта 2012 понедельник


2-1336066310
igorium
2012-05-03 21:31
2013.03.22
Не отображаются русские буквы в английских Виндовс


2-1335519491
leklerk
2012-04-27 13:38
2013.03.22
Как получить доступ к текущей записи в ADODataSet?




   Наверх