program testAnsiStrings;
{$ifdef fpc}{$mode delphi}{$H+}{$endif}
const
part1: AnsiString = 'Part1_7890123456789_';
part2: AnsiString = 'Part2_7890123456789_';
part3: AnsiString = 'Part3_7890123456789_';
part4: AnsiString = 'Part4_7890123456789_';
part5: AnsiString = 'Part5_7890123456789_';
part6: AnsiString = 'Part6_7890123456789_';
part7: AnsiString = 'Part7_7890123456789_';
part8: AnsiString = 'Part8_7890123456789_';
part9: AnsiString = 'Part9_7890123456789_';
part10: AnsiString = 'Part10_890123456789_';
part11: AnsiString = 'Part11_890123456789_';
part12: AnsiString = 'Part12_890123456789_';
part13: AnsiString = 'Part13_890123456789_';
part14: AnsiString = 'Part14_890123456789_';
part15: AnsiString = 'Part15_890123456789_';
part16: AnsiString = 'Part16_890123456789_';
part17: AnsiString = 'Part17_890123456789_';
part18: AnsiString = 'Part18_890123456789_';
part19: AnsiString = 'Part19_890123456789_';
part20: AnsiString = 'Part20_890123456789_';
function CombinedByMethodA: AnsiString;
var
tempString: AnsiString;
begin
tempString := part1 + part2 + part3 + part4 + part5 + part6 + part7 + part8 +
part9 + part10 + part11 + part12 + part13 + part14 + part15 +
part16 + part17 + part18 + part19 + part20;
result := tempString;
end;
function CombinedByMethodB: AnsiString;
var
tempString1, tempString2, tempString3: AnsiString;
begin
tempString1 := part1 + part2 + part3 + part4 + part5 + part6 + part7 + part8 +
part9 + part10;
tempString2 := part11 + part12 + part13 + part14 + part15 +
part16 + part17 + part18 + part19 + part20;
tempString3 := tempString1 + tempString2;
result := tempString3;
end;
function CombinedByMethodC: AnsiString;
var
tempString: AnsiString;
begin
tempString := concat(part1, part2, part3, part4, part5, part6, part7, part8,
part9, part10, part11, part12, part13, part14, part15, part16,
part17, part18, part19, part20);
result := tempString;
end;
begin
writeln(CombinedByMethodA);
writeln(CombinedByMethodB);
writeln(CombinedByMethodC);
end.