program PadStringExample;
function PadString(const S: string; TotalLength: Integer; PadChar: Char): string;
var
PadSize, LeftPad, RightPad: Integer;
begin
if Length(S) >= TotalLength then
Exit(S); // No padding needed if the string is already long enough
PadSize := TotalLength - Length(S);
LeftPad := PadSize div 2;
RightPad := PadSize - LeftPad;
PadString := StringOfChar(PadChar, LeftPad) + S + StringOfChar(PadChar, RightPad);
end;
var
Str, Padded: string;
begin
Str := 'Pascal';
Padded := PadString(Str, 11, '*'); // Pads to a total length of 11 with '*'
WriteLn('Padded: ', Padded);
end.
(*
run:
Padded: **Pascal***
*)