Metode Perancangan Program Pert 3 – Struktur Pemilihan / Selection Struktur Kontrol Selection / Pemilihan Ada beberapa variasi dari struktur kontrol selection yaitu: 1. 2. 3. 4. Simple Selection (simple IF Statement) Simple Selection tanpa cabang Combined Selection Nested Selection 1. 2. 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 aalah : IF, THEN, ELSE, dan ENDIF 1. Simple Selection Contoh IF saldo < $300 THEN bunga = 0.05 ELSE bunga = 0.1 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 A T T F F B NOT A NOT B A AND B A OR B T F F T T F F T F T T T F F T F T T F F 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 ELSE IF record_code=‘C’ THEN increment counter _C ELSE increment error_counter ENDIF ENDIF 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 ELSE add 1 to male_pt_students ENDIF ELSE add 1 to full_time_students ENDIF 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 Definisi Masalah Input Proses Output Kar_1 baca Kar_1, Kar_2, Kar_3 Kar_1 Kar_2 sort tiga karakter tersebut Kar_2 Kar_3 cetak hasil sort Kar_3 Jawaban Algoritma Solusi Baca_Tiga_Karakter baca Kar_1, Kar_2, Kar_3 If Kar_1 > Kar_2 THEN temp = Kar_1 Kar_1 = Kar_2 Kar_2 = temp ENDIF If Kar_2 > Kar_3 THEN temp = Kar_2 Kar_2 = Kar_3 Kar_3 = temp ENDIF If Kar_1>Kar_2 THEN temp = Kar_1 Kar_1 = Kar_2 Kar_2 = temp ENDIF cetak Kar_1, Kar_2, Kar_3 END Desk Checking Data Input : Kar_1 Kar_2 Kar_3 Data 1 k b g Data 2 z s a Desk checking Hasil yang diharapkan Kar_1 Kar_2 Kar_3 Data 1 b g k Data 2 a s z Desk Checking Tabel Kar_1 Kar_2 Kar_3 Data 1 Baca IF IF IF Cetak Data 2 Baca IF IF IF Cetak k b b k g g ya ya ya z s s z a s ya a a ya k z ya temp IF dijalankan ? k k ya ya tidak z z s ya ya ya CASE CASE OF variabel nilai_1 : statement_1 nilai_2 : statement_2 … : nilai_n : statement_n nilai_lain: statement_lain END CASE Contoh: CASE OF record_code ‘A’ : increment counter_A ‘B’ : increment counter_B ‘C’ : increment counter_C other : increment error_counter ENDCASE
© Copyright 2026 Paperzz