Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: 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 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.047 c
9-1193070314
lubass
2007-10-22 20:25
2013.03.22
Обратная функцыя к RGB() существует?


15-1345453443
Дмитрий С
2012-08-20 13:04
2013.03.22
Мастер-класс по микроконтроллерам.


15-1342778707
Юрий Зотов
2012-07-20 14:05
2013.03.22
Наш ответ


2-1338443775
Demo
2012-05-31 09:56
2013.03.22
Настроить Delphi 2007


15-1338216754
leklerk
2012-05-28 18:52
2013.03.22
Когда нужно использовать ООП?