Kelompok6 - Sayid Muhammad Fikri Zidan - 07181072 [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

Laporan Praktikum Algoritma dan Pemrograman Ekspresi Boolean , Operator Komparasi dan Eksekusi Kondisional



Asisten : Dimas Saputra



10171018



Muhammad Yudistira P



10171047



Disusun Oleh : Ema Rahmah Windasari



02181015



Muhammad Rizky Fadillah



04181061



Sayid Muhammad Fikri Zidan



07181072



Dinda Aprelia Isabella



10181017



27 Februari 2019



Dasar Teori 1. Ekspresi Boolean dan Operator Komparasi EKSPRESI Ekspresi adalah transformasi nilai menjadi keluaran yang dilakukan melalui suatu perhitungan (komputasi). Ekspresi terdiri atas operand dan operator, contoh ekspresi: “a + b”.Hasil Evaluasi dari sebuah Ekpresi adalah nilai yang sesuai dengan type operand yang dipakai. MACAM – MACAM EKPRESI Ø Ekspresi aritmatika • Ekspresi yang baik operand-nya bertipe numerik dan hasilnya juga bertipe numerik. • Ekspresi aritmatika memakai operator aritmatika.



Pada ekspresi aritmetik terdapat 2 buah operator yaitu : a. Operator biner, yaitu ekspresi yang operatornya membutuhkan 2 buah operand. Contoh a + b b. Operator Uner, yaitu “-” atau operator yang punya 1 operand contoh “-2”



Contoh 2. (Penulisan ekspresi dengan notasi algoritma) T = 5/9 * (c + 32) 1



Z = (2*x + y) / (5 * w) Y = 5((a+b) / (c*d) + m (p + q)) Ø Ekspresi Perbandingan/ Relasional Ekspresi relasional adalah ekspresi dengan operator , ≥, =, dan ≠, not, and, or dan xor dengan menghasilkan nilai bertipe boolean (true atau false). Biasanya ekspresi Relasional disebut ekspresi boolean. Ø Ekspresi Logika (Menggunakan Operator Boolean) sebuah perintah yang akan mengeksekusi suatu perintah apabila kondisi tertentu terpenuhi. Operator boolean digunakan untuk menghubungkan dua buah ekspresi logika. Pada kesempatan ini operator boolean yang akan dibahas adalah AND dan OR. Sum of Product (SOP) adalah metode untuk menentukan ekpresi boolean atau gerbang logika yang sudah diketahui tabel kebenarannya. Caranya adalah dengan menyatukan pada gerbang (Sum /OR) yang merupakan hasil dari perkalian (Product /AND). Untuk lebih jelasnya berikut contoh penggunaan ekspresi boolean SOP. 1. Diketahui tabel kebenaran dengan input A, B dan C. Maka tentukan ekspresi boolean dan gerbang logikanya.



Jawab: A B C



Y



0



0



0



0



0



0



1



1



0



1



0



0 2



0



1



1



0



1



0



0



0



1



0



1



0



1



1



0



0



1



1



1



1



a) Untuk menentukan ekspresi boolean, kita soroti output tabel kebenaran yang mempunyai nilai output 1. Maka ekspresi boolean dengan metode SOP adalah dengan mengalikan (PRODUCT / AND) terlebih dahulu, selanjutnya baru dijumlahkan (SUM / OR). Sebelum dikalikan, nilai logika inputnya harus bernilai 1, apabila bernilai 0, maka diinversekan terlebih dahulu. Dan ini adalah ekpresi boolean pada tabel kebenaran diatas. Y = (invA.invB.C) + (A.B.C)



b) Untuk gerbang logika, kita dapat menentukannya dari ekpresi boolean yang telah didapat, berikut adalag gerbang logikanya.



3



2. Diketahui tabel kebenaran dengan input A, B dan C. Maka tentukan ekspresi boolean dan gerbang logikanya.



Jawab: A B C



Y



0



0



0



1



0



0



1



0



0



1



0



