program INVSC;
{ TURBO PASCAL 7 SOURCE
DELPHI SOURCE
classe Inverte String
Joao Paulo Schwarz Schuler}
{FPC Source Code}
{$X+}
{$F+}
function InverteString(S:String):string;
var R:string;
I:integer;
TAMANHO:integer;
begin
R:='';
TAMANHO:=length(S);
if TAMANHO>0
then for I:=TAMANHO downto 1 do
R:=R+S[I];
InverteString:=R;
end;
type TInverte = object
private
S:string;
public
procedure Define(PS:string);
procedure Inverte;
function Get:string;
end;
procedure TInverte.Define(PS:string);
begin
S:=PS;
end;
procedure TInverte.Inverte;
begin
S:=InverteString(S);
end;
function TInverte.Get:string;
begin
Get:=S;
end;
const MEUNOME : string ='Pernalonga & Patolino';
var I:TInverte;
begin
I.Define(MEUNOME);
I.Inverte;
writeln(I.Get);
I.Inverte;
writeln(I.Get);
end.