Program Pembalik Kalimat

Berikut codingan Program Pembalik Kalimat 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

program balik_kalimat; 

uses 

 crt; 

const 

 elemen = 255;

type 

 s255 = string[elemen]; 

 tumpukan = record 

 isi : s255; 

 atas : 0..elemen 

 end; 

var 

 t : tumpukan;

 i : integer;

 kalimat : s255;

 n,m : char; 

procedure awalan ( var t : tumpukan ); 

begin 

 t.atas := 0; 

end; 

procedure push ( var t : tumpukan; x : char ); 

begin 

 t.atas := t.atas + 1; 

 t.isi[t.atas] := x; 

end;

function pop ( var t : tumpukan ) : char; 

begin 

 pop := t.isi[t.atas]; 

 t.atas := t.atas - 1; 

end; 

begin 

 clrscr; 

 awalan (t); 

 writeln (' Tumpukan untuk membalik kalimat '); 

 writeln (' -------------------------------- '); 

 writeln; 

 writeln ('Isikan sembarang kalimat : '); 

 readln (kalimat); 

 writeln; 

 writeln(' Kalimat asli : '); ;writeln (kalimat); 

 writeln('setelah dibalik : '); 

 for i := 1 to length(kalimat) do 

 push(t, kalimat[i]); 

 for i := 1 to length(kalimat) do 

 write (pop(t)); 

 readln; 

end. 

************************************************** 

ouput program tersebut tersaji sebagai berikut: 

************************************************** 

Tumpukan untuk membalik kalimat 

 -------------------------------------------: 

Isikan sembarang kalimat : 

saya mau pergi ke pasar 

Kalimat asli : 

saya mau pergi ke pasar 

setelah dibalik : 

rasap ek igrep uam ayas 

------------------------------------------- 

Contoh program tumpukan sebagai berikut: 

program balik_kalimat; 

uses 

 crt; 

const 

 elemen = 255;

type 

 s255 = string[elemen]; 

 tumpukan = record 

 isi : s255; 

 atas : 0..elemen 

 end; 

var 

 t : tumpukan; 

i,nn,th : integer;

 kalimat : s255; 

 n,m,lagi : char; 

procedure awalan ( var t : tumpukan ); 

begin 

 t.atas := 0; 

end; 

procedure push ( var t : tumpukan; x : char ); 

begin 

 t.atas := t.atas + 1; 

 t.isi[t.atas] := x; 

end; 

function pop ( var t : tumpukan ) : char; 

begin 

 pop := t.isi[t.atas]; 

 t.atas := t.atas - 1; 

end; 

begin 

 clrscr; 

 awalan (t); 

 writeln (' Tumpukan untuk membalik kalimat '); 

 writeln (' -------------------------------- '); 

 writeln; 

 writeln ('Isikan sembarang kalimat : '); 

 readln (kalimat); 

 writeln; 

 nn:=length(kalimat); 

 for i := 1 to nn do 

 push(t, kalimat[i]); 

  th:=0; 

 repeat

 th:=th+1; 

 writeln; 

 write('akan tarik karakter ? (Y/T): ');readln(lagi); 

 if ('Y'= upcase(lagi)) then 

 begin 

 write('karakter yang ditarik adalah karakter paling akhir --> '); 

 writeln (pop(t)); 

 readln; 

 end 

 until (('Y'<> upcase(lagi)) or (th=nn) ); 

 if not (('Y'<> upcase(lagi)) or (th=nn)) then write(pop(t)); 

end.


Contoh hasil program ; 





Komentar

Postingan populer dari blog ini

Flowchart tentang Struktur Data Mencuci Piring