1DECISION MAKINGCONSTRUCTSStruktur ini digunakan untuk menguji suatu kondisi, kemudianmelaksana- kan satu urutan perintah....
2if ( kondisi ){pernyataan_1;pernyataan_2;…pernyataan_n;}Contoh :- if ( detik == 60 ) menit = menit + 1 ;- if ( Angka % 2 ...
3 Kondisi digunakan untuk menentu- kan pengambilankeputusan, dan operator yang digunakan pada kondisiadalah Relational da...
4// Menguji dan Menampilkan dataif ( Angka % 2 ) // if ( Angka % 2 != 0 )cout << "Bilangan Ganjil ! n";getch();}Perintah i...
5Pada bentuk ini, bila kondisi bernilai benar (tidak sama dengan NOL) makablok_-pernyataan_1 akan dijalankan. Bilakondisi ...
6if ( Pembagi ) { // if ( Pembagi != 0 )Hasil = Nilai / Pembagi;cout << “Hasil bagi = “ << Hasil << ‘  n’; }else {Hasil = ...
Constructs - Yessy Asri 7Kar = toupper( Kar ); // ubah isi Kar menjadi huruf besarif ( Kar >= ‘A’ && Kar <= ‘Z’ )cout << "...
8Contoh :float Nilai;cout << “Masukkan Nilai ujian = “; cin >> Nilai;if ( Nilai >= 85 && Nilai <= 100 )cout << “Grade A n...
9Contoh Program C++ :#include <iostream.h>#include <conio.h>void main(){char Kar;clrscr(); // Hapus Layarcout << “Masukkan...
10Contoh Program C++ :#include <iostream.h>#include <conio.h>void main(){char Kar;clrscr(); // Hapus Layarcout << “Masukka...
Constructs - Yessy Asri 11#include <stdio.h>#include <conio.h>main(){long int rupiah,hasil;int kurs;clrscr();printf ("masu...
12 Bentuk Umum IF Bersarangif (kondisi1)if (kondisi2)….if (kondisi-n) statemen;elsestatement;elsestatement;elsestatement;...
Constructs - Yessy Asri 13Contoh:#include <stdio.h>#include <conio.h>main(){int a, b,c;clrscr();cout<<“masukan nilai a dan...
Constructs - Yessy Asri 14SoalSusun program untuk menginput 4 (empat) buah bilangan bulat,(dianggap ketiga buah bilangan t...
Constructs - Yessy Asri 15#include <iostream.h>void main(){int A,B,C,D;cin >> A >> B >> C >> D;if(A > B){if(A > C){if(A > ...
Constructs - Yessy Asri 16//seleksi spg dengan if tersarang#include<iostream.h>#include<conio.h>void main(){int usia;clrsc...
Constructs - Yessy Asri 17//seleksi rating berdasar badan sensor film#include<iostream.h>#include<conio.h>void main(){int ...
Constructs - Yessy Asri 18Perintah switch Perintah ini memiliki bentuk switch – case, yang digunakan untukpilihan berjuml...
Constructs - Yessy Asri 19Hal – hal yang perlu diperhatikan adalah :1.Dibelakang keyword case harus diikuti oleh sebuah ko...
Constructs - Yessy Asri 20//Program menu hitung Segi empat#include<iostream.h>#include<conio.h>#include<math.h>#include<io...
Constructs - Yessy Asri 21switch(pil){case 1:{cout<<"Panjang ? ";cin >> panjang;cout<<"Lebar ? ";cin >> lebar;luas = panja...
Constructs - Yessy Asri 22case 3:{cout<<"Panjang ? ";cin >> panjang;cout<<"Lebar ? ";cin >> lebar;diag = sqrt((panjang*pan...
23#include <stdio.h>#include <conio.h>void main(){int nil,a;clrscr();cout<<“masukkan nilai 1-3 ? ";cin>>nil;cout<<“masukka...
Constructs - Yessy Asri 24#include <stdio.h>#include <conio.h>main(){int pilihan;float konversi,rupiah;clrscr();printf("ma...
25LOOPS Pengulangan (Loops) merupakan fasilitas bahasa C++yang mampu melakukan proses yang berulang, karena itukomputer d...
26Contoh :for ( int i = 0; i < 10; i++ )cout << “Kuadrat dari “ << i << “ = “<< i * i << “n”;·Contoh Program C++ :#include...
27cout << “Jumlah semua bilangan dari “ << first << “ s/d “ << last << “ = “<< sumx << “n”;cout << “Rata-rata nilai = “ <<...
28for ( ; ; ){ cout << “nMasukkan satu bilangan = “; cin >> x;if ( x != 0 ){ y = 1 / x;cout << “1/(“ << x << “) = “ << y <...
29Syntax :do{ blok_pernyataan; }while ( kondisi );Contoh :int i = 2;do{ cout << i << “^2 = “ << i * i << “n”; }while ( ++i...
30While Loop Loop ini juga merupakan conditional loop, dimana kondisipengulangan diuji pada awal blok pengulangan. Pada ...
31Contoh Program C++:#include <iostream.h>#include <conio.h>void main(){ doubleint first, last, temp, i;cout << “Masukkan ...
32// Menampilkan Hasilcout << “Jumlah semua bilangan dari “<< first << “ s/d “ << last << “ = “<< sumx << “n”;cout << “Rat...
331. Buat flowchart untuk menentukan bilangan terbesar diantara 2 variabelsetelah itu buat flowchart kembali untuk 3 varia...
Constructs - Yessy Asri 34PRE TEST1.Buatlah Program Untuk Mendeteksi Suatu bilangan apakah bilangan ganjilatau bilangan ge...
Constructs - Yessy Asri 35#include<iostream.h>#include<conio.h>void main(){float nilai;char indeks;clrscr();cout<<”Nilai u...
Upcoming SlideShare
Loading in …5
×

Pertemuan iv

464 views

Published on

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
464
On SlideShare
0
From Embeds
0
Number of Embeds
75
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Pertemuan iv

  1. 1. 1DECISION MAKINGCONSTRUCTSStruktur ini digunakan untuk menguji suatu kondisi, kemudianmelaksana- kan satu urutan perintah.Konstruksi pilihan (decision making constructs) dalam C++ meliputi : Perintah if. Perintah if - else. Perintah switch.Perintah ifC++ tidak memiliki kata kunci (Keyword) then padakonstruksi perintah if.Syntax :if ( kondisi )pernyataan;atau
  2. 2. 2if ( kondisi ){pernyataan_1;pernyataan_2;…pernyataan_n;}Contoh :- if ( detik == 60 ) menit = menit + 1 ;- if ( Angka % 2 == 0 )cout << “Bilangan Genap ! n”;- if ( sisi > 0 ){Luas = Panjang * Lebar;Isi = Luas * Tinggi; }
  3. 3. 3 Kondisi digunakan untuk menentu- kan pengambilankeputusan, dan operator yang digunakan pada kondisiadalah Relational dan Logical Operators. Pernyataan dapat berupa sebuah pernyataan ataupunpernyataan majemuk atau Blok Pernyataan (terdiri daridua atau lebih pernyataan). Bagian ini dijalankan hanyajika kondisi bernilai benar (bernilai tidak sama dengan NOL). Pernyataan majemuk (Blok Pernyataan) harus diapittanda { dan }.Contoh Program C++ :// -- Prog-4-1.cpp - Pernyataan if#include <iostream.h>#include <conio.h>void main(){int Angka; // Deklarasi Variabelclrscr(); // Hapus Layar// Memasukkan data dari keyboardcout << "Masukkan bilangan bulat = ";cin >> Angka;
  4. 4. 4// Menguji dan Menampilkan dataif ( Angka % 2 ) // if ( Angka % 2 != 0 )cout << "Bilangan Ganjil ! n";getch();}Perintah if – else Perintah ini memberikan satu alternatif dari duakemungkinan, kemudian diikuti dengan urutan perintah sebagai hasiluji boolean.Syntax :if ( kondisi ){blok_pernyataan_1;}else{ blok_pernyataan_2; }
  5. 5. 5Pada bentuk ini, bila kondisi bernilai benar (tidak sama dengan NOL) makablok_-pernyataan_1 akan dijalankan. Bilakondisi bernilai salah(sama dengan NOL ) maka blok_pernyataan_2 yang akandijalankan.Contoh :if ( Angka % 2 != 0 )cout << “Bilangan Ganjil ! n”;elsecout << “Bilangan Genap ! n”;atauif ( Angka % 2 )cout << “Bilangan Ganjil ! n”;elsecout << “Bilangan Genap ! n
  6. 6. 6if ( Pembagi ) { // if ( Pembagi != 0 )Hasil = Nilai / Pembagi;cout << “Hasil bagi = “ << Hasil << ‘ n’; }else {Hasil = 0;cout << “Hasil tidak ada – pembagi = “<< Pembagi << ‘n’; }Contoh program C++ :#include <iostream.h>#include <conio.h>#include <ctype.h>int main(){char Kar; // Deklarasi Variabelclrscr(); // Hapus Layar cout << "Masukkan satu karakter = "; cin >> Kar;
  7. 7. Constructs - Yessy Asri 7Kar = toupper( Kar ); // ubah isi Kar menjadi huruf besarif ( Kar >= ‘A’ && Kar <= ‘Z’ )cout << "Masukan Anda adalah huruf ! n";elsecout << “Masukan Anda bukan huruf ! n”;getch();return 0;}Perintah Multiple if – else C++ memberikan fasilitas nested if – else untuk mendukungfleksibilitas dalam program aplikasi.Syntax :if ( kondisi_1 ){ blok_perintah_1; }else if ( kondisi_2 ){ blok_perintah_2; }else if ( kondisi_3 ){ blok_perintah_3; }…else{ blok_perintah_n; }
  8. 8. 8Contoh :float Nilai;cout << “Masukkan Nilai ujian = “; cin >> Nilai;if ( Nilai >= 85 && Nilai <= 100 )cout << “Grade A n”;else if ( Nilai >= 75 )cout << “Grade B n”;else if ( Nilai >= 65 )cout << “Grade C n”;else if ( Nilai >= 55 )cout << “Grade D n”;elsecout << “Grade E n”;
  9. 9. 9Contoh Program C++ :#include <iostream.h>#include <conio.h>void main(){char Kar;clrscr(); // Hapus Layarcout << “Masukkan satu karakter : “; cin >> Kar;if ( Kar >= ‘A’ && Kar <= ‘Z’ )cout << “Masukan Anda adalah huruf besar n”;else if ( Kar >= ‘a’ && Kar <= ‘z’ )cout << “Masukan Anda adalah huruf kecil n”;else if ( Kar >= ‘0’ && Kar <= ‘9’ )cout << “Masukan Anda adalah satu angka n”;elsecout << “Masukan Anda bukan alphanumericn”;getch();}
  10. 10. 10Contoh Program C++ :#include <iostream.h>#include <conio.h>void main(){char Kar;clrscr(); // Hapus Layarcout << “Masukkan satu karakter : “; cin >> Kar;if ( Kar >= ‘A’ && Kar <= ‘Z’ )cout << “Masukan Anda adalah huruf besar n”;else if ( Kar >= ‘a’ && Kar <= ‘z’ )cout << “Masukan Anda adalah huruf kecil n”;else if ( Kar >= ‘0’ && Kar <= ‘9’ )cout << “Masukan Anda adalah satu angka n”;elsecout << “Masukan Anda bukan alphanumericgetch(); }
  11. 11. Constructs - Yessy Asri 11#include <stdio.h>#include <conio.h>main(){long int rupiah,hasil;int kurs;clrscr();printf ("masukkan nilai rupiah : ");scanf ("%ld", &rupiah);printf ("masukkan nilai kurs : ");scanf ("%d", &kurs);if (kurs == 1){hasil = rupiah / 10000;printf ("hasil = %ld dollar",hasil);}else if (kurs == 2){hasil = rupiah / 5000;printf ("hasil = %ld Yen", hasil);}else {hasil = rupiah / 3000;printf ("hasil = %ld Pesso", hasil);}getch();}
  12. 12. 12 Bentuk Umum IF Bersarangif (kondisi1)if (kondisi2)….if (kondisi-n) statemen;elsestatement;elsestatement;elsestatement;Deskripsi1. input a dan b2. if (a < 10)if (b > 8) then{ c  a + bwite (c) }else { c  a – bwrite (c) }else { c  a * bwrite (c) }If tersarang (nested if) merupakan bentuk dari suatu statement if yang beradadi dalamlingkungan statement if lainnya. Bentuk notasi algoritma statement if tersarangadalah sebagai berikut:
  13. 13. Constructs - Yessy Asri 13Contoh:#include <stdio.h>#include <conio.h>main(){int a, b,c;clrscr();cout<<“masukan nilai a dan b : ";cin>>a; cin>>b;if (a < 10)if (b > 8){ c = a + b;printf (" nilai c = %d",c);}else {c = a - b;printf (" nilai c = %d",c);}else {c = a * b;printf (" nilai c = %d",c);}getche();}
  14. 14. Constructs - Yessy Asri 14SoalSusun program untuk menginput 4 (empat) buah bilangan bulat,(dianggap ketiga buah bilangan tersebut nilainya tidak sama satudengan yang lain), kemudian mencetak salah satu bilangan yangnilainya terbesar. Menggunakan Nested If
  15. 15. Constructs - Yessy Asri 15#include <iostream.h>void main(){int A,B,C,D;cin >> A >> B >> C >> D;if(A > B){if(A > C){if(A > D)cout << A;elsecout << D;}else{if(C > D)cout << C;elsecout << D;}}elseelse{if (B > C){if(B > D)cout << B;elsecout << D;}else{if(C > D)cout << C;elsecout << D;}}}
  16. 16. Constructs - Yessy Asri 16//seleksi spg dengan if tersarang#include<iostream.h>#include<conio.h>void main(){int usia;clrscr();cout<<"Umur ? ";cin>>usia;if(usia > 17)if(usia < 30)cout<<"Diterima"<<endl;else //(usia >= 30)cout<<"Ditolak"<<endl;else //(usia <= 17)cout<<"Ditolak"<<endl;}
  17. 17. Constructs - Yessy Asri 17//seleksi rating berdasar badan sensor film#include<iostream.h>#include<conio.h>void main(){int rating;clrscr();cout<<"Rating ? ";cin>>rating;if(rating >= 12)if(rating < 18){cout<<"Remaja"<<endl;cout<<"Bimbingan orang tua"<<endl;}else //(usia >= 18)cout<<"Dewasa"<<endl;else //(usia < 12)cout<<"Semua umur"<<endl;}
  18. 18. Constructs - Yessy Asri 18Perintah switch Perintah ini memiliki bentuk switch – case, yang digunakan untukpilihan berjumlah banyak. Perintah tersebut di atas tidak dianjurkan padapilihan yang melibatkan jangkauan nilai (range ), tetapidianjurkan pada pilihan berupa konstanta dan banyak,misalnya: untuk memilih menu.Syntax :switch ( pernyataan ){case konstan_1:blok_pernyataan_1;break ;case konstan_2:blok_pernyataan_2;break ;…default:blok_pernyataan_n;}
  19. 19. Constructs - Yessy Asri 19Hal – hal yang perlu diperhatikan adalah :1.Dibelakang keyword case harus diikuti oleh sebuah konstanta, tidakboleh diikuti oleh ekspresi ataupun variable.2.Konstanta yang digunakan bertipe int atau char3.Jika bentuknya seperti diatas maka apabila ekspresi sesuai dengankonstanta2 maka pernyataan2, pernyataan3 sampai dengan pernyataanlain dieksekusi. Untuk mencegah hal tersebut, gunakan keyword break;.4.Jika keyword break digunakan maka setelah pernyataan2 dieksekusiprogram langsung keluar dari pernyataan switch.5.Selain digunakan dalam switch, keyword break banyak digunakanuntuk keluar dari pernyataan yang berulang ( looping ).6.Pernyataan lain dieksekusi jika konstanta1 sampai konstantaN tidakada yang memenuhi ekspresi
  20. 20. Constructs - Yessy Asri 20//Program menu hitung Segi empat#include<iostream.h>#include<conio.h>#include<math.h>#include<iomanip.h>void main(){int pil;float panjang,lebar,luas,kel,diag;clrscr();cout<<"============================="<<endl;cout<<setw(5)<<""<<"MENU UTAMA"<< endl;cout<<"============================="<<endl;cout<<"1. Hitung Luas "<<endl;cout<<"2. Hitung Keliling "<<endl;cout<<"3. Hitung Diagonal "<<endl;cout<<"4. Keluar Program "<<endl;cout<<"============================="<<endl;cout<<"Pilih nomor menu (1/2/3/4): ";cin >> pil;cout<<"============================="<<endl;
  21. 21. Constructs - Yessy Asri 21switch(pil){case 1:{cout<<"Panjang ? ";cin >> panjang;cout<<"Lebar ? ";cin >> lebar;luas = panjang*lebar;cout<<"Luas segiempat = " <<luas<<endl;break;}case 2:{cout<<"Panjang ? ";cin >> panjang;cout<<"Lebar ? ";cin >> lebar;kel = 2*panjang*lebar;cout<<"Keliling segiempat = " <<kel<<endl;break;}
  22. 22. Constructs - Yessy Asri 22case 3:{cout<<"Panjang ? ";cin >> panjang;cout<<"Lebar ? ";cin >> lebar;diag = sqrt((panjang*panjang)+(lebar*lebar));cout<<"Diagonal segiempat = " <<diag<<endl;break;}case 4:cout<<"Keluar program...bye2" << endl;break;default:cout<<"Anda salah memilih nomor menu..!!!"<< endl;break;}}
  23. 23. 23#include <stdio.h>#include <conio.h>void main(){int nil,a;clrscr();cout<<“masukkan nilai 1-3 ? ";cin>>nil;cout<<“masukkan nilai a : “;cin>>a;switch (nil){case 1 :a = a + 2;break;case 2 :a = a + 4;// break;case 3 :a = a + 6;break;default:cout<<“salah inputn";}cout<<"nilai a = “<<a;getche();}
  24. 24. Constructs - Yessy Asri 24#include <stdio.h>#include <conio.h>main(){int pilihan;float konversi,rupiah;clrscr();printf("masukan nilai rupiah : ");scanf("%f",&rupiah);printf("masukkan pilihan konversi : ");scanf ("%d",&pilihan);switch (pilihan){case 1 :konversi = rupiah / 10000;printf ("%.2f rupiah = %.2f dollar",rupiah,konversi);break;case 2 :konversi = rupiah / 5000;printf ("%.2f rupiah = %.2f Yen",rupiah,konversi);break;case 3:konversi = rupiah / 3000;printf ("%.2f rupiah = %.2f Pesso",rupiah,konversi);break;default :printf ("input pilhan salahan ");}getche();}
  25. 25. 25LOOPS Pengulangan (Loops) merupakan fasilitas bahasa C++yang mampu melakukan proses yang berulang, karena itukomputer dapat mengerjakan proses berulang-ulangdengan cepat, tepat dan tanpa lelah. Konstruksi pengulangan dalam C++ meliputi :Perintah forPerintah do – whilePerintah whileFor Loop C++ memiliki dua jenis pengulangan for – fixed dan conditional.Syntax : for ( <inisialisasi variabel pengulangan>; <kondisi>;<penambahan/pengurangan> ) { blok_pernyataan; }
  26. 26. 26Contoh :for ( int i = 0; i < 10; i++ )cout << “Kuadrat dari “ << i << “ = “<< i * i << “n”;·Contoh Program C++ :#include <iostream.h>main(){ double sum, sumx=0.0;int first, last, temp;cout << “Masukkan bilangan pertama = “; cin >> first;cout << “Masukkan bilangan kedua = “; cin >> last;if ( first > last ){ temp = first;first = last;last = temp;}for ( int i = first; i <= last; i++ ){ sum++; sumx += (double) i; }
  27. 27. 27cout << “Jumlah semua bilangan dari “ << first << “ s/d “ << last << “ = “<< sumx << “n”;cout << “Rata-rata nilai = “ << sumx / sum;return 0;}Infinite Loop C++ mengijinkan pembentukan infinite loop / open loop,dengan menghilangkan ketiga parameter yang ada pada forloop.Contoh Program C++ :#include <iostream.h>#include <conio.h>#include <ctype.h>void main(){ char ch;double x, y;
  28. 28. 28for ( ; ; ){ cout << “nMasukkan satu bilangan = “; cin >> x;if ( x != 0 ){ y = 1 / x;cout << “1/(“ << x << “) = “ << y << “n”;cout << “Hitung lagi ? (Y/N) .. “; cin >> ch;ch = toupper (ch);if ( ch != ‘Y’ ) break ;}elsecout << “Error: cannot accept 0 n”;}getch();}do-while Loop Loop ini dikenal dengan nama conditional loop, dimanakondisi pengulangan diperiksa pada akhir blok loop.
  29. 29. 29Syntax :do{ blok_pernyataan; }while ( kondisi );Contoh :int i = 2;do{ cout << i << “^2 = “ << i * i << “n”; }while ( ++i < 11 );int i = 0;do{ cout << “Selamat Belajar PBO n”;if ( i % 20 == 0 ) { i = 0; getch(); }} while ( i++ >= 0 );
  30. 30. 30While Loop Loop ini juga merupakan conditional loop, dimana kondisipengulangan diuji pada awal blok pengulangan. Pada pengulangan dengan perintah while loop kemungkinantidak ada satu pernyataanpun yang akan dikerjakan bilakondisinya bernilai salah (sama dengan nol). Sedang pada pengulangan menggunakan do-whileloop, memungkinkan minimal ada satu pernyataan yangakan dikerjakan bila kondisinya bernilai salah (sama dengannol).Syntax :while ( kondisi ){blok_pernyataan;}
  31. 31. 31Contoh Program C++:#include <iostream.h>#include <conio.h>void main(){ doubleint first, last, temp, i;cout << “Masukkan bilangan pertama = “; cin >> first;cout << “Masukkan bilangan kedua = “; cin >> last;if ( first > last ){ temp = first; first = last; last = temp; }i = first;while ( i <= last ){ sum++;sumx += (double) i++;}
  32. 32. 32// Menampilkan Hasilcout << “Jumlah semua bilangan dari “<< first << “ s/d “ << last << “ = “<< sumx << “n”;cout << “Rata -rata nilai = “ << sumx / sum;getch();}Latihan :Buat program C++ dengan menggunakan whileloop untuk menghitung dan menampilkan jumlahbilangan genap dari 11 s/d 121.
  33. 33. 331. Buat flowchart untuk menentukan bilangan terbesar diantara 2 variabelsetelah itu buat flowchart kembali untuk 3 variabel2. Dalam Test masuk terdapat 2 mata kuliah x dan y. Prestasi dihitung 60%dari x dan 40% dari yCtetapi lebih atau sama dengan 50. Selain itu tidakditerima. Tentukan bagaimana keadaan seorang calon. Buatprogramnya.3. Buatlah Program untuk menghitung total pembayaran dari pembelianseorang pelanggan toko. Dalam masalah ini ada ketentuan, apabila pembelianpelanggan tersebut sama dengan atau melebihi 100.000 , maka pelangganmendapat discount 10%, jika tidak pelanggan tersebut hanya mendapatdiscount 5 %4. Buatlah Program menu untuk menghitung nilai konversi uang dalam bentukDollar, Pesso dan Yen. Adapun inputannya adalah Rupiah dan pilihan konversidengan rumus :dollar = Rupiah / 10000Yen = Rupiah / 5000Pesso = Rupiah / 3000
  34. 34. Constructs - Yessy Asri 34PRE TEST1.Buatlah Program Untuk Mendeteksi Suatu bilangan apakah bilangan ganjilatau bilangan genapContoh:Masukkan Angka: 12Angka yang anda masukkan merupakan bilangan genap
  35. 35. Constructs - Yessy Asri 35#include<iostream.h>#include<conio.h>void main(){float nilai;char indeks;clrscr();cout<<”Nilai ujian ? “;cin>>nilai;if(nilai > 80)indeks = ‘A’;elseif(nilai > 69)indeks = ‘B’;elseif(nilai > 59)indeks = ‘C’;elseif(nilai > 49)indeks = ‘D’;else //nilai ≤ 49indeks = ‘E’;cout<<”Indeks = “<<indeks<<endl;}2. Pada Program disamping,Apakah Output yang dihasilkanbernilai ‘A’ jika kita menginputnilai ujian =101? mengapademikian? Jelaskan! Danperbaikilah perogram tersebutsehingga jika menginput nilai>100 maka output yangdihasilkan“Masukkan andasalah”

×