Kelas 17.1C.04
Anggota kelompok 2 :
· Muhammad Adil Saputra
· Amrizal
Dasar Python – Percabangan
Percabangan adalah proses penentuan keputusan atau dalam Bahasa inggrisnya disebut Conditional Statement. Dalam Bahasa program python, statement yang digunakan adalah :
1. if = Kondisi utama.
2. elif = Kondisi opsional atau kondisi ke-dua hingga ke-x.
3. else = Statement yang kondisinya tidak ada yang terpenuhi.
Percabangan (If – Else dan Elif)
Blok kode if pada python seperti berikut ini :
if variabel:
statement()
Bagian variable menunjukkan sebuah variable atau sebuah nilai yang ingin digunakan, sedangkan statement() yaitu perintah yang akan di eksekusi oleh komputer.
Blok if-else setidaknya memiliki dua cabang, contoh :
#Memasukkan input numerik bilangan bulat dengan fungsi int()
umur = int(input("Masukkan umur anda : "))
#Mengeksekusi string dan input dengan fungsi print()
print("Umur anda ", umur, "\n")
#Menggunakan blok if dan else 2 cabang
if umur >= 18:
print("Umur anda cukup, silahkan lanjutkan proses anda.")
else:
print("Maaf, umur anda tidak cukup. Silahkan kembali lagi nanti setelah umur anda cukup.")
Contoh di atas menggunakan :
· Menggunakan input numerik bilangan bulat menggunakan.
· Menggunakan fungsi print() untuk menampilkan string dan hasil dari input numerik sebelumnya.
· Menggunakan blok if dan else yang terdiri dari 2 cabang saja.
Bila ingin membuat cabang yang lebih dari 2 cabang, bisa memakai blok if-elif-else. Rule yang akan di gunakan contoh di bawah yaitu :
1. Tingkat S untuk nilai lebih dari 85 atau >= 85
2. Tingkat A untuk nilai lebih dari 70 dan kurang dari 85 atau >= 70
3. Tingkat B untuk nilai lebih dari 60 dan kurang dari 70 atau >= 60
4. Tingkat C untuk nilai lebih dari 49 dan kurang dari 60 atau >=49
5. Tingkat D untuk nilai kurang dari 49 menggunakan fungsi else
bb = int(input("Masukkan berat badan anda : "))
print("========================================================")
if bb >= 85:
print("Berat badan anda", bb, "KG diklasifikasikan di tingkat S\nKurangi berat badan anda yang berlebih untuk bentuk badan yang ideal.")
elif bb >= 70:
print("Berat badan anda", bb, "KG diklasifikasikan di tingkat A")
elif bb >= 60:
print("Berat badan anda", bb, "KG diklasifikasikan di tingkat B")
elif bb >= 49:
print("Berat badan anda", bb, "KG diklasifikasikan di tingkat rendah, yaitu tingkat C. \nMohon segera naikkan berat badan anda untuk bentuk badan yang ideal.")
else:
print("Berat badan anda dibawah angka normal dan di klasifikasikan di tingkat D, segera naikkan berat badan anda !")
print("========================================================")
Kenapa pakai elif ? Kenapa tidak pakai if saja ? Karena setiap membuat blok if, artinya hanya membuat satu percabangan. Dan pada program, pohon percabangan hanya selalu mengeluarkan kondisi yang telah terpenuhi. Jika ada lebih dari 1 kondisi yang terpenuhi, maka yang di eksekusi kondisi yang paling pertama.
Operator Operator Boolean
Pada percabangan, operator logika dan juga tipe data Boolean akan sangat sering digunakan. Berikut ini contoh operator keanggotaan :
#List yang tersedia di permrograman ini
siswa_kelas_17 = ["Alex", "Adil", "Amrizal", "Firdaus", "Daffa", "Firman"]
siswa_kelas_19 = ["Kurnia", "Fahmi", "Jericho", "Rista Aulia", "Rizky"]
pencarian_siswa = input("Masukkan nama siswa yang ingin di cari : ") #Fungsi untuk memerintah user memasukkan nilai
if (pencarian_siswa in siswa_kelas_17): #Kondisi pertama bila input menunjukkan anggota list siswa kelas 17.1C
print("Siswa yang bernama", pencarian_siswa, "berada di kelas 17.1C.04.")
elif (pencarian_siswa in siswa_kelas_19): #kondisi ke dua bila input menunjukkan anggota list siswa kelas 19.1C
print("Siswa yang bernama", pencarian_siswa, "berada di kelas 19.1C.04")
else: #Kondisi terakhir bila input tidak menunjukkan anggota list manapun
print("Siswa yang bernama", pencarian_siswa, "tidak ada di kelas 17.1C.04 maupun di kelas 19.1C.04.")
Percabangan Satu Baris
Di python kita bisa memakai if else dalam satu baris. Pada Bahasa program lain ini disebut dengan Ternary.
Percabangan Bertingkat
Sebuah istilah untuk if di dalam if. Berikut ini contoh dan penjelasannya :
#Perintah untuk user memasukkan input numerik bilangan bulat menggunakan fungsi integer
bb = int(input("Masukkan berat badan anda : "))
umur = int(input("Masukkan umur anda : "))
print("========================================================")
if bb >= 85: #Kondisi pertama, bila input untuk variabel bb (berat badan) menunjukkan angka nilai sesuai dengan parameter yang telah ditentukan
if umur >= 18: #kondisi lanjutan untuk input variabel umur yang sudah di tentukan sebelumnya
print("Berat badan kakak", bb, "KG diklasifikasikan di tingkat S\nKurangi berat badan anda yang berlebih untuk bentuk badan yang ideal.")
else: #kondisi lain bila input variabel umur dibawah parameter yang telah di tentukan
print("Berat badan adik", bb, "KG diklasifikasikan di tingkat S\nKurangi berat badan anda yang berlebih untuk bentuk badan yang ideal.")
elif bb >= 70:
if umur >= 18:
print("Berat badan kakak", bb, "KG diklasifikasikan di tingkat A")
else:
print("Berat badan adik", bb, "KG diklasifikasikan di tingkat A")
elif bb >= 60:
if umur >= 18:
print("Berat badan kakak", bb, "KG diklasifikasikan di tingkat B")
else:
print("Berat badan adik", bb, "KG diklasifikasikan di tingkat B")
elif bb >= 49:
if umur >= 18:
print("Berat badan kakak", bb, "KG diklasifikasikan di tingkat rendah, yaitu tingkat C. \nMohon segera naikkan berat badan anda untuk bentuk badan yang ideal.")
else:
print("Berat badan adik", bb, "KG diklasifikasikan di tingkat rendah, yaitu tingkat C. \nMohon segera naikkan berat badan anda untuk bentuk badan yang ideal.")
else:
if umur >= 18:
print("Berat badan kakak dibawah angka normal dan di klasifikasikan di tingkat D, segera naikkan berat badan anda !")
else:
print("Berat badan adik dibawah angka normal dan di klasifikasikan di tingkat D, segera naikkan berat badan anda !")
print("========================================================")
Perulangan For
Dengan perulangan, kita bisa mengeksekusi kode program berulang dengan jumlah yang bisa di tentukan. Perulangan for memiliki perbedaan dengan percabangan if else, yaitu bila percabangan, blok kode yang memenuhi kondisi tertentu hanya akan di eksekusi sekali saja, sedangkan perulangan ia akan di eksekusi berulang kali dengan jumlah yang bisa di tentukan atau selama suatu kondisi terpenuhi.
Perulangan For
For pada python memiliki perilaku yang berbeda dengan for di Bahasa program lainnya, karena pada python ia sangat berkaitan dengan data kolektif. Bila disbanding dengan Bahasa program lain, for pada python dikenal dengan foreach.
Syntax For memiliki 3 bagian penting, yaitu :
1. Sequence : sebuah nilai yang bersifat bisa di ulang – ulang.
2. Nilai : anggota item yang di ekstrak dari sequence.
3. Blok kode : kumpulan statement atau perintah yang akan di eksekusi secara berulang
For dengan List
Berikut ini contoh beserta penjelasan kodingannya :
#buat data list dengan indentasi yang sama seperti contoh dibawah ini
list_villa = [
"Villa Mawar", "Villa Melati", "Villa Kelapa", "Villa Anggrek",
"Villa Cemara", "Villa Mangga"
]
#buat sintaks fornya
for villa in list_villa:
print(villa)
Mengetahui Urutan Iterasi For dengan List
Bagaimana cara mengetahui urutan iterasi for dengan list ? Dengan menggunakan fungsi enumerate. Fungsi tersebut akan mengekstrak 2 buah nilai, yaitu :
1. Yang pertama adalah indeks, yaitu urutan iterasi yang ke sekian.
2. Item adalah anggota dari list tersebut.
Berikut contoh dan penjelasannya :
#Membuat data list terlebih dahulu dengan indentasi sebagai berikut
list_buah = [
"Kelapa", "Apel", "Mangga", "Manggis",
"Anggur", "Alpukat", "Pisang"
]
#Membuat sintaks for dengan fungsi enumerate
for b, buah in enumerate(list_buah):
print(b, buah)
Dengan fungsi enumerate() dan membuat variable list_buah menjadi sebuah parameter kita juga mengekstrak dua buah nilai yang kita beri nama b dan buah. Bisa di lihat terminal di atas kenapa urutannya di mulai dari angka nol ? Karena numerik angka awalnya dari 0, bukan dari satu.
For dengan Fungsi range()
Selain dengan list, kitajuga bisa menggunakan for dengan fungsi range(). Dengan fungsi range(), kita bisa melakukan perulangan dari 0 sampai kurang dari nilai range yang di definisikan. Misal range nya 10, maka hasil perulangan yang di dapatkan hanya dari 0 hingga 9 saja.
Kita juga bisa memulai range() dari selain 0, contohnya for x in range(197, 205). X nya adalah indeksnya 197 adalah awal perulangan ke sekiannya dan 205 adalah batas perulangannya. Lalu kita juga bisa mendefinisikan kelipatannya. Contohnya for x in range(197, 205, 3). Sama seperti sebelumnya hanya angka 3 ini mewakili kelipatannya.
For dengan Tuple
Tuple merupakan tipe data yang bersifat iterable, sehingga kita juga bisa mendefinisikannya sebagai objek perulangan menggunakan for. Contoh :
For dengan String
String pun sama bersifat iterable, sehingga bisa didefinisikan objek perulangan.
Break dan Continue
Di python kita bisa menginterupsi dan juga skip suatu iterasi pada perulangan. Terdapat 2 perintah yang bisa di pakai yaitu :
· break untuk memberhentikan sebuah perulangan.
· continue untuk melompat ke iterasi selanjutnya.
Pada saat i == x, perintah print(i) tak di eksekusi dan justru di skip ke iterasi selanjutnya atau memberhentikann suatu perulangan tergantung perintah yang di pakai.
For else
Perulangan for jika di tambahkan blok else, maka perintah yang ada pada blok else hanya akan di eksekusi Ketika perulangan selesai tanpa masalah. Contoh :
#Pertama buat list yang diinginkan
list_buku = ["Buku MTK", "Buku Biologi", "Buku Geografi", "Buku Fisika"]
list_alat = ["Penggaris", "Penghapus", "Pensil", "Ballpoint"]
#Buat statement list yang tersedia agar user tahu list apa yang bisa di panggil
print("=====================")
print("Berikut ini list data barang yang ada di toko ini :")
print("1. List Buku")
print("2. List Alat")
print("=====================")
#Buat statement pertanyaan list apa yang ingin di tampilkan menggunakan fungsi integer
a = int(input("Masukkan nomor list bila ingin melihat list barang : "))
#Buat blok if for dan else menggunakan operator perbandingan
"""
Jika ingin menampilkan list buku, buat blok kodingan if for dan else seperti ini
dan jangan lupa gunakan operator perbandingan == karena blok if yang dipakai di kodingan ini
tidak memerlukan batas parameter.
"""
if a == 1:
for buku in list_buku:
print(buku)
else:
print("Tidak ada item lagi yang tersedia.")
elif a == 2: #Sama seperti cara menampilkan list buku, buat blok kode if for dan else seperti di atas
for alat in list_alat:
print(alat)
else:
print("Tidak ada list item lagi yang tersedia.")
else: #Yang terakhir buat blok kode else bila user memasukkan input yang tak disediakan
print("Mohon masukkan nomor list yang tersedia untuk saat ini.")
For Else + Break
Jika blok fungsi for dan else dengan break maka blok else akan dieksekusi jika perintah break tidak digunakan. Kita bisa memanfaatkan for else + break untuk pencarian sebuah item pada anggota list.
Contoh kita gunakan kodingan sebelumnya namun hanya memakai satu list, mengurangi beberapa fungsi dan mengganti beberapa fungsi :
list_buku = ["Buku MTK", "Buku Biologi", "Buku Geografi", "Buku Fisika"]
print("=====================")
print("Berikut ini nama barang yang ada di toko ini :")
print(list_buku)
print("=====================")
a = input("Masukkan nama barang untuk mencari nomor barang : ")
for x, buku in enumerate(list_buku):
if buku.lower() == a.lower():
print("Barang yang anda cari berada pada indeks nomor", x)
break
else:
print("Tidak ada item yang tersedia.")
Program di atas akan meminta user untuk memasukkan input nama barang yang sebelumnya sudah di tampilkan menggunakan fungsi print(). Lalu kita menggunakan fungsi variable.lower() yang gunanya untuk mengubah input menjadi case insensitive agar user lebih mudah memasukkan input.
Perulangan While
Apa Itu Perulangan While Pada Python
Perulangan while pada python adalah proses pengulangan suatu blok kode program selama sebuah kondisi terpenuhi. Perulangan yang bersifat indefinite atau tidak pasti atau bahkan tak terbatas. Blok kode akan terus menerus di ulang selama suatu kondisi terpenuhi. Jika suatu kondisi ternyata tidak terpenuhi pada iterasi ke 10, maka perulangan akan berenti.
Penulisan Sintaks While
Kita bisa menulis sintaks while seperti ini :
while (kondisi):
#blok kode yang akan di loop
Terdapat 3 komponen utama :
1. Fungsi while
2. Yang kedua adalah (kondisi): ini bisa berupa ekspresi logika.
3. Blok kode yang akan di ulang ulang.
Perulangan Tanpa Batas
Perulangan while sangat berkaitan dengan variable Boolean atau logical statement. Karena penentuan kapan suatu blok kode yang akan di ulang ulang di tinjau dari true or false dari pernyataan logika.Jika suatu kondisi itu selalu benar, maka perulangan pun akan selalu di eksekusi tanpa henti.
Contoh :
while (10 + 10 == 20):
print("Hello world !")
Jika kodingan di atas di run maka system akan menampilkan string hello world tanpa henti. Kita bisa berhenti paksa kodingan tersebut dengan menekan tombol ctrl + c. Kenapa perulangan blok kode di atas di eksekusi terus menerus ? Karena kita memerintah computer untuk menulis kalimat tersebut selama kondisi satu ditambah dua sama dengan tiga.
Perulangan While for + range
Bagaimana caranya bisa memberhentikan perulangan while ? Buat kondisinya bersifat dinamis atau bisa berubah ubah. Contoh :
x = 1
while x <= 10:
print(x)
x +=1
Penjelasan :
1. Melakukan perulangan selama variable x kurang dari atau sama dengan 5
2. Setiap iterasi system akan menampilkan nilai dari x
3. Pada tiap iterasi system akan menambahkan nilai x dengan angka 1
Contoh Perulangan While untuk List
Untuk menampilkan item pada suatu list, perhatikan contoh berikut :
list_alat = ["Penggaris", "Penghapus", "Pensil", "Ballpoint"]
x = 0
while x < len(list_alat):
print(list_alat[x])
x += 1
Atau bisa menggunakan fungsi
list_alat = ["Penggaris", "Penghapus", "Pensil", "Ballpoint"]
while list_alat:
print(list_alat.pop(0))
Contoh Perulangan while dengan break
Perintah dari break saam dengan perintah continue namun perulangan akan dihentikan secara paksa bila perintah break dieksekusi. Perhatikan contoh beserta penjelasan di bawah ini :
list_buku = ["Buku MTK", "Buku Biologi", "Buku Geografi", "Buku Fisika"]
print("=====================")
print("List Buku : ", list_buku)
print("=====================")
a = input("Masukkan nama buku yang tersedia di list : ")
x = 0
while x < len(list_buku):
if list_buku[x].lower() == a.lower():
print(a, "ditemukan di indeks nomor", x)
break
print('Bukan', list_buku[x])
x += 1
Perulangan Bersarang / Bertingkat
Perulangan bersarang atau bertingkat adalah sebuah perulangan yang berada atau terletak di dalam perulangan yang lain. Contoh :
barang = input("Masukkan Nama Barang : ")
harga = input("Masukkan Harga Barang Yang Dibeli : Rp.")
jum = input("Jumlah Barang Yang Ingin Dibeli : ")
print("Barang Yang Di Beli :", barang)
print("Jumlah Barang Yang Ingin Dibeli :", jum)
print("Harga Barang : Rp.", harga)
print("Jumlah Harga : Rp.", int(harga) * int(jum), "\n")
pokok = ["Beras", "Jagung", "Gandum", "Kentang", "Oat"]
kalori = ["Daging Ayam", "Daging Sapi", "Daging Kuda", "Daging Unta"]
protein = ["Bayam", "Sawi", "Selada Air", "Brokoli", "Kembang Kol", "Asparagus"]
buah = ["Apel", "Belimbing", "Ceri", "Durian", "Jambu Air", "Kelapa"]
susu = ["Susu Almond", "Susu Kedelai", "Susu Kambing", "Susu Sapi"]
bonus = [pokok, kalori, protein, buah, susu]
print("Daftar Barang Yang di Bonuskan")
print("==================================================================")
for x in bonus:
print(x)
print("==================================================================")
print('\n')
if barang in pokok:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in kalori:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in protein:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in buah:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in susu:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
else:
print("Selamat menikmati ! Jangan lupa datang kembali !")
next = 'y'
count = 0
while next == 'y':
count += 1
next = input("Apakah anda ingin mengulangi transaksi ? y/n ")
if next == 'n':
break
print('\n')
barang = input("Masukkan Nama Barang : ")
harga = input("Masukkan Harga Barang Yang Dibeli : Rp.")
jum = input("Jumlah Barang Yang Ingin Dibeli : ")
print("Barang Yang Di Beli :", barang)
print("Jumlah Barang Yang Ingin Dibeli :", jum)
print("Harga Barang : Rp.", harga)
print("Jumlah Harga : Rp.", int(harga) * int(jum), "\n")
if barang in pokok:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in kalori:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in protein:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in buah:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
elif barang in susu:
print("Selamat, anda mendapatkan bonus !")
print("Silahkan ambil satu barang yang sama dengan yang anda beli. Selamat Menikmati !!")
else:
print("Selamat menikmati ! Jangan lupa datang kembali !")
Komentar
Posting Komentar