П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 181148 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 79977 раз(а).

Учебник HTML.
Просмотров 76176 раз(а).

Руководство по PHP5.
Просмотров 47145 раз(а).

Хостинг через призму DNS.
Просмотров 54656 раз(а).

Подборка текстов стандартных документов.
Просмотров 46891 раз(а).

Учебник PHP - Самоучитель
Просмотров 53234 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 53825 раз(а).

Внешние атаки...
Просмотров 43484 раз(а).

Учебник PHP.
Просмотров 38971 раз(а).

SSI в примерах.
Просмотров 28850 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Глава 11: Форматы.
11.4 Еще о поледержателяж
11.4.2 Числовые поля

Следующий тип поледержателя — числовое поле с фиксированной десятичной запятой, полезное для больших финансовых отчетов. Это поле также начинается со знака @; за ним следует один или более знаков # с необязательной точкой (она обозначает десятичную запятую). Опять-таки, знак @ считается одним из символов поля. Например:

format MONEY =
Assets: @#W#.*” Liabilities: @#*”##.*# Net: @t”##*.*#
$assets, $1iabilities, $assets-$1iabilities

Эти три числовых поля предусматривают шесть знаков слева от десятичной запятой и два справа (в расчете на суммы в долларах и центах). Обратите внимание на то, что в формате используется выражение — это абсолютно допустимо и встречается очень часто.

Ничего оригинального в Perl больше нет: вам не удастся установить формат с плавающей запятой для вывода значений денежных сумм, нельзя также заключить отрицательные значения или что-нибудь подобное в квадратные скобки. Для этого придется писать отдельную программу, например:

format MONEY =
Assets: @“““<“ Liabilities: @““““ Net: @““<““
&cool($assets,10), scool($1iab,9), $cool($assets-$1iab,10)

sub pretty {
  my($n,$width) = @_;
  $width -2; # учтем отрицательные числа
  $n = sprintf("%.2f",$n); # sprintf описывается в одной из следующих глав

  if ($n < 0) {
    return sprintf ("[t$width.2f]", -$n); # отрицательные числа
                                          # заключаются в квадратные скобки
  } else {
    return sprintf (" %$width.2f ", $n); # положительные числа выделяются ^пробелами 
  }
}

## body of program:
$assets = 32125.12;
$1iab = 45212.15;
write (MONEY);

Назад | Вперед
Содержание (общее) | Содержание раздела | Содержание подраздела



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru