Tutorial

Tugas Dasar Pemrograman: Membuat Program Ticketing Wahana Bermain Menggunakan Python

admin
admin

8 Okt 2026 • 5 min baca

Tugas Dasar Pemrograman: Membuat Program Ticketing Wahana Bermain Menggunakan Python

Ketika masih kuliah Sistem Informasi, saya pernah mengerjakan tugas akhir mata kuliah Dasar Pemrograman berupa program ticketing wahana Ancol menggunakan Python. Program berbasis terminal ini menjadi salah satu latihan awal saya dalam menggabungkan percabangan, perulangan, list, input pengguna, waktu lokal, dan perhitungan transaksi ke dalam satu alur aplikasi.

Video presentasi tugas program ticketing wahana Ancol menggunakan Python.

Ide program ticketing wahana Ancol

Studi kasusnya adalah loket tiket yang melayani pembelian tiket masuk Ancol, kendaraan, Dunia Fantasi, dan Sea World. Kami memilih kasus ini karena alurnya dekat dengan aktivitas sehari-hari, tetapi tetap memiliki cukup banyak aturan untuk dijadikan latihan dasar pemrograman.

Program membantu petugas memasukkan data pengunjung, memilih jenis tiket, menghitung harga, menerima pembayaran, menampilkan kembalian, dan mencetak informasi tiket. Seluruh proses dijalankan melalui command line sehingga fokus tugas berada pada logika program, bukan desain antarmuka.

Konsep Python yang digunakan

  • Input dan output untuk menerima data serta mencetak tiket.
  • If, elif, dan else untuk memilih paket dan menentukan harga.
  • While untuk mengulang menu dan proses login.
  • For untuk memasukkan beberapa pengunjung atau kendaraan.
  • List dan tuple untuk menyimpan data serta nama hari.
  • Operator logika untuk menangani beberapa kondisi.
  • Datetime dan time untuk tanggal, jam, serta harga weekday dan weekend.

Tugas ini mengajarkan bahwa konsep dasar yang dipelajari terpisah di kelas baru terasa berguna ketika digabungkan untuk menyelesaikan satu kasus nyata.

Alur login dan menu utama

Program dimulai dari form login sederhana. Jika data login tidak sesuai, perulangan meminta pengguna mencoba kembali. Setelah berhasil, program menampilkan menu tiket masuk Ancol, Dunia Fantasi, Sea World, dan logout.

Implementasi ini memang masih sederhana dan belum menggunakan database maupun password hashing. Namun, sebagai tugas dasar pemrograman, bagian tersebut membantu saya memahami validasi, operator logika, dan perubahan alur berdasarkan kondisi.

Tiket masuk orang dan kendaraan

Menu tiket masuk Ancol memisahkan tiket orang, sepeda motor, dan mobil. Untuk tiket pengunjung, program meminta jumlah orang, nama, umur, pembayaran, serta data pendamping jika ada pengunjung anak.

Pada tiket kendaraan, pengguna memasukkan jumlah kendaraan, nomor polisi, dan merek. Program lalu menghitung total pembayaran dan kembalian. Terdapat pula aturan potongan harga berdasarkan jumlah tiket yang dibeli.

Harga Dufan berdasarkan weekday dan weekend

Salah satu bagian menarik adalah penentuan harga Dunia Fantasi berdasarkan hari pada komputer. Program membaca waktu lokal, menentukan nama hari, kemudian memilih harga weekday atau weekend dengan percabangan.

Dari sini saya belajar bahwa waktu dapat menjadi input aturan bisnis. Namun, saya juga belajar bahwa pemetaan indeks hari harus diuji dengan teliti karena modul waktu dapat menggunakan urutan hari yang berbeda dari daftar buatan sendiri.

Paket Sea World dan bundling

Program Sea World menyediakan tiket reguler dan paket bundling. Pilihan huruf besar atau kecil diterima menggunakan operator logika, sedangkan harga kembali dibedakan berdasarkan weekday dan weekend.

