PERTEMUAN 2 STRUKTUR RUNTUNAN 1. Runtunan Suatu masalah yang diselesaikan menggunakan struktur runtunan mempunyai logika bahwa setiap instruksi akan dikerjakan satu per satu. Setiap instruksi dilaksanakan tepat satu kali, tidak ada instruksi yang diulang maupun tidak dilaksananakan. Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi sebagaimana yang tertulis di dalam teks algoritmanaya. Akhir dari instruksi terakhir merupakan akhir algoritma. Algoritma adalah urutan atau deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis, ditulis dengan notasi yang mudah dimengerti sehingga langkah-langkah tersebut dapat dilaksanakan oleh pemroses. 2. Contoh-contoh Kasus Runtunan 1) Menghitung luas persegi panjang yang besarnya panjang dan lebar dimasukkan melalui keyboard. Jawab: a) Algoritma dengan bahasa Indonesia : - Masukkan panjang dan lebar. - Kalikan panjang dengan lebar dan simpan hasilnya sebagai luas. - Tuliskan hasilnya. b) Algoritma dengan pseudocode : input (P,L) Luas = P * L output (Luas) c) Algoritma dengan flowchart : Start Input(P,L) Luas Output (Luas) End Gambar Flowchart Hitung Luas Persegi Panjang 9 d) Kode sumber luas.py : Tampilan luas.py: Program Menghitung Luas Masukan nilai panjang = Masukan nilai lebar = 4 Luas = 12 Tipe data variabel a = Tipe data variabel b = Tipe data variabel c = Persegi Panjang 3 <type 'int'> <type 'int'> <type 'int'> 2) Menghitung nilai rata-rata dari 2 buah data. Jawab: a) Algoritma dengan pseudocode : input (x,y) Rerata = (x + y)/2 output (Rerata) 10 b) Kode sumber rerata.py : Tampilan rerata.py : Program Menghitung Rerata Masukan nilai pertama = 9 Masukan nilai kedua = 2 Nilai rata-rata = 5.50 3) Menghitung luas dan keliling lingkaran dengan besar jari-jari lingkaran dimasukkan melalui keyboard. Jawab: a) Algoritma dengan bahasa Indonesia : - Tentukan nilai phi sama dengan 3.14. - Masukkan jari-jari lingkaran. - Kalikan phi dengan kuadrat jari-jarinya dan simpan hasilnya sebagai luas. - Kalikan phi dengan kuadrat jari-jarinya dan simpan hasilnya sebagai keliling. - Tulis hasilnya. b) Algoritma dengan pseudocode : phi = 3.14 input ( R ) L = phi * R * R K = 2 * phi * R Output (L,K) 11 c) Algoritma dengan flowchart : Start phi = 3.14 Input( R ) L = phi*R*R K = 2*phi*R Output (L,K) End Gambar Flowchart Hitung Luas dan Keliling Lingkaran d) Kode sumber lingkaran.py : Tampilan lingkaran.py: Masukan jari-jari lingkaran = 10 12 Lingkaran berjari-jari keliling 62.8 10 mempunyai luas 314.0 dan 4) Konversi total detik menjadi berapa jam lebih berapa menit berapa detik. Jawab: a) Algoritma dengan bahasa Indonesia : - Baca data atau total detik (misalkan Dt). - Bagilah Dt dengan 3600 (misalkan hasil sama dengan J dan sisa hasil bagi sama dengan S). - Bagilah S dengan 60 (misalkan hasil sama dengan M dan sisa hasil bagi sama dengan D). - Tulis hasilnya (J, M, D). b) Algoritma dengan pseudocode : input (Dt) J = Dt div 3600 S = Dt mod 3600 M = S div 60 D = S mod 60 output (J, M, D) c) Algoritma dengan flowchart : Start Input( R ) J = Dt div 3600 S = Dt mod 3600 M = S div 60 D = S mod 60 Output (J,M,D) End Gambar Flowchart Konversi Detik 13 d) Kode sumber bagidetik.py : Tampilan bagidetik.py : Program Konversi Detik menjadi Jam Menit Detik Masukkan Total Detik = 4382 Jumlah jam = 1 jam Jumlah menit = 13 menit Jumlah detik = 2 detik 14