(Lanjutan Tugas Pertemuan ke 1) Latihan Soal (Lanjutan Tugas Pertemuan ke 1)
Soal Lakukan desk checking untuk algoritma berikut: Calculate_mowing_time Prompt operator for block_length, block_width Get block_length,block_width block_area = block_length * block_width Prompt operator for house_length, house_width Get house_length, house_width house_area = house_length * house_width mowing_area = block_area – house_area mowing_time = mowing_area/2 Output mowing_time to screen END
Soal 2. Calculate_mowing_time Prompt operator for block_length, block_width Get block_length,block_width block_area = block_length * block_width Prompt operator for house_length, house_width Get house_length, house_width house_area = block_length * block_width mowing_area = block_area – house_area mowing_time = mowing_area/2 Output mowing_time to screen END
Masing-masing mempunyai input sbb: First data set Second data set block_length 30 40 block_width 20 house_length house_width 10
Jawaban No 1 Input data: Output yang diharapkan: First data set Second data set block_length 30 40 block_width 20 house_length house_width 10 Data 1 Data 2 Mowing_ time 250 mnt 300 mnt
Sesuai Desk Checking Statement Number Block_ Length Block_ width House_ Length House_ witdth Block_ area House_ area Mowing_ area Mowing_ time Data 1 1,2 30 3 900 4,5 20 6 400 7 500 8 250 9 output Data 2 40 800 10 200 600 300 Sesuai
Jawaban No 2 Input data: Output yang diharapkan: First data set Second data set block_length 30 40 block_width 20 house_length house_width 10 Data 1 Data 2 Mowing_ time 250 mnt 300 mnt
Tidak Sesuai Desk Checking Statement Number Block_ Length Block_ width House_ Length House_ witdth Block_ area House_ area Mowing_ area Mowing_ time Data 1 1,2 30 3 900 4,5 20 6 7 8 9 output Data 2 40 800 10 Tidak Sesuai
struktur kendali pemilihAN HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII struktur kendali pemilihAN Pertemuan ke 2 Institut Bisnis dan Informatika Indonesia
Struktur Kontrol Selection / Pemilihan Ada beberapa variasi dari struktur kontrol selection yaitu: Simple Selection (simple IF Statement) Simple Selection tanpa cabang Combined Selection Nested Selection Linear Nested IF Statement Non-Linear IF Statement
1. Simple Selection Simple selection terjadi jika harus memilih diantara dua alternatif yang ada, tergantung dari hasil kondisi apakah True atau false Keyword yang digunakan adalah : IF, THEN, ELSE, dan ENDIF .
1. Simple Selection Contoh IF account_balance < $300 THEN service_change = $5.00 ELSE service_change = $2.00 ENDIF
2. Simple Selection tanpa cabang Simple selection ini terjadi jika sebuah statement hanya bisa dikerjakan bila kondisinya adalah TRUE Contoh: IF Saldo > $300 THEN bunga = saldo * 0.1 ENDIF
3. Combined Selection Combined Selection terjadi jika kondisi yang harus diperiksa lebih dari satu. Kondisi tersebut dapat dihubungkan dengan menggunakan AND atau OR.
3. Combined Selection Contoh: IF saldo > 300 AND kode = 1 THEN bunga = saldo * 0.1 ELSE bunga = saldo * 0.05 ENDIF Statement bunga = saldo *0.1, akan bisa dikerjakan jika kedua kondisi yaitu saldo > 300 dan Kode = 1 bernilai TRUE. Hal ini dikarenakan penghubung yang digunakan adalah AND
3. Nested Selection Tabel kebenaran
4. Nested Selection Nested selection terjadi, jika di dalam IF terdapat statement IF yang lain. Ada dua jenis nested selection Linear Nested IF statement Non-Linear Nested IF statement
Linear Nested IF Statement Linear Nested terjadi jika satu kondisi di cek untuk beberapa nilai. Contoh: IF record_code=‘A’ THEN increment counter_A ELSE IF record_code=‘B’ THEN increment counter_B IF record_code=‘C’ THEN increment counter _C increment error_counter ENDIF
Non-Linear Nested IF Non-Linear Nested IF Statement terjadi jika beberapa kondisi harus diperiksa sebelum suatu statement dikerjakan.
Non-Linear Nested IF IF student_attendance=part_time THEN IF student_gender=female THEN IF student_age >21 THEN add 1 to mature_fem_pt_students ELSE add 1 to young_fem_pt_students ENDIF add 1 to male_pt_students add 1 to full_time_students
Algoritma menggunakan Selection Susunlah algoritma untuk membaca tiga karakter kemudian susunlah ketiga nilai karakter tersebut dengan urutan menaik (ascending) dan tampilkan ketiga karakter hasil sort tersebut
Jawaban Algoritma Solusi Baca_Tiga_Karakter baca Char_1, Char _2, Char _3 If Char _1 > Char _2 THEN temp = Char _1 Char _1 = Char _2 Char _2 = temp ENDIF If Char _2 > Char _3 THEN temp = Char _2 Char _2 = Char _3 Char _3 = temp If Char _1> Char _2 THEN cetak Char _1, Char _2, Char _3 END
Jawaban Definisi Masalah
Input Data Hasil yang diharapkan Data 1 Data 2 Char_1 K Z Char_2 B S
Desk Checking Table
Struktur Case Digunakan untuk menganalisis penyeleksian dua kasus atau lebih Bentuknya lebih sederhana daripada struktur IF-THEN-ELSE Tiap kondisi diperiksa nilai kebenarannya mulai dari kondisi pertama sampai ditemukan kondisi yang benar. Jika kondisi ke-n benar, maka aksi ke-n dilaksanakan, selanjutnya keluar dari struktur CASE Tidak semua bahasa pemrograman menyediakan struktur CASE (misalnya Bahasa Fortran). Bahasa Pascal dan C menyediakan struktur ini. Jika bahasa pemrograman tidak menyediakan struktur CASE, maka struktur CASE dapat diganti dengan struktur IF-THEN-ELSE yang ekivalen.
Struktur CASE OF single variabel value_1 : statement_1 … ... value_n : statement_n value_other : statement_other END CASE
Contoh CASE OF record_code ‘A’ : increment counter_A ‘B’ : increment counter_B ‘C’ : increment counter_C other : increment error_counter ENDCASE
Contoh Mencari_Nama _Bulan Read AngkaBulan Case Of AngkaBulan 1 : print ‘Januari’ 2 : print‘Februari’ 3 : print ‘Maret’ 4 : print ‘April’ 5 : print ‘Mei’ 6 : print ‘Juni’ 7 : print ‘Juli’ 8 : print ‘Agustus’ 9 : print ‘September’ 10 : print ‘Oktober’ 11 : print ‘Nopember’ 12 : print ‘Desember’ EndCase END.
Latihan