LAPORAN PRAKTIKUM PEMROGRAMAN TERSTRUKTUR
MODUL 2
PERCABANGAN
DOSEN PEMBINA: M.T. Andarbeni, S.Kom.
OLEH: KELOMPOK 19 KHOIRUL HIDAYAT 201110370311284 201110370311284
LABORATORIUM DMAG DAN RPL PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2011/2012
I. TUJUAN 1.
Mahasi Mahasiswa swa memaha memahami mi berb berbaga agaii struk struktur tur percab percabang angan an di di C yaitu yaitu if if & if-else if-else
2.
Mahasi Mahasiswa swa memaha memahami mi berbag berbagai ai strukt struktur ur perca percaban bangan gan di C yait yaitu u swit switch ch
I. ALAT ALAT YANG ANG DIG DIGUN UNA AKAN KAN •
Computer
•
Turbo C++ 45
I. DASAR TEORI
Ketika kita akan membuat suatu program, pasti akan ada statement yang akan kamu buat berjalan pada kondisi tertentu. Misalnya pada saat membuat program penghitung luas dan keliling lingkaran. Lalu kita membuat pilihan untuk user, menghitung keliling ataukah luas lingkaran yang diinginkan.
Jika user memilih keliling, maka kita akan membuat statement yang akan berjalan untuk penghitung keliling. Dan tentu saja, statement penghitung luas tidak akan ditampilkan. Lalu, bagaimana caranya agar program kita bisa melakukan hal seperti itu? Inilah fungsi dari perintah percabangan (dalam bahasa inggris dikenal sebagai branching).
Statement if - else Bentuk dasar perintah if – else adalah sebagai berikut : if (expression) Statement1; else Statement2; StatementBerikutnya;
Jika ketika dieksekusi ekspresi menghasilkan nilai true, maka statement1 akan dieksekusi dan statement2 tidak akan dikerjakan dikerjakan dan kemudian kemudian program program akan mengeksekusi mengeksekusi statement berikutnya ,
dan jika ekspresi tersebut bernilai false maka statement1 tidak akan dieksekusi dan statement2 akan dieksekusi, dan dilanjutkan dengan mengeksekusi statement berikutnya . Operator-operator yang biasa digunakan dalam operasi logika, dapat dilihat di tabel di bawah ini. Operator == !=
Contoh A==B
A!=B
Arti Apakah Isi Variabel A sama dengan Isi
Variabel B Apakah Isi Variabel A Tidak Sama Dengan Isi Variabel B
> < >= <= &&
A>B
Apakah Isi Variabel A lebih besar dari
A
Isi Variabel B Apakah Isi Variabel A lebih kecil dari
A>=B
Isi Variabel B Apakah Isi Variabel A lebih besar atau
A<=B
sama dengan Isi Variabel B Apakah Isi Variabel A lebih kecil atau
(A<=100)
sama dengan Isi Variabel B Apakah A lebih kecil atau sama dengan
&&(A>=80)
dari 100 dan A lebih besar atau sama
(A>100)||
dengan 80 Apakah A lebih besar dari 100 atau A
||
(A<0) lebih kecil dari 0 !(A==B) Apakah A Tidak Sama dengan B ! Untuk lebih jelas, perhatikan perintah berikut : #include #include main() { int Nilai; printf(“Nilai : “);scanf(“%i”,&Nilai); if(Nilai>=50) printf(“Selamat Anda Lulus.”); else printf(“Maaf. printf(“Maaf. Anda Tidak Lulus.”); getch(); return 0; }
Perintah di atas hanya mempunyai 2 kemungkinan yaitu keterangan “Selamat Anda Lulus” jika nilai lebih besar dari atau sama dengan 50 dan keterangan “Maaf. Anda Tidak Lulus”, ketika nilai lebih kecil dari 50.
Jika perintah yang akan dieksekusi ketika kondisi tercapai lebih dari 1 perintah, maka perintah perintah tersebut harus diblok dengan tanda kurawal {}.
Perhatikan program di bawah ini yang merupakan perubahan dari program di atas. #include #include main() { int Nilai; printf(“Nilai : “);scanf(“%i”,&Nilai); if(Nilai>=50) { printf(“Anda printf(“Anda Hebat!\n”);
printf(“Selamat Anda Lulus.”); } else { printf(“Maaf. printf(“Maaf. Anda Tidak Lulus.”); printf(“Perbaiki printf(“Perbaiki semester depan yah!.”); } getch(); return 0; }
Perhatikan juga program di bawah ini : #include #include main() { int a,b; printf(“Masukan A : “);scanf(“%i”,&a); printf(“Masukan B : “);scanf(“%i”,&b); if(a==b) printf(“Isi Variabel A Sama Dengan B”); else if(a>b) printf(“Isi Variabel A lebih besar dari B”); else if(a
Program di atas akan meminta anda untuk memasukan nilai variabel A dan B, kemudian program akan memeriksa apakah variabel A samadengan B, atau A lebih besar dari B, dan A lebih kecil dari B.
Contoh Kasus :
Di sebuah universitas penilaian yang dipakai adalah : NilaiAkhir=20%*tugas+30%*uts+50%*uas
Nilai
Index
Akhir >=80 >=68 >=56 >=45 >=0
A B C D E
Diluar nilai di atas, maka index adalah X (index tidak diketahui). Data yang diinputkan adalah : tugas, uts, uas. #include #include main() { int tugas,uts,uas; tugas,uts,uas; float nilaiakhir; char index; printf("Nilai Tugas : ");scanf("%i",&tugas); printf("Nilai printf("Nila i UTS
: ");scanf("%i",&uts); ");scanf("%i" ,&uts);
printf("Nilai printf("Nila i UAS
: ");scanf("%i",&uas); ");scanf("%i" ,&uas);
nilaiakhir=0.2*tugas+0.3*uts+0.5*uas; printf("Nilai Akhir : %f\n",nilaiakhir); if(nilaiakhir>=80) index='A'; else if(nilaiakhir>=68) index='B'; else if(nilaiakhir>=56) index='C'; else if(nilaiakhir>=45) index='D'; else if(nilaiakhir>=0) index='E'; else index='X'; printf("Index printf("Inde x
: %c\n",index);
getch(); return 0; }
Perintah switch – case - default Selain if-else, perintah yang digunakan untuk percabangan adalah switch – case. Bentuk dasar dari perintah tersebut adalah : switch(ekspresi) { case kondisi1:perintah1;break; case kondisi2:perintah2:break; default : perintah3; }
Cara kerja perintah di atas adalah : “Jika ekspresi sama dengan kondisi1, maka perintah1 akan dieksekusi dieksekusi dan kemudian keluar dari switch, switch, dan jika ekspresi ekspresi sama dengan dengan kondisi2 kondisi2 maka perintah 2 yang akan dieksekusi dan kemudian keluar dari switch, dan jika tidak 1 kondisi pun yang sama dengan ekspresi maka perintah3 (perintah default) yang akan dieksekusi. Perintah default kalau tidak diperlukan bisa dihilangkan.
Untuk lebih jelas, perhatikan perintah di bawah ini. switch (index) { case 'A':printf("Keterangan 'A':printf( "Keterangan
: Bagus Sekali\n");break; Sekali\n");br eak;
case 'B':printf("Keterangan 'B':printf( "Keterangan
: Bagus\n");break; Bagus\n");br eak;
case 'C':printf("Keterangan 'C':printf( "Keterangan
: Cukup\n");break; Cukup\n");br eak;
case 'D':printf("Keterangan 'D':printf( "Keterangan
: Kurang\n");break; Kurang\n");b reak;
case 'E':printf("Keterangan 'E':printf( "Keterangan
: Kurang Sekali\n");break; Sekali\n");b reak;
default :printf("Keterangan :printf("Ket erangan
: Index Tak Diketahui\n"); Diketahui\n") ;
}
Keterangan program di atas adalah jika index=’A’ maka keterangan Bagus Sekali, jika index=’B’ maka keterangan Bagus, jika index=’C’ maka keterangan Cukup, jika index=’D’ maka keterangan Kurang, jika index=’E’ maka keterangan Kurang Sekali, dan jika index bukan A – E, maka keterangan adalah Index Tidak Diketahui.
Perintah if else dengan banyak kondisi Jika kondisi yang harus diperiksa lebih dari 1 kondisi, maka hanya if-else lah yang bisa dipakai. Operator-operator logika yang dipakai adalah operator && (and), dan operator || (or).
Untuk lebih jelas, perhatikan perintah di bawah ini: if((index=='A')||(index=='B')||(index=='C')) printf("Selamat Anda Lulus"); else if((index=='D')||(index=='E')) printf("Anda Tidak Lulus. Lebih giat lagi belajar!");
Perintah di atas akan menampilkan string “Selamat Anda Lulus” ketika index berisi A, B atau C, dan akan menampilkan keterangan “Anda Tidak Lulus. Lebih giat lagi belajar!” ketika index berisi D atau E. Untuk lebih jelas, buatlah program untuk mengatasi kasus di bawah ini.
Di sebuah perusahaan bus, tabel harga dapat dilihat dalam tabel di bawah ini.
TU JU
JAKARTA(1) YOGYA(2) SURABAYA(3)
EKSEKUTIF(1
KELAS BISNIS(2)
EKONOMI(3)
) 70000 80000 90000
40000 50000 60000
10000 20000 30000
A N Karen Karenaa seka sekara rang ng masa masa prom promos osi, i, maka maka khus khusus us untu untuk k sura suraba baya ya-e -eks ksek ekut utif if dan dan yogy yogyaa-ek ekon onom omii mendapatkan diskon sebesar 10%. Buatlah program dengan data yang dimasukan adalah jenis kelas, tujuan dan banyak tiket yang dibeli. Data yang ingin ditampilkan adalah harga tiket dan total tiket, diskon dan besar pembayaran.
Contoh : Pilih Jurusan : 1. Jakar akarta ta 2. Yogya 3. Surab urabay aya a Jurusan yang anda pilih : Pilih Kelas : 1. Ekse Ekseku kuti tif f 2. Bisnis 3. Ekon Ekonom omi i Kelas yang anda pilih : 3 Banyak Tiket : 5 [input] Harga Tiket : Rp. 20000 Total Tiket : Rp. 100000 Diskon : Rp. 10000 Bayar : Rp. 90000
2 [input]
[input] [output] [output] [output] [output]
Program untuk kasus di atas : #include #include main() { int kodejurusan,kodekelas,b kodejurusan,kodekelas,banyaktiket; anyaktiket; long int hargatiket,total; hargatiket,total; float diskon,bayar; printf("Pilih Jurusan :\n"); printf("---------------\n"); printf("1. Jakarta\n2. Yogya\n3. Surabaya\n"); Surabaya\n"); printf("---------------\n"); printf("Jurusan yang dipilih : ");scanf("%i",&kodejurusan); printf("Pilih Kelas :\n"); printf("---------------\n"); printf("1. Eksekutif\n2. Bisnis\n3. Ekonomi\n"); printf("---------------\n"); printf("Kelas printf("Kelas yang dipilih : ");scanf("%i",&kodekela ");scanf("%i",&kodekelas); s); printf("Banyak printf("Banyak Tiket : ");scanf("%i",&banyakti ");scanf("%i",&banyaktiket); ket); if((kodejurusan==1)&&(kodekelas==1)) hargatiket=70000; else if((kodejurusan==1)&&(kodekelas==2)) hargatiket=40000; else if((kodejurusan==1)&&(kodekelas==3)) hargatiket=10000; else if(kodejurusan==2) { if(kodekelas==1) hargatiket=80000; else if(kodekelas==2) hargatiket=50000; else if(kodekelas==3) hargatiket=20000; } else if(kodejurusan==3)
{ switch (kodekelas) { case 1:hargatiket=90000;brea 1:hargatiket=90000;break; k; case 2:hargatiket=60000;brea 2:hargatiket=60000;break; k; case 3:hargatiket=30000; 3:hargatiket=30000; } } printf("Harga printf("Harg a Tiket : Rp. %li\n",hargatiket); %li\n",hargat iket); total=banyaktiket*hargatiket; printf("Total printf("Tota l Tiket : Rp. %li\n",total); %li\n",total) ; if( ((kodejurusan==3)&&(kodekelas==1)) || ((kodejurusan==2)&&(kodekelas==2)) ) diskon=0.1*total; else diskon=0; printf("Diskon printf("Diskon 10%% : Rp. %f\n",diskon); %f\n",diskon); bayar=total-diskon; printf("Bayar printf("Baya r : Rp. %f\n",bayar); getch(); return 0; }
Sumber:
IV.PROSEDUR PELAKSANAAN •
Tutorial
•
Memaparkan flowchart percabangan dengan if-else
•
Membuat program sederhana menggunakan keyword if dengan kasus bilangan ganjil if(x%2==1){ printf(“bilangan ganjil”);}
•
Melanjutkan program sebelumnya dengan menambahkan keyword else untuk kasus bilangan genap
•
Membuat program yang mengandung nested if
•
Membuat program yang mengandung if bertingkat if(x>1000){ printf(“dapat 2 permen”);} else if(x>500){ printf(“dapat 1 permen”);} else{ printf(“dapat 1 permen”);}
•
Membuat program menggunakan switch untuk kasus: jika user memasukkan huruf ‘a’ maka akan keluar “nilai kredit anda 4”, jika user memasukkan huruf ‘b’ maka akan keluar “nilai kredit anda 3”, jika user memasukkan huruf ‘a’ maka akan keluar “nilai kredit anda 2”
•
Mahasiswa mengerjakan tugas praktikum
•
Mahasiswa mendemokan hasil praktikum kepada asisten dan menulis laporan
V. TUGAS TUGAS PRAKT PRAKTIKU IKUM M
1. Buat program program perhitu perhitungan ngan biaya biaya rekening rekening listrik listrik dengan dengan tarif tarif progresif progresif:: •
Menginputkan golongan kelompok pengguna berupa karakter ‘A’, ‘B’, atau ‘C’ dan jumlah pemakaian listrik bulan ini.
•
Menghitung biaya:
1. Jika termasuk termasuk kelompo kelompok k A maka maka perhitu perhitungan ngan biaya meliputi meliputi : ✔
Abonemen
✔
150 kwh pertama
✔
Selanjutnya
✔
Pajak
: 50000 : 2250/kwh : 4750/kwh : 10% dari total
2. Jika termasuk termasuk kelompo kelompok k B maka maka perhitun perhitungan gan biaya biaya melipu meliputi ti : ✔
Abonemen
✔
100 kwh pertama
✔
Selanjutnya
✔
Pajak
: 35000 : 1750/kwh : 3250/kwh : 10% dari total
3. Jika termasuk termasuk kelompo kelompok k C maka maka perhitun perhitungan gan biaya biaya melipu meliputi ti : ✔
Abonemen
✔
75 kwh pertama
✔
Selanjutnya
✔
Pajak
•
Menampilkan biaya yang harus dibayar pelanggan
: 20000 : 1500/kwh : 2750/kwh : 5% dari total
Contoh: Input
: kelompok ‘A’
Pemakaian 250 kwh Perhitu Perhitunga ngan n:
biaya biaya = 50000 50000 + 2250*1 2250*150+ 50+475 4750*1 0*100 00
paj pajak ak = 10/1 10/100 00* * bia biaya ya total Output
: total
= bi biaya + pajak
JAWABAN: 1. SOURCE CO CODE
#include main() { char pilih; float pakai,biaya, abond,pajak,total; printf("==================== program perhitungan biaya listrik ======================== \n"); printf("masukan TIPE kelompok : "); scanf("%c",&pilih); printf("===================================================================== ========== \n"); if(pilih=='a'||pilih=='A') { printf("masukan pemakaian (kwh): "); scanf ("%f",&pakai); printf("===================================================================== ========== \n"); if (pakai>=150) { abond=pakai-150; biaya=50000+337500+4750*abond; pajak=0.1*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } else if (pakai<150) { biaya= 50000+337500 50000+337500;; pajak=0.1*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } } else if(pilih=='b'||pilih=='B') { printf("masukan pemakaian (kwh): \n"); scanf ("%f",&pakai);
if (pakai>=100) { abond=pakai-100; biaya=35000+175000+3250*abond; pajak=0.1*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } else if (pakai<100)
{ biaya= 35000+175000 35000+175000;; pajak=0.1*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } } else if(pilih=='c'||pilih=='C') { printf("masukan total pemakaian (kwh): \n"); scanf ("%f",&pakai);
if (pakai>=75) { abond=pakai-75; biaya=20000+112500+2750*abond; pajak=0.05*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } else if (pakai<75) { biaya= 20000+112500 20000+112500;; pajak=0.05*biaya; total=biaya+pajak; printf("total biaya adalah %.2f \n",total); } } else { printf("pilihan salah"); } }
2. ALGORITMA •
Input (pilih)
•
Jika pilih=a atau pilih=A maka inputkan (total pemakaian)
Selanjutnya jika total pemakaian>=150 maka hitung : abond=pakai-150 biaya=50000+337500+4750*abond pajak=0.1*biaya total=biaya+pajak tampilkan (output) perhitungan “total”
Selanjutnya jika total pemakaian<150 maka hitung : biaya= 50000+337500 pajak=0.1*biaya total=biaya+pajak tampilkan (output) perhitungan “total”
•
Jika pilih=b atau pilih=B maka inputkan (total pemakaian)
Selanjutnya jika total pemakaian>=100 maka hitung : abond=pakai-100 biaya=35000+175000+3250*abond pajak=0.1*biaya total=biaya+pajak tampilkan (output) perhitungan “total”
Selanjutnya jika total pemakaian<150 maka hitung : biaya= 35000+175000; 35000+175000; pajak=0.1*biaya; total=biaya+pajak; tampilkan (output) perhitungan “total”
•
Jika pilih=C atau pilih=c maka inputkan (total pemakaian)
Selanjutnya jika total pemakaian>=75 maka hitung : abond=pakai-75 biaya=20000+112500+2750*abond pajak=0.1*biaya total=biaya+pajak tampilkan (output) perhitungan “total”
Selanjutnya jika total pemakaian<75 maka hitung : biaya= 20000+112500 20000+112500 pajak=0.1*biaya total=biaya+pajak tampilkan (output) perhitungan “total”
biaya=50000+33750 biaya=35000+17500 abond=pakai-150 abond=pakai-100 Input If Output If (pilih==b (pilih==a (pilih (pilih==c (pilih= pakai) ==a ==b =c ||sta pilih=A) pilih=B) pilih=C) en Input Inpu t( ((total) pilih) biaya=50000+33750 biaya=35000+17500 0 0; pakai>=100 pakai>=150 pa Pakai<150 Pakai<100 Pakai>=100 kai>=150 kai<150 kai<100 rt d pajak=0.1*biaya; 0+4750*abond 0+3250*abond pajak=0.1*biaya total=biaya+pajak; total=biaya+pajak
2. Sebu Sebuah ah oper operat ator or selu selule lerr memp mempun unya yaii dua dua buah buah prog progra ram m NELP NELPON ON SUKA SUKA-S -SUK UKA A dan dan NELP NELPON ON HEMAT. Buatlah sebuah program yang menghitung biaya percakapan sesuai dengan pilihan-pilihan tersebut. Berikut ini adalah aturan masing-masing pilihan: a. NELPON SUKA-SUKA •
Untuk 60 detik pertama, tarif percakapan Rp. 15,-/detik
•
T 25 menit pertama, tarif percakapan Rp. 1,5-/ T detik Setelah 60 detik berikutnya sampai
•
Setelah 25 menit pertama sampai terakhir, tarif percakapan Rp, 3,-/detik Input program ini berupa lama percakapan dalam satuan menit, sedangkan outputnya berupa biaya percakapan total. y b. NELPON HEMAT
y
y
•
Untuk 90 detik pertama, tarif percakapan Rp. 10,-/detik
•
Setelah 90 detik berikutnya sampai 30 menit pertama, tarif percakapan Rp. 1,-/ detik
•
Setelah 30 menit pertama sampai terakhir, tarif percakapan Rp, 5,-/detik Buatlah sebuah menu pilihan yang akan digunakan untuk untuk memilih satu diantara 2 jenis program T T waktu T “nelpon” tersebut. Yang menjadi input dari program tersebut adalah pilihan menu dan total percakapan (dalam satuan detik) y Contoh Tampilan y Menu :
y
PROGRAM NELPON SUPER MURAAAAHHHHH !!! PILIH MENU BERIKUT ======================================== 1. Nelp Nelpon on SUKA SUKA_S _SUK UKA A 2. Nelp Nelpon on HEM HEMAT 3. Keluar Pilihan Anda Adalah = 1 Masukkan Total Waktu Percakapan (detik) = 71 Total Biaya Percakapan = Rp. 1065,-
y
y
y
JAWABAN: 1. SOURCE CO CODE #include main() { int menu; float lama,total,abond; printf("\t\t\t PROGRAM NELPON SUPER MURAAAAHHHHH !!! \n\n"); printf("\t PILIH MENU BERIKUT \n "); printf("===================================================================== ========= \n"); printf("1. NELPON suka suka \n"); printf("2. NELPON HEMAT \n"); printf("pilihan anda :"); scanf("%d",&menu); printf("lama bicara(detik) : "); scanf("%f",&lama); if (menu==1) { if (lama<=60) { total=lama*15; printf("biaya total: Rp%.2f",total); } else if (lama>60 && lama<=1500) { abond=lama-60; total=abond*1.5+900; printf("biaya total: Rp%.2f",total); } else if (lama>1500) { abond=lama-1500; total=abond*3+3060; printf("biaya total: Rp%.2f",total); } }
if (menu==2) { if (lama<=90) { total=lama*10; printf("biaya total: Rp%.2f",total); }
else if (lama>90 && lama<=1800) { abond=lama-90; total=abond*1+900; printf("biaya total: Rp%.2f",total); } else if (lama>1800) { abond=lama-1800; total=abond*5+2610; printf("biaya total: Rp%.2f",total); } } }
2. ALGORITMA •
Input (menu)
•
Input (waktu)
•
Jika menu=1 Selanjutnya jika waktu<=60 maka hitung : total= waktu*15 tampilkan (output) perhitungan “total” Selanjutnya jika waktu>60 dan waktu<=1500 bersih=waktu-60; total=bersih*1.5+900 tampilkan (output) perhitungan “total” Selanjutnya jika waktu>1500 bersih=waktu-1500 total=bersih*3+3060 tampilkan (output) perhitungan “total”
•
Jika menu=2 Selanjutnya jika waktu<=90 maka hitung : total= waktu*10 tampilkan (output) perhitungan “total” Selanjutnya jika waktu>90 dan waktu<=1800 bersih=waktu-90; total=bersih*1+900 tampilkan (output) perhitungan “total” Selanjutnya jika waktu>1800 bersih=waktu-1800 total=bersih*5+2610 tampilkan (output) perhitungan “total”
1. FLOWCHART
start
Input ( menu)dan (waktu)
3. If (menu==1)
If (menu==2)
T
y If Waktu <=60
y
T
y
If If Waktu>6o&&waktu<=1500 Waktu>1500 T
y
If Waktu<=90
y
total= waktu*15
bersih=waktu -60 total=bersih* 1.5+900
bersih=waktu1500 total=bersih*3 +3060
Output (total)
Output (total)
Output (total)
y total= waktu*10
Output (total)
end en d
If If Waktu>90&&waktu<=1800 Waktu
T
T
y
y
bersih=waktu bersih=waktu -1800 -90 total=bersih* total=bersih* 5+2610 1+900
Output (total)
Output (tot
JAWABAN: 1. SOURCE CO CODE #include #include main() { float a,b,c,Diskrim,x1,x2; printf("masukan nilai a : \n"); scanf("%f",&a); printf("masukan nilai b : \n"); scanf("%f",&b); printf("masukan nilai c : \n"); scanf("%f",&c); Diskrim=b*b-4*a*c; printf("nilai diskriminan (D)= %.2f \n",Diskrim); if (Diskrim==0) { x1=(-1*b)/2; printf("terdapat akar akar kembar X1=X2=%.2f",x1); } else if (Diskrim>0) { x1=(-b+sqrt(Diskrim))/2*a; x2=(-b-sqrt(Diskrim))/2*a; printf("hasil akar akar x1=%f dan x2=%f",x1,x2); } else if (Diskrim<0) { x1=-b/2*a+(sqrt(-1*Diskrim)/2*a); x2=-b/2*a-(sqrt(-1*Diskrim)/2*a); printf("hasil akar akar x1=%f dan x2=%f",x1,x2); } }
2. ALGORITMA •
Input (a,b,c)
•
Hitung D = b*b-4*a*c
•
Output “D” / tampilkan hasil dari D
•
Jika D = 0 Hitung
x1=(-1*b)/2
Tampilkan /output hasil dari X1 yaitu x1 = x2 •
Jika D > 0 Hitung
x1=(-b+sqrt(D))/2*a x2=(-b-sqrt(D))/2*a
Tampilkan /output hasil dari x1 dan x2 •
Jika D < 0
•
hitung
x1=-b/2*a+(sqrt(-1*D)/2*a) x2=-b/2*a-(sqrt(-1*D)/2*a)
Tampilkan /output hasil dari x1 dan x2
1. FLOWCHART
start
Input ( a,b,c)
D=b*b-4*a*c
Output(D)
IF (D>0)
IF (D==0) T
y x1=(-1*b)/2
output ( x1 )
IF (D<0) T
y x1=(-b+sqrt(D))/2*a x2=(-b-sqrt(D))/2*a
output ( x1 dan x2 )
end en d
y x1=-b/2*a+(sqrt(-1*D)/2*a) x2=-b/2*a-(sqrt(-1*D)/2*a)
output ( x1 dan x2 )
IV.KESIMPULAN
Setelah Setelah penyus penyusun un menyel menyelesa esaika ikan n lapora laporan n PERCAB PERCABANG ANGAN AN ini,ma ini,maka ka penyus penyusun un dapat dapat menyimpulkan bahwa pemrogaman dengan Bahasa pemrograman C dalam materi percabangan terdapat 2 macam yaitu if dan switch case, tetapi keduanya relatif sama. Kedua macam perintah tersebut tersebut berjalan dengan cara (if) dipakai untuk mengambil mengambil keputusan keputusan berdasarkan berdasarkan suatu kondisi. kondisi. Jika kondisi yang diuji tersebut benar, maka program program akan menjalankan menjalankan pernyataan-pe pernyataan-penyata nyataan an tertentu. Jika kondisinya salah, maka program yang dijalankan.
Di dalam dalam if juga juga terda terdapa patt pola pola Nest Nested ed IF atau atau IF bers bersar aran ang g adal adalah ah sala salah h satu satu bent bentuk uk percabangan (branch) dimana didalam IF terdapat IF lagi. Hal utama yang harus diingat tentang nested if di C++ adalah bahwa suatu pernyataan lain selalu mengacu pada if statement terdekat yang berada dalam blok yang sama seperti yang lain dan belum terkait dengan yang lain.