Обсуждение:Perl, собирание суммы
0 (0)
Обсуждение:Perl, собирание суммы ( Обсуждение примера 20.10.2003 08:31 )
0(0)Как через ODBC получить доступ к полю SUM например в Отложенных документах?
Задача состоит в том, что три поля, два из которых имеют тип длинное целое, а одно - целое, надо преобразовать в длинное вещественное. В ансвербуке написано как сделать это на Дельфи и на Ц++.
Предлагаемый пример на perl.
Посмотреть пример
>> ОтветитьТоже самое на языке php (сделано на основе предыдущего примера) ( Smolenkov 22.10.2003 13:45 )
0(0)<html> <head> <title> Проверка работоспособности PHP </title> </head> <body> <?php function RealSum($a, $b, $c) { $sign = ($c & 0x8000) << 16; if($c & ~0x8000) { $exp = (($c & ~0x8000) - 16383 + 1023) << 20; } else { $exp = 0; } $mantissa1 = ($b & 0x7FFFF800) >> 11; $mantissa2 = ($b & 0x000007FF) << 21; $mantissa2 += $a & 0xFFFFF800 >> 11; return unpack('d',pack('ll',$mantissa2,$mantissa1+$exp+$sign)); } $s_l=0; $s_h=-1991689536; $s_p=16409; $QQ = RealSum($s_l, $s_h, $s_p); foreach ($QQ as $val) { print "$val<br>"; } ?> </body> </html>
>> ОтветитьНу и как? ( KaMPiLeR 21.11.2003 13:44 )
0(0)Работает на пхп?
Просто у меня иногда неправильную сумму показывает - не пойму или перл неправильно считает или алгоритм не верный.
>> ОтветитьНапример какую сумму собирает не правильно? ( Smolenkov 21.11.2003 13:47 )
0(0)Например какую сумму собирает не правильно?
>> Ответить