0



0



1



1



1



1



0



0



0



1



0



1



1



4



1



1



0



0



1



1



1



0



a) Ekspresi Boolean Y = (invA.invB.invC)+(invA.B.C)+(A.invB.C)



b) Gerbang Logika



OPERATOR Operator adalah simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data . 5



Ø Operator Aritmatika Digunakan untuk mengoperasikan data-data numerik, seperti penjumlahan, pengurangan, perkalian, pembagian, dll. Dalam proses aritmatika tersebut, pengerjaan operasi tergantung dari tingkat valensi operator-operator yang terlibat. Perpangkatan memiliki valensi tertinggi, kemudian dilanjutkan dengan perkalian, pembagian, pembagian bulat dan sisa pembagian, sedangkan penjumlahan dan pengurangan mempunyai valensi yang terendah. ^ : Pangkat * : Perkalian / : Pembagian real \ : Pembagian integer + : Penjumlahan - : Pengurangan



Ø Operator Relasi Digunakan untuk mewakili sebuah nilai logika (nilai boolean), dari suatu persamaan atau nilai. Operator-operator yang terlibat adalah : = : sama dengan > : lebih besar < : lebih kecil



6



: tidak sama dengan >= : lebih besar atau sama dengan Prinsip kerja aliran listrik Paralel 2. AND --> Prinsip kerja aliran listrik Seri Ø precendence: ·



menentukan urutan operasi dari operator-operator dalam ekspresi majemuk.



·



operator dgn tingkat hirarki lebih tinggi akan diproses terlebih dahulu.



Ø Asosiatif: ·



urutan operasi jika operatornya setara.



Ø Operator logika: ·



