Stack
Definisi
Stack pada Struktur Data adalah sebagai tumpukan, sekumpulan data yang seolah-olah diletakkan di atas data yang lain.
Pada stack, elemen terakhir yang disimpan (push) akan menjadi elemen pertama yang diambil (pop).
Fungsi
dari while not pada codingan yaitu mengambil isi stack saat tidak kosong,jika
kosong keluar dari while not dan program terhenti. Prinsip yang digunakan dalam tumpukan adalah LIFO ( Last In First Out ).
Ilustrasi

Algoritma
1. Lakukan pengecekan apakah antrian kosong atau penuh?
2. Ketika melakukan proses push lakukan pemeriksaan pada tumpukan apakah tumpukan penuh, jika salah maka lakukan proses No.3, jika benar maka lakukan proses No.6.
3. Memasukkan elemen dalam tumpukan tersebut.
4. Ketika akan melakukan proses pop lakukan pemeriksaan terlebih dahulu pada tumpukan apakah tumpukan sudah kosong, jika benar maka lakukan proses No.5 jika salah maka proses No.6
5. Tampilkan pemberitahuan bahwa tumpukan penuh atau kosong.
6. Menghapus elemen yang ada paling atas.
Kode Program
from time import *
def queue():
s=[]
return s
def isEmpty(s):
return s==[]
def enqueue(s,i):
s.insert(0,i)
def dequeue(s):
return s.pop()
def size (s):
return len(s)
def tugas1():
s = queue()
waktu = 8.00
keluar=''
while True:
orang=input()
if orang.isdigit()or orang.isalpha()and orang!='antrian' and orang !='layani':
enqueue(s,str(orang))
waktu+=0.020
print(" costumer " + orang + " waktu pelayanan " + " {:.2f} ".format(waktu))
elif orang=='layani':
if isEmpty(s):
print(" antrian kosong ")
else:
keluar=dequeue(s)
print(" orang yang dilayani adalah " + keluar)
elif orang=='antrian':
print(s)
tugas1()
Comments
Post a Comment