0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan2 halaman

Tentang Link List Dan Queue

Dokumen ini berisi kode Python untuk sistem antrian booking hotel menggunakan struktur data linked list. Terdapat kelas 'Booking' untuk menyimpan informasi pemesan dan kelas 'AntrianBooking' untuk mengelola antrian booking. Program utama menyediakan menu interaktif untuk menambah, memproses, dan menampilkan antrian booking.

Diunggah oleh

f45ha2021
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan2 halaman

Tentang Link List Dan Queue

Dokumen ini berisi kode Python untuk sistem antrian booking hotel menggunakan struktur data linked list. Terdapat kelas 'Booking' untuk menyimpan informasi pemesan dan kelas 'AntrianBooking' untuk mengelola antrian booking. Program utama menyediakan menu interaktif untuk menambah, memproses, dan menampilkan antrian booking.

Diunggah oleh

f45ha2021
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 2

CODINGAN TENTANG LINK LIST DAN QUEUE

# Node untuk Linked List (data booking)


class Booking:
def _init_(self, nama_pemesan, tipe_kamar, jumlah_malam):
self.nama_pemesan = nama_pemesan
self.tipe_kamar = tipe_kamar
self.jumlah_malam = jumlah_malam
self.next = None # pointer ke booking berikutnya

# Queue menggunakan Linked List


class AntrianBooking:
def _init_(self):
self.front = None # kepala antrian
self.rear = None # ekor antrian

def tambah_booking(self, nama_pemesan, tipe_kamar, jumlah_malam):


booking_baru = Booking(nama_pemesan, tipe_kamar, jumlah_malam)
if self.rear is None: # jika antrian kosong
self.front = self.rear = booking_baru
else:
self.rear.next = booking_baru
self.rear = booking_baru
print(f"Booking untuk {nama_pemesan} berhasil ditambahkan ke antrian.")

def proses_booking(self):
if self.front is None:
print("Tidak ada booking untuk diproses.")
return
booking = self.front
print(f"Memproses booking: {booking.nama_pemesan} - {booking.tipe_kamar} untuk
{booking.jumlah_malam} malam.")
self.front = self.front.next
if self.front is None:
self.rear = None # antrian kosong setelah proses

def tampilkan_antrian(self):
if self.front is None:
print("\nAntrian booking kosong.")
return
print("\nDaftar antrian booking:")
current = self.front
nomor = 1
while current:
print(f"{nomor}. {current.nama_pemesan} - {current.tipe_kamar} - {current.jumlah_malam}
malam")
current = current.next
nomor += 1
# Program utama
def main():
antrian = AntrianBooking()

while True:
print("\n=== MENU BOOKING HOTEL ===")
print("1. Tambah Booking")
print("2. Proses Booking")
print("3. Tampilkan Antrian")
print("4. Keluar")

pilihan = input("Pilih menu (1-4): ")

if pilihan == '1':
nama = input("Masukkan nama pemesan: ")
tipe = input("Masukkan tipe kamar (Standard/Deluxe/Suite): ")
malam = int(input("Masukkan jumlah malam menginap: "))
antrian.tambah_booking(nama, tipe, malam)
elif pilihan == '2':
antrian.proses_booking()
elif pilihan == '3':
antrian.tampilkan_antrian()
elif pilihan == '4':
print("Terima kasih telah menggunakan sistem booking hotel!")
break
else:
print("Pilihan tidak valid. Silakan pilih 1-4.")

if _name_ == "_main_":
main()

HASIL
CODINGAN
=== MENU BOOKING HOTEL ===
1. Tambah Booking
2. Proses Booking
3. Tampilkan Antrian
4. Keluar
Pilih menu (1-4):

Anda mungkin juga menyukai