TUGAS TEORI PRAKTIK struktur data Pascal

readln; {melakukan proses pop} for i:=1 to lenghtkalimat do pusht,kalimat[i]; writeln; writeln‘Hasil akhir push dibaca dengan pop = ‘; {menampilkan hasil proses pop} for j:= 1 to lenghtkalimat do begin w:=popt; writew; end; readln; end. 2. Modifikasi program diatas untuk menambahkan sebuah karakter dalam tumpukan. Contoh input : STMIK El Rahma Tambahan karakter : q Hasil akhir : q amhaR lE KIMTS

D. TUGAS

1. Pada prosedur push jika ada kondisi nitai T.atas sama dengan max_elemen dan akan dilakukan operasi push, apa yang terjadi? Kemudian tambahkan pernyataan pada prosedur push diatas untuk menghindari kondisi tersebut. 2. Pada prosedur pop jika kondisi t.atas=0 kemudian dilakukan operasi pop, apa yang terjadi? Kemudian tambahkan pernyataan pada prosedur pop di atas untuk menghindari kondisi tersebut. MODUL II TIPE DATA POINTER

A. MAKSUD DAN TUJUAN 1. MAKSUD

Memberikan pemahaman tentang tipe data pointer beserta operasinya.

2. TUJUAN

Agar mahasiswa dapat menggunakan tipe data pointer dengan melakukan operasi mengkopi pointer, mengkopi isi simpul, dan menghapus pointer.

B. TEORI

Sampai saat ini tipe data baik yang sederhana maupun yang tersetruktur. Struktur dari tipe-tipe tersebut mempunyai keterbatasan, yakni bersifat statis. Sebagai akibatnya, ukuran dan urutannya sudah pasti. Pada suatu larik, elemen yang satu mendahului elemen yang lain. Ukurannya sudah pasti, tidak dapat melebihi ukuran maksimun dari yang sudah dideklarasikan. Kelemahan lain dari variabel statis adalah ruang memori yang sudah digunakan tidak dibebaskan. Pointer merupakan tipe data yang bersifat dinamis yang bisa dipesan jika diperlukan dan dapat dibebaskan kembali bila sudah tidak digunakan. Struktur data yang menggunakan variabel dinamis disebut dengan struktur data dinamis. Variabel dinamis tidak dapat dideklarasian secara langsung seperti halnya variabel-variabel statik. Variabel dinamis hanya ditunjukkan oleh variabel khusus yang berisi alamat memori yang digunakan oleh variabel tersebut. Variabel khusus ini disebut dengan variabel pointer. Suatu tipe data pointer dideklarasikan dengan menggunakan simbol . Meskipun telah dideklarasikan suatu variabel pointer yang akan menunjukkan kesuatu tipe data tertentu namun variabel dinamis tidak akan dialokasikan selama belum ada perintah pengalokasian varibel dinamis. Begitu pula saat variabel dinamis sudah tidak digunakan lagi.

C. PRAKTIK

1. Cobalah program dibawah ini, amati untuk beberapa masukan yang berbeda. Program pointer; Uses crrt; Type simpul = data; Data = record Nama: string; Alamat: string; Berikut: simpul; End; Var t1,t2,t3,t4,t5,t6 : simpul; Begin Clrscr; Newt1; Newt2; Newt3; Newt4; Newt5; Newt6; T1.nama := ‘kikir’; T1.alamat := ‘jogja’; Writeln; Writeln‘ nama : ‘,t1.nama; Writeln; Writeln‘ alamat : ‘,t1.alamat; T2:=t1; Writeln; Writeln‘ nama : ‘,t2.nama; Writeln; Writeln‘ alamat : ‘,t2.nama; End. Dari program diatas bisa dirinci sebagai berikut:  Operasi mengisi sampul t1 T1.nama := ‘kikir’; T1.alamat := ‘jogja’;  Operasi membaca simpul t1 Writeln‘ nama : ‘,t1.nama; Writeln‘ alamat : ‘,t1.alamat;  Operasi copy pointer T2:=t1;  Operasi copy isi sampul T2 := t1  Operasi hapus simpul Disposet1 2. Isikan simpul t2 dengan data nama Joko dan alamat Solo kemudian lakukan opeasi kopi pointer T3 := t1; T5 := t1; Dan lakukan operasi kopi isi simpul T4 := t2; T6 := t2;

D. TUGAS