Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

STRUKTUR DATA PERTEMUAN 4 vandawaa@yahoo.com.

Presentasi serupa


Presentasi berjudul: "STRUKTUR DATA PERTEMUAN 4 vandawaa@yahoo.com."— Transcript presentasi:

1 STRUKTUR DATA PERTEMUAN 4

2 STACK / TUMPUKAN Stack / tumpukan adalah konsep penyimpanan data dengan cara menggunakan konsep LIFO (Last In First Out) Artinya, data yang terakhir masuk, data tersebut yang pertama kali keluar. Untuk merepresentasikan stack , kita dapat menggunakan variabel statis alias Array atau variabel dinamis alias Pointer. Stack juga dapat digunakan untuk mengecek ekspresi matematika , dan mengubah suatu ekspresi. Infix menjadi Prefix atau sebaliknya.

3 ARRAY (LARIK) STACK / TUMPUKAN
Operasi penyisipan dan penghapusan elemen-elemennya dilakukan pada satu sisi saja yang disebut sebagai “TOP” atau “ATAS”.

4 ARRAY (LARIK) STACK / TUMPUKAN Operasi pada STACK :
PUSH : Memasukkan Data POP : Mengambil Data

5 STACK / TUMPUKAN

6 ARRAY (LARIK) STACK / TUMPUKAN

7 STACK / TUMPUKAN DEKLARASI TUMPUKAN const MaxElemen = 4;
type Tumpukan = record Isi : array[1..MaxElemen] of char; Atas : 0..MaxElemen; end; var T : Tumpukan; 4 3 2 1

8 STACK / TUMPUKAN Prosedur AWAL procedure AWALAN(var T : Tumpukan);
4 3 2 1 procedure AWALAN(var T : Tumpukan); begin T.Atas :=0; end; T.Atas := 0

9 A Y A M STACK / TUMPUKAN Prosedur PUSH
Nilai = A procedure PUSH (var T : Tumpukan; nilai = char); Begin if (T.Atas = MaxElemen) then write(‘Tumpukan PENUH Beroow’) else begin T.Atas := T.Atas + 1; T.Isi[T.Atas] := nilai; end; M T.Atas := 4 4 3 2 1 T.Atas := 3 T.Atas := 2 T.Atas := 1 T.Atas := 0

10 M A Y A STACK / TUMPUKAN Prosedur POP
procedure POP (var T : Tumpukan); Begin if (T.Atas = 0) then write(‘Tumpukan KOSONG Beroow’) else begin write(‘nilai yang diambil : ’ ,T.Isi[T.Atas]); T.Atas := T.Atas - 1; end; M T.Atas := 4 4 3 2 1 A T.Atas := 3 Y T.Atas := 2 A T.Atas := 1 T.Atas := 0

11 U S U S STACK / TUMPUKAN PUSH Data PUSH(T, ‘U’); PUSH(T, ‘S’); 4
Nilai = U procedure PUSH (var T : Tumpukan; nilai = char); Begin if (T.Atas = MaxElemen) then write(‘Tumpukan PENUH Beroow’) else begin T.Atas := T.Atas + 1; T.Isi[T.Atas] := nilai; end; S T.Atas := 4 4 3 2 1 T.Atas := 3 PUSH(T, ‘U’); PUSH(T, ‘S’); T.Atas := 2 T.Atas := 1 T.Atas := 0

12 S U S U STACK / TUMPUKAN POP Data POP(T); 4 3 2 1 T.Atas := 4
procedure POP (var T : Tumpukan); Begin if (T.Atas = 0) then write(‘Tumpukan KOSONG Beroow’) else begin write(‘nilai yang diambil : ’ ,T.Isi[T.Atas]); T.Atas := T.Atas - 1; end; S T.Atas := 4 4 3 2 1 U T.Atas := 3 S POP(T); T.Atas := 2 U T.Atas := 1 T.Atas := 0

13 Tugas 3 Buatlah program dalam bahasa pemrograman Pascal untuk membalikkan kata. Buatlah program dalam bahasa pemrograman Pascal untuk perhitungan perkalian faktorial. **Input banyak kata-kata dan angka diisi saat program running **Gunakan tipe data yang tepat **Gunakan prosedur dalam mendeklarasikan PUSH dan POP.

14 Tugas 3 1 2

15 THE END OF THIS DAY KANGGOANG NAAAHHH,,,,!!!!


Download ppt "STRUKTUR DATA PERTEMUAN 4 vandawaa@yahoo.com."

Presentasi serupa


Iklan oleh Google