|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Yuriy Kaminskiy 2:5020/517.21 17 Jan 2001 06:26:50 To : Igor Potupchik Subject : Re: округление -------------------------------------------------------------------------------- >>>>> On 18:54 16/1/2001, raven@t-rex.adamant.net writes: >> обрезаются лишние цифры. Вот такой примерчик цифр даже: >> 3645.2566662 - > 3654.25, 2850.25 -> 2850.25, -> 45.1 и etc? VP> sprintf("%f.2",3645.2566662); Фуу, как некультурно. Если округление нужно - use POSIX; sub round { $_[0] >= 0 ? POSIX::floor($_[0] + 0.5) : POSIX::ceil($_[0] - 0.5) } $y = round($x*100)/100; Если не нужно - $y = int($x*100)/100; Хотя из ее название это не очевидно, но перловая int() возвращает в действительности не целый, а вещественный результат :) [проверка - perl -le 'print int(10e10+1.1)' возвращает 100000000001, что выходит за диапазон целых] -- Yuriy Kaminskiy. --- Gnus v5.2.25/XEmacs 19.14 * Origin: Kyle Katan's station (2:5020/517.21@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1742714b492db.html, оценка из 5, голосов 10
|