PROGRAM PYTHON SEDERHANA MENGGUNAKAN STRUKTUR DATA

09 October 2024 17:36:47 Dibaca : 27

Nama : Sevira Topiti

NIM : 412424026

Kelas : B

Tugas : Algoritma Dan Pemrograman

 

Pengertian Struktur Data

     Struktur data adalah cara khusus untuk mengorganisir dan menyimpan data yang memberikan kerangka kerja dalam menyimpan data secara terstruktur, memungkinkan data akan disimpan dan diakses dengan cara yang logis dan teratur. Struktur data juga dapat diakses dan digunakan secara efisien yaitu ketika struktur data sudah tepat maka dapat meningkatkan efisiensi program. Contohnya, ketika sturuktur data tertentu dirancang untuk pencarian data yang cepat, sementara yang lain dioptimalkan untuk penyisipan atau penghapusan data yang efisien.

     Terdapat berbagai jenis struktur data, masing-masing dengan kelebihan dan kekurangannya sendiri. Beberapa jenis yang umum termasuk array, linked list, stack, queue, tre, dan graph. Kemudian memilih struktur data yang tepat bergantung pada jenis data yang akan disimpan dan dioperasi yang akan dilakukan pada data tersebut. Lalu abstraksi yaitu struktur data yang menyediakan tingkat abstraksi dan memungkinkan programmer untuk bekerja dengan data tanpa harus khawatir tentang detail implementasi penyimpanan data di memori.

 

Contoh Kode Program Sederhana

1. Kode Program Sederhana untuk Permainan Car Dealer

 

  • mobil = ["Honda Civic", "Toyota Camry", "Ford Mustang", "BMW X5", "Tesla Model S"] : Baris ini mendefinisikan variabel mobil sebagai sebuah list yang berisi nama-nama mobil yang tersedia di dealer. List ini digunakan untuk menyimpan data mobil yang dapat dibeli oleh pemain.
  • def tampilkan_mobil() : Fungsi ini bertanggung jawab untuk menampilkan daftar mobil yang tersedia kepada pemain
  • print("Mobil yang tersedia:"): Mencetak judul "Mobil yang tersedia:" ke layar.
  • for i, mobil in enumerate(mobil): : Melakukan loop melalui setiap elemen dalam list mobil menggunakan enumerate(). enumerate() memberikan indeks (mulai dari 0) dan nilai setiap elemen dalam list. Indeks disimpan dalam variabel i dan nilai elemen disimpan dalam variabel mobil.
  • print(f"{i + 1}. {mobil}") : Mencetak nomor urut (indeks + 1) dan nama mobil ke layar. Format f-string digunakan untuk menyisipkan nilai variabel ke dalam string.
  • def jual_mobil() : Fungsi ini digunakan untuk proses penjualan mobil.
  • tampilkan_mobil() : Menggunakan fungsi tampilkan_mobil() untuk menampilkan daftar mobil kepada pemain.
  • pilihan = int(input("Pilih mobil yang ingin Anda beli (1-5): ")) - 1 : Meminta input dari pemain untuk memilih mobil. Input dikonversi ke tipe data integer menggunakan int() dan dikurangi 1 untuk menyesuaikan dengan indeks list mobil (yang dimulai dari 0).
  • if 0 <= pilihan < len(mobil): : Memeriksa apakah pilihan pemain valid, yaitu berada dalam rentang indeks list mobil.

   Jika if 0 <= pilihan < len(mobil): pilihan valid :

  • mobil_terpilih = mobil[pilihan] : Mendapatkan nama mobil yang dipilih dari list mobil menggunakan indeks pilihan.
  • print(f"Anda telah membeli {mobil_terpilih}!") : Mencetak pesan pembelian ke layar, memberitahu pemain mobil apa saja yang telah mereka beli.
  • mobil.pop(pilihan) : Menghapus mobil yang telah dibeli dari list mobil menggunakan pop(). Ini memastikan bahwa mobil yang sama tidak dapat dibeli dua kali.

 else: : Jika pilihan tidak valid :

  • print("Pilihan tidak valid.") : Mencetak pesan kesalahan ke layar.

 Loop utamaLoop utama ini berguna untuk mengontrol alur permainan.

  • while len(mobil) > 0: : Loop akan terus berjalan selama masih ada mobil di dalam list mobil.
  • jual_mobil() : Menggunakan fungsi jual_mobil() untuk memulai proses penjualan.
  • if len(mobil) > 0: : Memeriksa apakah masih ada mobil yang tersedia setelah penjualan.

   input("Ingin membeli mobil lagi? (ya/tidak): ") :

  • Fungsi input() menampilkan pesan "Ingin membeli mobil lagi? (ya/tidak):" ke layar, meminta pemain untuk memberikan input.
  • Pemain diharapkan untuk mengetik "ya" jika ingin membeli mobil lagi, atau "tidak" jika ingin berhenti.
  • Input dari pemain (dalam bentuk string) akan dikembalikan oleh fungsi input().

  Jika masih ada mobil :

  • lanjut = input("Ingin membeli mobil lagi? (ya/tidak): ") : Meminta input dari pemain apakah mereka ingin membeli mobil
  • else: print("Semua mobil telah terjual!") : Berfungsi sebagai penanda akhir permainan. Ini memberi tahu pemain bahwa semua mobil telah terjual dan tidak ada lagi yang bisa dibeli. Pesan ini ditampilkan ketika kondisi if dalam loop utama bernilai False, yang menandakan bahwa tidak ada lagi mobil yang tersedia dalam list mobil.

2. Kode Program Sederhana untuk Mengelola Produk Katalog

  • def tampilkan_katalog(katalog): : Mendefinisikan fungsi tampilkan_katalog yang menerima satu argumen katalog (dictionary).
  • """Menampilkan katalog produk.""" : Docstring yang menjelaskan fungsi tampilkan_katalog.
  • if not katalog: : Memeriksa apakah dictionary katalog kosong.
  • print("Katalog kosong.") : Jika katalog kosong, cetak pesan "Katalog kosong."
  • return : Jika katalog kosong, maka akan keluar dari fungsi.
  • print("Katalog Produk:") : Jika katalog tidak kosong, maka akan di cetak judul "Katalog Produk:".
  • for kode, produk in katalog.items(): : Loop melalui setiap pasangan kunci-nilai (kode produk dan detail produk) dalam dictionary katalog menggunakan items().
  • print(f"{kode}: {produk['nama']} - Harga: {produk['harga']}") : Cetak informasi produk (kode, nama, dan harga) menggunakan f-string.
  • def tambah_produk(katalog): : Mendefinisikan fungsi tambah_produk yang menerima satu argumen katalog.
  • """Menambahkan produk baru ke katalog.""" : Docstring yang menjelaskan fungsi tambah_produk
  • kode = input("Masukkan kode produk: ") : Meminta input kode produk dari pengguna dan menyimpannya dalam variabel kode.
  • nama = input("Masukkan nama produk: ") : Meminta input nama produk dari pengguna dan menyimpannya dalam variabel nama.
  • harga = float(input("Masukkan harga produk: ")) : Meminta input harga produk dari pengguna, mengonversinya ke tipe data float, dan menyimpannya dalam variabel harga.
  • katalog[kode] = {"nama": nama, "harga": harga} : Menambahkan produk baru ke dictionary katalog dengan kode sebagai kunci dan dictionary berisi nama dan harga sebagai nilai.
  • print(f"Produk {nama} telah ditambahkan.") : Cetak pesan konfirmasi bahwa produk telah ditambahkan.
  • def hapus_produk(katalog): : Mendefinisikan fungsi hapus_produk yang menerima satu argumen katalog.
  • """Menghapus produk dari katalog.""" : Docstring yang menjelaskan fungsi hapus_produk.
  • kode = input("Masukkan kode produk yang ingin dihapus: ") : Meminta input kode produk yang ingin dihapus dari pengguna dan menyimpannya dalam variabel kode.

Kategori

  • Masih Kosong

Blogroll

  • Masih Kosong