Laporan Praktikum Pemrograman Kompuer 08
Laporan Praktikum Pemrograman Kompuer 08
1/21/2019 Lap08-PPK-46012
Laporan Praktikum 08
Praktikum Pemrograman Komputer
Struktur Bercabang
Semester Gasal 2018/2019
Persiapan
1. Jika nama dokumen ini masih Lap0 -PPK- maka klik-lah pada nama tersebut dan
gantilah bagian dengan Nomor Induk Fakultas anda (NIF: 5 angka).
2. Jalankanlah sel di bawah ini dengan menekan kombinasi-tombol [Ctrl-Enter] dan jawablah
dua pertanyaan terkait identitas anda.
In [ ]:
⚙ Pada sel di bawah ini, susunlah program Python lengkap yang dapat membantu seorang
guru/dosen untuk melakukan konversi nilai menjadi marka dari suatu kuis dengan aturan:
Nilai Marka
5 A
4 B
3 C
2 D
1 E
0 K
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 1/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
Ketika program ini dijalankan, pengguna guru/dosen cukup memasukkan nilai (bilangan) seperti
pada kolom kiri tabel di atas dan progam menampilkan marka (huruf) yang sesuai seperti pada
kolom kanan tabel di atas.
In [ ]:
marka = ['A','B','C','D','E','K']
if nilai == :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah A
elif nilai == :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah B
elif nilai == :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah C
elif nilai == :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah D
elif nilai == :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah E
elif nilai == 0 :
print 'Nilai yang Anda masukkan adalah',nilai,'Maka hasil konversinya adalah K
else:
print 'Maaf, nilai yang Anda masukkan salah'
⚙ Pada sel di bawah ini, susunlah program Python lengkap yang dapat membantu seorang
guru/dosen untuk melakukan konversi rentang nilai menjadi marka dari suatu ujian dengan aturan:
Rentang Marka
90 - 100 A
80 - 89 A/B
70 - 79 B
60 - 69 B/C
50 - 59 C
40 - 49 C/D
30 - 39 D
0 - 29 E
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 2/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
Ketika program ini dijalankan, pengguna guru/dosen cukup memasukkan suatu nilai di dalam salah
satu rentang seperti pada kolom kiri tabel di atas dan program menampilkan marka yang sesuai
seperti pada kolom kanan tabel di atas.
In [ ]:
marka = ['A','A','A/B','B','B/C','C','C/D','D','E','E','E']
if 0<=nilai< 00 :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah A
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah A/
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah B
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah B/
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah C
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah C/
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah D
elif 0<=nilai<= :
print 'Nilai yang Anda masukkan adalah',nilai,'maka hasil konversinya adalah E
else:
print 'Maaf, nilai yang Anda masukkan salah'
1/21/2019 Lap08-PPK-46012
2. Jika bulan dari hari tersebut adalah setelah Februari maka sesuaikan nomorHari (yang
diperoleh pada langkah 1) dengan mengurangkan
(4 × bulan + 23) / 10
3. Jika tahun dari hari tersebut adalah tahun kabisat dan hari tersebut ternyata adalah setelah 29
Februari maka sesuaikan nomorHari
(yang diperoleh pada langkah 2) dengan menambahkan
1.
⚙ Pada sel di bawah ini, susunlah program Python lengkap yang menampilkan nomor hari dari suatu
hari yang diberikan pengguna program. Pada awal pelaksanaan program, pengguna diminta untuk
memberikan tanggal, bulan dan tahun dari hari yang ingin ditentukan nomornya.
Petunjuk: Untuk menentukan apakah tahun dari hari yang ingin ditentukan nomornya adalah tahun
kabisat maka manfaatkan program TahunKabisat.py yang telah anda buat pada Kerja #1 dalam
berkas Lab0 -PPK- .ipynb .
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 4/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
In [ ]:
tanggal = int input 'Masukkan tanggal yang Anda inginkan antara sampai : '
bulan = int input 'Masukkan bulan yang Anda inginkan antara sampai : '
tahun = int input 'Masukkan tahun yang Anda inginkan : '
if bulan== :
nomor = * bulan - + tanggal
if tahun% 00 == 0:
if bulan== :
if tanggal> :
nomor = 'Maaf, tanggal Anda tidak dapat diubah karena bulan Februari ha
else:
nomor = * bulan - + tanggal
if bulan> :
nomor = * bulan - + tanggal - *bulan+ // 0 +
elif tahun% 00 != 0 and tahun% 00 == 0:
if bulan== :
if tanggal> :
nomor = 'Maaf, tanggal Anda tidak dapat diubah karena bulan Februari ha
else:
nomor = * bulan- + tanggal
if bulan> :
nomor = * bulan- + tanggal - *bulan+ // 0
elif tahun% 00 != 0 and tahun% 00 != 0 and tahun% == 0:
if bulan== :
if tanggal> :
nomor = 'Maaf, tanggal Anda tidak dapat diubah karena bulan Februari ha
else:
nomor = * bulan- + tanggal
if bulan> :
nomor = * bulan- + tanggal - *bulan+ // 0 +
else:
if bulan== :
if tanggal> :
nomor = 'Maaf, tanggal Anda tidak dapat diubah karena bulan Februari ha
else:
nomor = * bulan- + tanggal
if bulan> :
nomor = * bulan- + tanggal - *bulan+ // 0
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 5/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
⚙ Pada sel di bawah ini, susunlah program Python grafis yang lengkap bernama SkorPanahan.py
yang mencatat skor dari permainan panahan. Untuk menyusun program ini:
Manfaatkan program SasaranPanahan.py yang pernah anda buat pada Kerja #1 dalam
berkas Lab0 -PPK- .py untuk menampilkan gambar sasaran panahan di dalam suatu
jendela grafis.
Berikan pengguna program 5 kali kesempatan untuk memanah dengan menggunakan klik dari
tetikusnya. Setiap kali pengguna memanah, program akan mencatat lokasi tempat
menancapnya anak-panah pada sasaran, yang tidak lain adalah posisi dari klik tetikus.
Tentukan dan tampilkan skor dari masing-masing kesempatan memanah.
Hitung dan tampilkan total skor pada akhir 5 kali kesempatan memanah.
Petunjuk:
1. Jangan lupa menyertakan modul graphics.py di dalam satu folder/direktori yang sama
dengan notebook Lab ini.
2. Meski sasaran panahan dan lokasi anak-panah digambar di dalam jendela grafis, skor dan total
skor dapat ditampilkan pada bagian teks keluaran dari program ini.
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 6/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
In [ ]:
point = 0
for i in range :
titiksasaran = jend.getMouse
x = titiksasaran.getX
y = titiksasaran.getY
A = x ** + y ** ** 0.
if A<= :
q =
print 'Skor Point =', q
elif <A<= :
q =
print 'Skor Point =', q
elif <A<= :
q =
print 'Skor Point =', q
elif <A<= :
q =
print 'Skor Point =', q
elif <A<= :
q =
print 'Skor Point =', q
else:
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 7/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
q = 0
print 'Skor Point =', q
point = point + q
Skor Point =
Skor Point =
Skor Point =
Skor Point =
Skor Point =
Maka total point yang Anda peroleh :
⚙ Berdasarkan menu pilihan di atas, pada sel di bawah ini buatlah program Python lengkap yang
melakukan langkah-langkah berikut ini:
Menampilkan semua pilihan dalam menu dengan setiap pilihan didahului oleh huruf besar
(kapital) yang berurutan.
Menunggu pengguna program hingga ia menentukan pilihannya dengan menekan tombol
papan-ketik yang sesuai dengan huruf besar di depan pilihannya.
Menampilkan suatu string yang mewakili tindakan yang (seakan-akan) dilakukan program sesuai
dengan pilihan pengguna.
Jika pengguna belum memilih berhenti maka program kembali menampilkan menu pilihan dan
menunggu pengguna menentukan pilihan berikutnya.
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 8/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
Pilihan anda? B
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 9/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
In [ ]:
x =
while x > 0:
pilihmenu = input 'Masukkan menu yang akan Anda pilih : '
pilihan = pilihmenu.upper
if pilihan == 'A':
print ' Tindakan Program : Pengambilan data dari dalam berkas.'
elif pilihan == 'B':
print 'Tindakan Program : Penampilan grafik dari data.'
elif pilihan == 'C':
print 'Tindakan Program : Perhitungan rerata dan simpangan baku dari data.
elif pilihan == 'D':
print 'Tindakan Program : Penggolongan data berdasarkan kelas-kelas dari ni
elif pilihan == 'E':
print 'Tindakan Program : Penampilan histogram dari data.'
elif pilihan == 'F':
print 'Tindakan Program : Pembuatan model matematika dari data.'
elif pilihan == 'G':
print 'Tindakan Program : Pengambilan kesimpulan berdasarkan model.'
elif pilihan == 'H':
print 'Tindakan Program : Penjelasan tentang program atau bantuan pemakaian
elif pilihan == 'I':
x = 0
print 'Tindakan Program : Berhenti menggunakan program.'
else:
print 'Maaf pilihan Anda tidak ada, mohon kembali memilih menu lainnya.'
print '\nTerimakasih'
Menu Pilihan
------------
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 10/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)
lOMoARcPSD|5982412
1/21/2019 Lap08-PPK-46012
Terimakasih
http://localhost:8888/notebooks/Downloads/Lap08-PPK-46012.ipynb 11/11
Downloaded by Teknik Fisika- Multazam Hanifurrahman (multazamh363@mail.ugm.ac.id)