True:jika tipe integer bernilai tidak nol(#0)



·



False jika tipe integer bernilai nol(0)



7



2. Eksekusi Kondisional A. Eksekusi Kondisional Dalam pembuatan program seringkali diperlukan eksekusi perintah berdasarkan suatu kondisi tertentu. Misalnya mencetak “Lulus” atau “Tidak lulus” berdasarkan nilai ujian, memberikan nilai untuk gaji pokok berdasarkan lama bekerja, menambah score ketika pemain berhasil menyelesaikan suatu misi tertentu dan sebagainya.



8



Dalam bahasa pemrograman, untuk mengatur eksekusi perintah berdasarkan suatu kondisi dapat digunakan perintah if. Format penulisan perintah if pada Python adalah sebagai berikut: Format perintah kondisional if kondisi: perintah A1 perintah A2



perintah B perintah C Kondisi merupakan suatu keadaan yang bernilai yang benar atau salah. Misalnya, kondisi c > b (variabel c lebih besar dari variabel b), a == 4 (variabel a sama dengan 4). Kondisi diakhir dengan tanda : (titik dua). Jika kondisi bernilai benar, maka perintah yang dieksekusi adalah perintah yang diindentasi, yaitu perintah A1 dan A2. Perintah B dan C akan selalu dieksekusi tanpa tergantung dari kondisi karena perintah B dan C bukan bagian dari perintah if (tidak diindentasi/sejajar dengan if). Format perintah if di atas merupakan format penulisan yang hanya menyaring jika kondisi bernilai benar (dengan menjalankan perintah A1 dan A2). Jika diperlukan untuk mengeksekusi suatu perintah jika kondisi bernilai salah, maka dapat ditambahkan else: (else diikuti dengan tanda titik dua) setelah blok perintah kondisi bernilai benar. Format Perintah IF (Python)Python if kondisi: perintah A1 9



perintah A2 else: perintah A3 perintah A4 perintah B perintah C Dengan format perintah if di atas, perintah A3 dan A4 hanya akan dijalankan ketika kondisi bernilai salah. Untuk perintah B dan C tetap akan dijalankan tanpa bergantung pada nilai kondisi. Contoh kode Python menggunakan perintah if: if-1.pyPython # Program if-1 a = input() if a >= 3: a=a+2



a=a+1



Pada kode di atas, yang disebut kondisi adalah a >= 3. Jika nilai a lebih besar dari 3, maka eksekusi perintah adalah a = a + 2 yang dilanjutkan dengan a = a + 1. Jika nilai a lebih kecil dari 3, maka perintah yang dijalankan hanya a = a + 1. 10



Contoh berikut digunakan untuk menentukan apakah suatu bilangan bulat merupakan bilangan genap atau ganjil dengan menggunakan format if – else.



# Program if-2 a = input() if a % 2 = 0: print "Genap" else: print "Ganjil"



11



Source Code No. 1 2 3 4 5 6 7 8 9 10 11 12 13



1.py print("Program Nyala Lampu") pnl = int(input("Masukan 0 atau 1 : ")) if(pnl == 0): print("Lampu Nyala") elif(pnl == 1): print("Lampu Mati") else: print("Maukan data yang di peruntahkan!")



no.



2.py



1 2 3 4 5 6 7



print("diagram alir") ra = int(input("read angka : "))



No. 1 2 3



3.py



if(ra%2==0): print("Bilangan Genap") else: print("Bilangan Ganjil")



import math print("Permainan Luas Bidang\n") print("1. Persegi") print("2. Persegi Panjang")



12



4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43



print("3. Lingkaran") pil = int(input("Pilihan anda ? ")) if(pil == 1): #persegi print("Anda memilih persegi") print("1. luas") print("2. keliling") ls = int(input("luas atau keliling ? ")) if(ls == 1): sisi = float(input("Berapa sisi persegi ? ")) luasPersegi = sisi*sisi print("Luas Persegi = ", luasPersegi) elif(ls == 2): sisi = float(input("Berapa sisi persegi ? ")) kelilingpersegi = 4*sisi print("Keliling persegi = ", kelilingpersegi) else: print("perhatikan baik-baik") elif(pil == 2): #persegipanjang print("Anda memilih persegi panjang") print("1. luas") print("2. keliling") ls = int(input("luas atau keliling ? ")) if(ls == 1): panjang = float(input("Berapa panjang persegi panjang ? ")) lebar = float(input("Berapa lebar persegi panjang ? ")) luasPersegiPanjang = panjang*lebar print("Luas Persegi Panjang = ", luasPersegiPanjang) elif(ls == 2): panjang = float(input("Berapa panjang persegi panjang ? ")) lebar = float(input("Berapa lebar persegi panjang ? ")) kelilingpersegip = 2*(panjang+lebar) print("Keliling persegi panjang = ", kelilingpersegip) else: print("perhatikan baik-baik") elif(pil == 3): #lingkaran print("Anda memilih lingkaran") print("1. luas") print("2. keliling") ls = int(input("luas atau keliling ? "))



13



44 45 46 47 48 49 50 51 52 53 54 55



No. 1 2 3 4 5 6 7 8 9 10 11 12 13



No.



if(ls == 1): jari2 = float(input("Berapa jari-jari lingkaran ? ")) luasLingkaran = math.pi*jari2*jari2 print("Luas Lingkaran = ", luasLingkaran) elif(ls == 2): jari2 = float(input("Berapa jari-jari lingkaran ? ")) kelilingLingkaran = 2*math.pi*jari2 print("Keliling Lingkaran = ", kelilingLingkaran) else: print("perhatikan baik-baik") else: print("Masukan pilihan yang tersedia!")



4.py import random, sys print("Undian Berhadiah") ub = int(input("Masukan pilihan antara 1-5 : ")) if(ub5): sys,exit("anda melewati batas perimintaan") bu = random,randint(1,5) if(ub == bu) : print("Amgka yang muncul adalah",bu,"Anda termasuk orang yang beruntung") else: print("Angka yang muncul adalah",bu,"Anda lebih baik menyerah")



5.py



14



1 2 3 4 5 6 7 8 9 10 11 12 13



print("soal pilihan ganda") benar=0 print("1. Hewan yang memakan daging disebut?\n" "a. Kanibal\n" "b. Karnivora\n" "c. Kapal Selam\n" "d. Karang Joang\n") no1=input("jawaban : ") if(no1=='b'): print("benar") benar=benar+1 else: print("salah")



15



Screenshot 4.py Tampilan awal program, pengguna diminta untuk memasukkan angka antara 1-5



Setelah memasukkan angka, angka yang diinginkan pengguna muncul di layar komputer.



Setelah memasukan pilihan pengguna, muncul di layar sesuai angka yang anda masuki.



16



2.py Tampilan awal program, masukan angka yang diinginkan pengguna untuk menggetahui bilangan genap atau ganjil.



Setelah memasuki angka yang diinginkan pengguna,akan muncul di layar pengguna.



17



Setelah memasuki angka,muncul penjelasan angka apakah genao atau ganjil.



3.py Tampilan awal proggram, akan menunjukan luas bidang persegi,persegi panjang dan lingkaran.



18



Setelah itu, masukan luas bidang yang pengguna inginkan dengan menekan angka.



Setelah pengguna memasuki angka yang diinginkan, akan muncul di layar pilihan luas dan keliling.



19



Pilihlah dengan memasuki angka.



Setelah pengguna memasuki angka yang diinginkan, akan muncul untuk memasuki angka untuk menetukan panjang.



20



Silahkan pengguna memasuki angka yang diinginkan.



Setelah itu, akan muncul untuk pengguna memasuki angka lebar yang diinginkan.



21



Silahkan pengguna memasuki angka lebar sesuai keiinginan.



Setelah memasukan angka,akan muncul hasil nya.



22



1.py Tampilan program, akan muncul nyala lampu atau mati lampu.



Setelah itu pengguna di perintahkan untuk memasuki angka 0 atau 1. Sesuai keinginan pengguna.



23



Setelah memasukan angka antar 0 atau 1, akan muncul penjelasan.



5.py Tampilan program akan memunculkan soal pilihan ganda.



24



Silahkan pengguna memasuki jawaban dari soal tersebut.



Setelah pengguna memasuki jawaban tersebut, akan memunculkan apakah jawaban dari pengguna benar atau salah



25



Pembahasan 1.py No.



Penjelasan



1



Menampilkan “Program nyala lampu”



3



Membaca angka jika di perintahkan angka 0 atau 1



5-8 7



Ini adalah eksekusi kondisional Akan menampilkan data yang di perintahkan



2.py No.



Penjelasan



26



1



Menampilkan “Diagram alir”



2



Akan membaca angaka yang dimasukan



4-7



Menampilakan bilangan jika memasukan angka “Bilangan genap” atau “bilangan ganjil”.



3.py No. 1 2-5



Penjelasan Dapat membaca rumus matematika Menampilkan apa yang di perintahkan



6



Untuk dapat memasukan data yang diinginkan



7



Jika kita memasuki pilihan akan terperintah



8-10



Menampilkan apa yang di perintahkan



11



Untuk memasukan data yang diinginkan



12-55



Rumus matematika dariluas dan keliling



57-58



Menampilkan apa yang di peritahkan



4.py 27



No. 1-2



Penjelasan Untuk memunculkan angka acak dan menampilkan perintah



4



Untuk membaca pilihan antara 1-5



5



Jika kita memilih lebih dari 5 atau kurang dari 5



6



Akan menampilkan perintah



8



Memunculkan angka acak



9-12



Memunculkan perintah yang dipilih oleh pengguna



5.py No. 1 4-8 9 10-12



Penjelasan Menampilkan perintah “Soal pilihan ganda” Menampilkan perintah Membaca jawaban Untuk menampilkan jawaban yang dipilih pengguna



28



Kesimpulan Didapatkan perumusan algoritma dimana sebuah coding dapat membuat perintah, memberikan pilihan, dan menentukan sebuah pilihan secara random dan otomatis



Saran Penjelasannya lebih jelas lagi kak.



29