Комплексный пример
Число возможных комбинаций различных форматов огромно, поэтому для экономии места в одну программу были включены сразу несколько примеров. Функция arctan является стандартной функцией арктангенса из математической библиотеки math.
(* Программа cram - демонстрация процедуры printf *)
uses stdio,math;
const
weekday:pchar = 'Воскресенье';
month:pchar = 'Сентября';
str:pchar = 'Hello, world';
i:longint = 11058;
day:longint = 15;
hour:longint = 16;
minute:longint = 25;
begin
(* Вывести дату *)
printf ('Дата %s, %d %s, %d:%.2d'#$a,
[weekday, day, month, hour, minute]);
(* Перевод строки *)
putchar ($a);
(* Демонстрация различных комбинаций ширины поля и точности *)
printf ('>>%s<<'#$a, [str]);
printf ('>>%30s<<'#$a, [str]);
printf ('>>%-30s<<'#$a, [str]);
printf ('>>%30.5s<<'#$a, [str]);
printf ('>>%-30.5s<<'#$a, [str]);
putchar ($a);
(* Вывести число i в разных форматах *)
printf ('%d, %u, %o, %x, %X'#$a, [i, i, i, i, i]);
(* Вывести число пи с точностью 5 знаков после запятой *)
printf ('пи равно %.5f '#$a, [4 * arctan (1.0)]);
end.
Программа генерирует следующий вывод:
Дата Воскресенье, 15 Сентября, 16:25
>>Hello, world<<
>> Hello, world<<
>>Hello, world <<
>> Hello<<
>>Не11о <<
11058, 11058, 25462, 2b32, 2B32
пи равно 3.14159