Menu ini memperlihatkan tantangan yang mulai muncul ketika percabangan bertambah. Kode menjadi panjang dan banyak bagian berulang. Jika dikerjakan kembali sekarang, saya akan memecah kalkulasi harga, input data, dan pencetakan tiket menjadi fungsi-fungsi kecil.

Program latihan perhitungan parkir

Selain program utama, materi sumber juga memuat latihan perhitungan biaya parkir. Pengguna memasukkan jam masuk dan jam keluar, kemudian program menghitung lama parkir dan tarif berdasarkan durasi.

masuk = int(input("Masukkan jam masuk: "))
keluar = int(input("Masukkan jam keluar: "))
lama = keluar - masuk

if lama <= 1:
    biaya = 2000
elif lama < 10:
    biaya = 2000 + (lama - 1) * 1000
else:
    biaya = 10000

print("Lama parkir:", lama, "jam")
print("Biaya parkir: Rp", biaya)

Contoh kecil ini membantu memahami urutan kondisi. Kondisi yang lebih spesifik harus diletakkan pada posisi yang tepat agar tarif dihitung sesuai aturan.

Kesulitan yang saya temui

  • Menjaga agar perulangan kembali ke menu yang benar.
  • Mengelola banyak percabangan tanpa kehilangan alur.
  • Menyimpan data beberapa pengunjung menggunakan list.
  • Menentukan harga berdasarkan hari pada sistem.
  • Menghitung total pembayaran, diskon, dan kembalian.
  • Membagi pekerjaan kelompok serta menyatukan kode.

Kesalahan yang paling sering terjadi bukan sintaks, tetapi alur program. Kode dapat berjalan, tetapi kembali ke menu yang salah atau mencetak data berulang karena posisi loop dan break kurang tepat.

Apa yang akan saya perbaiki sekarang

Jika program ini dibuat ulang, saya akan menggunakan fungsi untuk setiap menu, struktur data untuk daftar produk dan harga, validasi angka, serta pengujian otomatis untuk kalkulasi. Credential tidak akan ditulis langsung di source code, dan data transaksi akan disimpan di database atau file.

Saya juga akan mengganti percabangan panjang dengan pemetaan menu, menggunakan format mata uang yang konsisten, menangani transaksi yang melewati tengah malam, serta memisahkan logika bisnis dari tampilan terminal.

Dokumen dan source code tugas

Berikut dokumen serta source code asli sebagai referensi bagi mahasiswa yang sedang mempelajari tugas serupa. Gunakan sebagai bahan belajar, bukan untuk dikumpulkan ulang tanpa memahami logikanya.

Preview paper

Paper program ticketing wahana Ancol untuk mata kuliah Dasar Pemrograman.

Buka atau unduh paper

Preview source code program ticketing

Source code program ticketing dapat dilihat langsung melalui preview Google Drive berikut. Jika preview tidak muncul di browser, gunakan tombol buka file di bawahnya.

Preview source code program ticketing wahana bermain menggunakan Python.

Buka source code di Google Drive

Source code

Pelajaran dari tugas Dasar Pemrograman

Program ini mungkin terlihat sederhana dibanding aplikasi modern, tetapi justru dari tugas seperti inilah saya mulai memahami cara memecah masalah menjadi input, proses, kondisi, perulangan, dan output. Saya juga belajar bahwa program yang berjalan belum tentu memiliki struktur kode yang baik.

Bagi mahasiswa yang sedang mendapat tugas akhir mata kuliah Dasar Pemrograman, pilih studi kasus yang mudah dipahami lalu tulis aturan bisnisnya sebelum mulai membuat kode. Buat flowchart, pecah fitur satu per satu, dan uji setiap kemungkinan input.

Penutup

Pengalaman membuat program ticketing wahana Ancol menggunakan Python menjadi latihan penting pada masa awal kuliah Sistem Informasi. Dari satu aplikasi terminal, saya mempraktikkan hampir seluruh konsep dasar pemrograman yang dipelajari pada semester tersebut.

Artikel Terkait

(3)

Komentar

(0)

Komentar Anda akan dimoderasi.

Memuat komentar...