Kamis, 03 November 2011

Program membalik kata

Berikut ini adalah salah satu petikan program membalik kata dengan program pascal.

program membalik_kata;


uses crt;

label oka, budi, arsa;

const
   max=100;

type
   c100 = string[max];
   tumpukan = record
   isi :c100;
   atas : 0..max;
end;

var
   T       : tumpukan;
   i       : integer;
   kalimat : c100;
   ul      : string;

procedure awalan ( var T : tumpukan );
begin
   T.atas :=0;
end;

procedure push (var T : tumpukan; nilai : char);
   begin
      if (T.atas = max) then write ('Tumpukan penuh brow')
      else
      begin
         T.atas := T.atas +1;
         T.isi[T.atas] := nilai;
      end;
   end;


procedure pop (var T :tumpukan);
   begin
      if (T.atas= 0) then write ('Tumpukan kosong brow')
      else
      begin
         write(T.isi[T.atas]);
         T.atas := T.atas -1;
      end;
   end;


begin
   oka:
   clrscr;
   awalan(T);
   writeln('Tumpukan membalik kalimat');
   writeln('=========================');
   writeln;
   write('Ketik kalimat :'); readln(kalimat);
   writeln;

   writeln('Setelah di PUSH dan POP');
   writeln('=========================');
   writeln;

   for i:= 1 to length(kalimat) do
   push(T, kalimat[i]);
   write('Hasil ketikan :');
   for i:= 1 to length(kalimat) do
   pop(T);
   readln;
   writeln;

   budi:
   write('Apakah ingin menginput lagi ? (Y/T)'); readln(ul);
   if ul= 'y' then goto oka;
   if ul= 't' then goto arsa;

   arsa:
   textcolor(yellow);
   write('TTTHHHAAAAAANNNKKKKK YYYYYOOOUUUUUU');
   readln;

end.

Tidak ada komentar: