Penggunaan Struktur Data Dalam Pemograman Python
Nama:Dion Eka Putra Masaguni
NIM :412424024
Prodi:Matematika
Mata Kuliah:Algoritma Dan Pemograman
Pengertian Struktur Data
Struktur data Python pada dasarnya adalah wadah untuk berbagai jenis data. Empat jenis utama adalah List, set, tuple, dan Dictionary. Struktur data Python mengatur dan mengelompokkan data menurut jenisnya. Ada empat jenis utama struktur data Python.
Contoh Penggunaan List Dalam Pemograman Python:
1. Program Mengecek Angka Genap Menggunakan Struktur Data List
Penjelasan:
- def cek_genap(angka):: Mendefinisikan fungsi bernama cek_genap yang menerima satu argumen angka. Fungsi ini mengembalikan True jika angka genap, dan False jika ganjil.
- angka = []: Membuat list kosong bernama angka untuk menyimpan angka-angka yang diinputkan pengguna.
- while True:: Looping ini akan berjalan terus menerus sampai pengguna memasukkan kata "selesai".
- input_str = input(...): Meminta input dari pengguna dan menyimpannya dalam variabel input_str.
- if input_str.lower() == "selesai":: Memeriksa apakah input dari pengguna adalah "selesai" (tanpa memperhatikan huruf besar/kecil). Jika ya, loop akan dihentikan dengan break.
- try...except: Blok ini digunakan untuk menangani error jika pengguna memasukkan input yang bukan angka. Jika input bukan angka, pesan error akan ditampilkan.
- angka.append(int(input_str)): Jika input adalah angka, maka akan dikonversi ke integer dan ditambahkan ke list angka.
- angka_genap = []: Membuat list kosong bernama angka_genap untuk menyimpan angka-angka genap.
- for a in angka:: Looping ini akan memproses setiap angka dalam list angka.
- if cek_genap(a):: Memanggil fungsi cek_genap untuk memeriksa apakah angka tersebut genap.
- angka_genap.append(a): Jika angka genap, maka akan ditambahkan ke list angka_genap.
- print("List angka genap:", angka_genap): Mencetak list angka_genap yang berisi angka-angka genap yang telah diinputkan
misalkan kita menginput 4 6 7 3 2
Oke, mari kita telusuri langkah demi langkah bagaimana program bekerja ketika Anda memasukkan angka 4, 6, 7, 3, 2, dan kemudian "selesai":
Inisialisasi:
- Program dimulai dengan mendefinisikan fungsi cek_genap yang akan digunakan untuk memeriksa apakah suatu angka genap atau tidak.
- Sebuah list kosong bernama angka dibuat untuk menyimpan angka-angka yang akan diinput.
Looping Input:
- Program memasuki loop while True, yang akan terus berjalan sampai pengguna memasukkan "selesai".
- Program meminta input pertama: Anda memasukkan 4.
- Input tersebut diubah menjadi integer dan ditambahkan ke list angka.
- Loop berlanjut dan meminta input berikutnya. Anda memasukkan 6, 7, 3, dan 2. Semua angka ini diproses dan ditambahkan ke list angka dengan cara yang sama.
- Akhirnya, Anda memasukkan "selesai". Program mendeteksi ini dan keluar dari loop while.
Pemrosesan Angka Genap:
- Sebuah list kosong bernama angka_genap dibuat untuk menyimpan angka-angka genap.
- Program memasuki loop for yang akan memproses setiap angka dalam list angka.
- Untuk setiap angka, program memanggil fungsi cek_genap untuk menentukan apakah angka tersebut genap.
- Jika cek_genap mengembalikan True (angka genap), angka tersebut ditambahkan ke list angka_genap.
Output:
- Setelah semua angka dalam list angka diproses, program mencetak list angka_genap yang berisi: [4, 6, 2].
Ringkasan:
Program ini pada dasarnya meminta Anda untuk memasukkan angka-angka secara terus menerus. Setiap angka yang Anda masukkan akan disimpan dalam sebuah list. Setelah Anda selesai memasukkan angka (dengan mengetik "selesai"), program akan memeriksa setiap angka dalam list tersebut. Angka-angka yang genap akan dipisahkan dan disimpan dalam list baru. Akhirnya, program akan menampilkan list yang berisi angka-angka genap tersebut.
Dalam kasus ini, karena Anda memasukkan angka 4, 6, 7, 3, 2, dan "selesai", program akan mengidentifikasi 4, 6, dan 2 sebagai angka genap dan menampilkannya dalam output: [4, 6, 2].
2. Program Menentukan Data Mahasiswa Menggunakan Struktur Data Dictionary
Penjelasan:
- data_mahasiswa: Ini adalah sebuah dictionary yang menyimpan data beberapa mahasiswa.Setiap mahasiswa diidentifikasi oleh NIM (Nomor Induk Mahasiswa) yang bertindak sebagai kunci (key) dalam dictionary.Nilai (value) yang terkait dengan setiap NIM adalah dictionary lain yang berisi informasi detail mahasiswa seperti nama, jurusan, dan ipk.
- def tampilkan_data(nim): Ini adalah definisi dari sebuah fungsi bernama tampilkan_data.Fungsi ini menerima satu parameter, yaitu nim, yang merupakan NIM mahasiswa yang datanya ingin ditampilkan.
- if nim in data_mahasiswa::Baris ini merupakan pernyataan kondisional.Ia memeriksa apakah nim yang diberikan ada sebagai kunci di dalam dictionary data_mahasiswa.Jika nim ditemukan (artinya mahasiswa dengan NIM tersebut ada dalam data), blok kode di bawah if akan dijalankan.
- mahasiswa = data_mahasiswa[nim]: Jika nim ditemukan, baris ini akan mengambil data mahasiswa yang sesuai dengan nim dari dictionary data_mahasiswa.Data mahasiswa tersebut (yang berupa dictionary) kemudian disimpan dalam variabel mahasiswa.
- print(f"NIM: {nim}") dan baris-baris print selanjutnya: Baris-baris ini akan mencetak informasi detail mahasiswa ke layar.Mereka menggunakan f-string untuk memformat output agar lebih mudah dibaca.Informasi yang dicetak meliputi NIM, nama, jurusan, dan ipk mahasiswa.
- else:Blok kode di bawah else akan dijalankan jika nim tidak ditemukan dalam dictionary data_mahasiswa (artinya mahasiswa dengan NIM tersebut tidak ada dalam data).
- print(f"Data mahasiswa dengan NIM {nim} tidak ditemukan."): Baris ini akan mencetak pesan ke layar yang menginformasikan bahwa data mahasiswa dengan NIM yang diberikan tidak ditemukan dalam data.
contoh
Data Mahasiswa diatas adalah hasil output dari program yang berjalan berdasarkan pemanggilan fungsi "tampilkan_data" yang saya isi sesuai dengan data yang diinginkan, sebagai contohnya saya memanggil fungsi dengan menginput NIM002
berikut penjelasannya:
- Fungsi tampilkan_data("NIM003") dipanggil.
- Kode program memeriksa apakah "NIM003" ada dalam dictionary data_mahasiswa.
- Karena "NIM003" ada sebagai kunci dalam dictionary, program mengambil data mahasiswa yang terkait dengan "NIM003".
- Program kemudian mencetak informasi mahasiswa tersebut ke layar, yaitu:
- NIM: NIM003
- Nama: Cindy
- Jurusan: Matematika
- IPK: 3.8
Output yang ditamplkan menunjukkan bahwa program berhasil menemukan data mahasiswa dengan NIM "NIM003" dan menampilkan informasinya dengan benar.
PENGGUNAAN WHILE DALAM PROGRAM PYTHON
Nama:Dion Eka Putra Masaguni
NIM :412424024
Prodi:Matematika
Mata Kuliah:Algoritma Dan Pemograman
Pengertian While
While adalah sebuah struktur kontrol dalam pemrograman yang digunakan untuk melakukan pengulangan (looping) selama suatu kondisi tertentu masih bernilai benar (true). Dalam konteks ini, selama kondisi yang diberikan tetap terpenuhi, blok kode di dalam while akan terus dieksekusi, dan akan berhenti sampai kondisi bernilai salah(false).
While Loop PythonPerulangan while memiliki sintaks 'while condition: do_stuff' di mana 'do_stuff' biasanya ditempatkan pada baris berikutnya dan diberi indentasi. Perulangan ini mengeksekusi pernyataan dalam 'do_stuff' berulang kali selama 'condition' bernilai true.
Contonh penggunaan While Dalam Pemograman Python
Program Mentukan Bilangan Prima
Input:
- bilangan = int(input("Masukkan bilangan bulat: ")):Baris ini meminta pengguna untuk memasukkan sebuah bilangan bulat.
- input() adalah fungsi bawaan Python yang mengambil input dari pengguna sebagai string (teks).
- int() mengubah input dari string menjadi bilangan bulat.
- Nilai yang dimasukkan pengguna disimpan dalam variabel bilangan.
Inisialisasi:
- i = 2:Variabel i diinisialisasi dengan nilai 2. Variabel ini berfungsi sebagai calon pembagi untuk mengecek apakah bilangan adalah bilangan prima.
Loop while:
- while i * i <= n:Loop ini akan berjalan selama kuadrat dari i ( i * i ) kurang dari atau sama dengan nilai n (yang merupakan bilangan).
- Loop ini akan berhenti ketika i * i lebih besar dari bilangan.
Di dalam loop:
- if n % i == 0:: Mengecek apakah bilangan habis dibagi oleh i. Jika ya, berarti bilangan bukan prima (return False).
- i = i + 1: Jika bilangan tidak habis dibagi i, maka nilai i ditambah 1 untuk mencoba pembagi berikutnya.
Output:
if is_prime(bilangan):
- Kode ini memanggil fungsi is_prime dengan bilangan sebagai argumen.
- Jika fungsi mengembalikan True (bilangan prima), maka program akan mencetak: f"{bilangan} adalah bilangan prima".
else:
- Jika fungsi mengembalikan False (bukan bilangan prima), maka program akan mencetak: f"{bilangan} bukan bilangan prima"
Contoh lainnya
Fungsi jumlah_digit(n):
- Program dimulai dengan mendefinisikan sebuah fungsi bernama jumlah_digit. Fungsi ini menerima satu input, yaitu bilangan bulat yang akan dihitung jumlah digitnya (n).
Inisialisasi jumlah = 0:
- Di dalam fungsi, sebuah variabel bernama jumlah diinisialisasi dengan nilai 0. Variabel ini akan digunakan untuk menyimpan total jumlah digit.
Perulangan while n > 0:
- Selanjutnya, program masuk ke dalam perulangan while. Perulangan ini akan terus berjalan selama nilai n (bilangan input) masih lebih besar dari 0.
jumlah += n % 10:
- Di dalam perulangan, program menghitung sisa bagi dari n dibagi 10 (n % 10). Sisa bagi ini akan menghasilkan digit terakhir dari bilangan n.
- Digit terakhir ini kemudian ditambahkan ke variabel jumlah.
n //= 10:
- Setelah digit terakhir ditambahkan ke jumlah, digit terakhir tersebut dihilangkan dari bilangan n menggunakan pembagian bulat (n //= 10).
return jumlah:
- Setelah perulangan selesai (artinya semua digit sudah diproses), fungsi jumlah_digit akan mengembalikan nilai jumlah yang berisi total jumlah digit.
Input Pengguna:
- Program meminta pengguna untuk memasukkan sebuah bilangan bulat menggunakan input(). Input tersebut kemudian diubah menjadi tipe data integer menggunakan int().
Memanggil Fungsi dan Menampilkan Hasil:
- Program memanggil fungsi jumlah_digit dengan bilangan yang dimasukkan pengguna sebagai argumen.
- Hasil dari fungsi (jumlah digit) disimpan dalam variabel hasil.
- Terakhir, program menampilkan jumlah digit tersebut ke layar.