Формат вывода (сколько знаков на экране, сколько после запятой/точки) ИМХО ноль там зря стоит - нужно хотя бы 4 (1 знак целая+1 знак точка+2 знака дробная)
См копипаста из Хелпа
В процедурах вывода write и writeln после каждого выводимого значения типа может указываться формат вывода, представляющий собой двоеточие, после которого следует целое число или выражение. Это число или выражение задает ширину поля вывода, то есть количество позиций, отводимых под выводимое значение. Если длина выводимого значения меньше ширины поля вывода, то выводимый текст дополняется слева пробелами до нужной ширины; в результате выводимое значение выравнивается по правому краю. Если длина выводимого значения больше ширины поля вывода, то формат вывода игнорируется. Вещественные и комплексные значения с форматом вывода вида :m всегда выводятся в экспоненциальной форме.
Например, если a, b - целые переменные, то при выполнении операторов
a:=-2437; b:=13555;
writeln(a:6,'Привет! ':9);
writeln(b:1);
в окно вывода будет выведен следующий текст:
-2437 Привет!
13555
Для вещественных и комплексных значений можно также использовать формат n, где m и n - целые значения. Значение m задает ширину поля вывода, а значение n количество знаков после десятичной точки. Например:
writeln(-14.859:10:3); // ___-14.859
writeln(-14.859:10:5); // _-14.85900
writeln(-14.859:10:2); // ____-14.86
writeln(-14.859:10:0); // _______-15
writeln(-14.859:10:7); // -14.8590000
writeln((0,1):10:1); // _(0.0,1.0)