Mam zmienną real no i niestety chciałbym mieć zapis 001 po konwersji do string i kiszka bo otrzymuję 1 :(
0
1
WriteLn(Format('%.3d',[1]));
0
@_13th_Dragon - pytacz ma zmienną typu Real, nie Integer, więc nie można w tym przypadku użyć formatu %d
; Trzeba skorzystać z %f
w odpowiedniej postaci oraz dopisać sobie zera wiodące; Przykład funkcji realizującej to zadanie:
uses
SysUtils;
function RealToStr(ANumber: Real; AWidth: Byte): AnsiString;
begin
Result := Format('%.0f', [ANumber]);
Result := StringOfChar('0', AWidth - Length(Result)) + Result;
end;
Przykładowe wywołanie:
Write(RealToStr(1, 3)); // wyświetli łańcuch '001'