Contoh Program Stack Pascal

Article 2: The Stack Data Structure

  1. Contoh Program Stack Pascal Dan
  2. Contoh Program Stack Pascal Data

An array is a data structure which stores data items in a pre-allocated space. It allows you to store data anywhere within its range. On the other hand, the Stack Data Structure does not allow you to store data where you want i.e. order is important. It is based on a LIFO basis - the last to arrive, the first to be served.

The stack is a simple array which stores data items using an index which points to the last element that has been inserted. If data is requested from the stack, the last element that has been stored is 'poped' out of the array and returned. When popping occurs, the last element is returned and discarded from the stack with the top pointer being decremented by 1. Obviously, if the stack is empty, nothing is returned and the top pointer will remain untouched.

One can always add elements to the stack by pushin data items at the end of the stack indicated by the top pointer. After each added item, the top pointer is increased by 1, however items won't be added and top pointer won't be increased by 1 if the stack is already full. The stack rejects any more items to be added when full until at least 1 item is poped.

TUGAS

Pada

1.Buatlah algoritma inisialisasi, push, pop, isfull, isempty.

Contoh Program Array Pada Pascal. Berikut adalah contoh source kode array dalam program turbo pascal. Program Datamahasiswa; uses crt; var nama. Contoh Program Stack Data Array Pascal. Besarnya atau banyaknya data yang dapat ditampung di dalam array tersebut. Berikut contoh penggunaan struktur data. Antony and the johnsons cut the world 2012. Stack (tumpukan) dan contoh program penggunaannya Stack = tumpukan Stack merupakan bagian dari struktur data yang dikategorikan ke dalam bentuk linear data, dimana operasi pemasukan maupun pengeluaran data selalu dilakukan pada salah satu sisinya. Program Tumpukan (Modifikasi Tambah Karakter): Tugas: Modifikasi program diatas untuk menambah sebuah karakter ke dalam tumpukan. Contoh input: Teknik Informatika.

2.Buat kode inisialisasi, push, pop, isfull, isempty.

3.Tampilkan screen shoot nya.

Contoh

4.Keterangan : Jumlah data yang akan di simpan, imputkan oleh pengguna

Contoh program stack pascal danContoh Program Stack Pascal

-Data yang akan di simpan di inputkan oleh pengguna.

Operasi Stack :

  1. Inisialisasi : digunakan untuk mengosongkan stack
  2. Push : digunakan untuk menambah item pada stack pada tumpukan paling atas
  3. Pop : digunakan untuk mengambil item pada stack pada tumpukan paling atas
  4. IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
  5. IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh
Contoh Program Stack Pascal

Berikut penyelesaiannya dengan menggunakan Turbo Pascal :

Contoh Program Stack Pascal Dan

program operasi_stack;
uses crt;

const max_el = 10;
type
nilaiMatkul = record
nim : string[8];
nama : string[25];
nilai : integer;
end;
stack = record
top : integer;
data : array[1..max_el] of nilaiMatkul;
end;
procedure inisialisasi(var s : stack);
begin
s.top := 0;
end;
function isempty(var s : stack) : boolean;
var
hasil : boolean;
begin
hasil := false;
if s.top = 0 then
begin
hasil := true;
end;
isempty := hasil;
end;
function isfull (var s : stack) : boolean;
var
hasil : boolean;
begin
hasil := false;
if s.top = max_el then
begin
hasil :=true;
end;
isfull :=hasil;
end;
procedure push(nim : string; nama:string; nilai:integer; var s:stack);
begin
if isfull(s)=true then
begin
writeln(‘stack penuh’);
end
else
begin
if isempty(s)=true then
begin
s.top := 1;
s.data[1].nim := nim;
s.data[1].nama := nama;
s.data[1].nilai := nilai;
end
else
begin
s.top := s.top+1;
s.data[s.top].nim :=nim;
s.data[s.top].nama :=nama;
s.data[s.top].nilai :=nilai;
end;
end;
end;
procedure pop(var s : stack);
begin
if s.top <> 0 then
begin
s.top := s.top-1;
end
else
write(‘Data Habis’);
writeln
end;
procedure printstack(var s:stack);
var
i : integer;
begin
if s.top<> 0 then
begin
for i := s.top downto 1 do
with s.data[i] do
begin
writeln;
writeln(‘elemen ke: ‘,i);
wrietln(‘nim: ‘,nim);
writeln(‘nama: ‘,nama);
writeln(‘nilai: ‘,nilai);
end;
writeln;
end
else
begin
writeln(‘Stack Kosong’);
end;
end;
var
s :stack;
banyak : byte;
i : integer;
begin
clrscr;
inisialisasi(s);
writeln;
writeln(‘Awal‘);
printstack(s);
writeln;
writeln(‘‘);
write(‘Masukkan Jumlah Data : ‘); readln(byk);
writeln;
for i := 1 to banyak do
with s.data[i] do
begin
write(‘nim : ‘); readln(nim);
write(‘nama: ‘); readln(nama);
write(‘nilai: ‘); readln(nilai);
end;
readln;
writeln(‘Setelah Di Push’);
for i :=1 to banyak do
begin
push(s.data[i].nim, s.data[i].nama, s.data[i].nilai,s);
writeln;
end;
printstack(s);
writeln(‘‘);
writeln;
readln;
writeln(‘Setelah Di Pop‘);
pop (s);
writeln;
printstack(s);
writeln(‘‘);
writeln;
readln;
readln;
end.

Setelah itu program bisa di RUN dengan cara mengeklik menu ‘RUN’ atau dengan cara menekan tombol ‘CTRL + F9′. Jika sudah sukses program bisa dijalankan.

Contoh Program Stack Pascal Data

Gambar dibawah merupakan hasil setelah di RUN :