04.2 Hari-4
Latihan ke-2 if Nested
Latihan di Kelas
Siapkan Kertas Selembar Tulis N.I.M. dan Nama
kerjakan soal 5 menit kumpulkan
Latihan ke-2 if Nested
Baca Soal dengan baik Soal-33. 181 Halaman 181 Susun program untuk menginput tiga buah bilangan yang menyatakan nilai ujian tiga buah mata kuliah. Cetak perkataan “TIGA” bila ketiga mata kuliah tersebut mendapat nilai lulus. Cetak perkataan “DUA”, bila hanya dua dari dari ketiga mata kuliah tersebut yang mendapat nilai lulus. Cetak perkataan “SATU” bila hanya satu mata kuliah yang mendapat nilai lulus. Cetak perkataan “NOL” bila ketiga mata kuliah tersebut dinyatakan tidak lulus Sebuah mata kuliah dinyatakan mendapat nilai lulus bila nilainya lebih besar atau sama dengan 60. 181
Paham Maksud Soal ? Soal-33. 180 Halaman 181 Susun program untuk menginput tiga buah bilangan yang menyatakan nilai ujian tiga buah mata kuliah. Cetak perkataan “TIGA” bila ketiga mata kuliah tersebut mendapat nilai lulus. Cetak perkataan “DUA”, bila hanya dua dari dari ketiga mata kuliah tersebut yang mendapat nilai lulus. Cetak perkataan “SATU” bila hanya satu mata kuliah yang mendapat nilai lulus. Cetak perkataan “NOL” bila ketiga mata kuliah tersebut dinyatakan tidak lulus Sebuah mata kuliah dinyatakan mendapat nilai lulus bila nilainya lebih besar atau sama dengan 60. Paham Maksud Soal ? 180
dan konsep atau draf secara manual sudah dibuat algoritma dapat ditulis setelah persoalannya sudah dipahami dan konsep atau draf secara manual sudah dibuat
Selamat mengerjakan Soal Waktu hanya 5 menit
waktu habis Kumpulkan
ada yang mau maju kedepan mengerjakan Soal yang tadi ? mengerjakan Soal yang tadi tanpa membawa catatan
ini soalnya Soal-33. 181 Halaman 181 Susun program untuk menginput tiga buah bilangan yang menyatakan nilai ujian tiga buah mata kuliah. Cetak perkataan “TIGA” bila ketiga mata kuliah tersebut mendapat nilai lulus. Cetak perkataan “DUA”, bila hanya dua dari dari ketiga mata kuliah tersebut yang mendapat nilai lulus. Cetak perkataan “SATU” bila hanya satu mata kuliah yang mendapat nilai lulus. Cetak perkataan “NOL” bila ketiga mata kuliah tersebut dinyatakan tidak lulus Sebuah mata kuliah dinyatakan mendapat nilai lulus bila nilainya lebih besar atau sama dengan 60. 181
Diterangkan
scanf(“%i %i %i”, &A, &B, &C ); 60 50 DUA 60 50 60 A B C printf(“DUA”; scanf(“%i %i %i”, &A, &B, &C ); 60 untuk mewakili nilai lulus 50 untuk mewakili nilai tidak lulus
Kemungkinan Nilai yag diinput Seharusnya Tercetak A B C 60 60 60 60 60 50 60 50 60 60 50 50 50 60 60 50 60 50 50 50 60 50 50 50 TIGA DUA SATU NOL 60 untuk mewakili nilai lulus 50 untuk mewakili nilai tidak lulus
Kemungkinan Nilai yag diinput Seharusnya Tercetak A B C 60 60 60 60 60 50 60 50 60 60 50 50 50 60 60 50 60 50 50 50 60 50 50 50 TIGA DUA SATU NOL Progam harus ditest 8 kali
Kemungkinan Nilai yag diinput Seharusnya Tercetak A B C Pembuat program harus dapat memperkirakan semua kemungkinan variasi data 60 60 60 60 60 50 60 50 60 60 50 50 50 60 60 50 60 50 50 50 60 50 50 50 TIGA DUA SATU NOL Apabila variasi data sangat banyak, cukup ditest dengan beberapa sampel. Usahakan, mencari sampel yang sangat khusus
Cara-1 scanf A,B,C A>=60 B>=60 B>=60 C>=60 C>=60 START A B C 60 60 60 60 60 50 60 50 60 60 50 50 50 60 60 50 60 50 50 50 60 50 50 50 TIGA DUA SATU NOL scanf A,B,C A>=60 B>=60 B>=60 C>=60 C>=60 C>=60 C>=60 printf “NOL” printf “SATU” printf “SATU” printf “DUA” printf “SATU” printf “DUA” printf “DUA” printf “TIGA” END
scanf(“%i %i %i”, &A,&B,&C); if(A>=60) { } else START scanf A,B,C A>=60 B>=60 C>=60 C>=60 printf “SATU” printf “DUA” printf “DUA” printf “TIGA”
scanf(“%i %i %i”, &A,&B,&C); if(A>=60) { } else START scanf A,B,C A>=60 B>=60 C>=60 C>=60 printf “SATU” printf “DUA” printf “DUA” printf “TIGA”
scanf scanf(“%i %i %i”, &A,&B,&C); if(A>=60) { if(B>=60) { if(C>=60) printf(“TIGA”); else printf(“DUA”); } printf(”SATU”); START scanf A,B,C A>=60 B>=60 C>=60 C>=60 printf “SATU” printf “DUA” printf “DUA” printf “TIGA”
scanf A,B,C A>=60 B>=60 C>=60 C>=60 scanf(“%i %i %i”, &A,&B,&C); if(A>=60) { if(B>=60) { if(C>=60) printf(“TIGA”); else printf(“DUA”); } printf(”SATU”); { START scanf A,B,C A>=60 B>=60 C>=60 C>=60 printf “SATU” printf “DUA” printf “DUA” printf “TIGA”
scanf { if(B>=60) { if(C>=60) printf(“TIGA”); else START scanf A,B,C A>=60 { if(B>=60) { if(C>=60) printf(“TIGA”); else printf(“DUA”); } printf(”SATU”); B>=60 C>=60 C>=60 printf “NOL” printf “SATU” printf “SATU” printf “DUA”
#include<stdio.h> void main() { int A,B,C; scanf(“%i %i %i”, &A,&B,&C); if(A>=60) { if(B>=60) { if(C>=60) printf(“TIGA”); else printf(“DUA”); } printf(”SATU”); { Bersambung kesini { if(B>=60) { if(C>=60) printf(“TIGA”); else printf(“DUA”); } printf(”SATU”); Bagian else A>=60
Ketik program kedalam Bahasa C & RUN
Cara-2 #include<stdio.h> void main() { int A,B,C, Jum; START Cara-2 1 Jum++ #include<stdio.h> void main() { int A,B,C, Jum; scanf(“%i %i %i”,&A,&B,&C); Jum = 0; if(A>=60) Jum++; if(B>=60) Jum++; if(C>=60) Jum++; if(Jum==3)printf(“TIGA”); if(Jum==2)printf(“DUA”); if(Jum==1)printf(”SATU”); if(Jum==0)printf(“NOL”); } scanf A,B,C Jum=3 “TIGA” Jum=0 A>=60 Jum=2 Jum++ “DUA” B>=60 Jum=1 Jum++ “SATU” C>=60 Jum=0 Jum++ “NOL” 1 END
if(Jum==3)printf(“TIGA”); if(Jum==2)printf(“DUA”); “SATU” Jum=0 “NOL” if(Jum==3)printf(“TIGA”); if(Jum==2)printf(“DUA”); if(Jum==1)printf(”SATU”); if(Jum==0)printf(“NOL”); Flowchart if seperti ini Lebih baik diganti menjadi if seperti ini if(Jum==3) printf(“TIGA”); else {if(Jum==2) printf(“DUA”); else {if(Jum==1) printf(”SATU”); else printf(“NOL”); } Jum=3 Jum=2 Jum=1 “TIGA” “DUA” “SATU” “NOL” Flowchart
Bersambung ke : 04.3 Pekerjaan Rumah if Nested