SlideShare una empresa de Scribd logo
1 de 35
1
DECISION MAKING
CONSTRUCTS
Struktur ini digunakan untuk menguji suatu kondisi, kemudian
melaksana- kan satu urutan perintah.
Konstruksi pilihan (decision making constructs) dalam C++ meliputi :
 Perintah if.
 Perintah if - else.
 Perintah switch.
Perintah if
C++ tidak memiliki kata kunci (Keyword) then pada
konstruksi perintah if.
Syntax :
if ( kondisi )
pernyataan;
atau
2
if ( 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
 Kondisi digunakan untuk menentu- kan pengambilan
keputusan, dan operator yang digunakan pada kondisi
adalah Relational dan Logical Operators.
 Pernyataan dapat berupa sebuah pernyataan ataupun
pernyataan majemuk atau Blok Pernyataan (terdiri dari
dua atau lebih pernyataan). Bagian ini dijalankan hanya
jika kondisi bernilai benar (bernilai tidak sama dengan NOL).
 Pernyataan majemuk (Blok Pernyataan) harus diapit
tanda { dan }.
Contoh Program C++ :
// -- Prog-4-1.cpp - Pernyataan if
#include <iostream.h>
#include <conio.h>
void main()
{
int Angka; // Deklarasi Variabel
clrscr(); // Hapus Layar
// Memasukkan data dari keyboard
cout << "Masukkan bilangan bulat = ";
cin >> Angka;
4
// Menguji dan Menampilkan data
if ( Angka % 2 ) // if ( Angka % 2 != 0 )
cout << "Bilangan Ganjil ! n";
getch();
}
Perintah if – else
 Perintah ini memberikan satu alternatif dari dua
kemungkinan, kemudian diikuti dengan urutan perintah sebagai hasil
uji boolean.
Syntax :
if ( kondisi )
{
blok_pernyataan_1;
}
else
{ blok_pernyataan_2; }
5
Pada bentuk ini, bila kondisi bernilai benar (tidak sama dengan NOL) maka
blok_-pernyataan_1 akan dijalankan. Bilakondisi bernilai salah
(sama dengan NOL ) maka blok_pernyataan_2 yang akan
dijalankan.
Contoh :
if ( Angka % 2 != 0 )
cout << “Bilangan Ganjil ! n”;
else
cout << “Bilangan Genap ! n”;
atau
if ( Angka % 2 )
cout << “Bilangan Ganjil ! n”;
else
cout << “Bilangan Genap ! n
6
if ( 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 Variabel
clrscr(); // Hapus Layar
 cout << "Masukkan satu karakter = "; cin >> Kar;
Constructs - Yessy Asri 7
Kar = toupper( Kar ); // ubah isi Kar menjadi huruf besar
if ( Kar >= ‘A’ && Kar <= ‘Z’ )
cout << "Masukan Anda adalah huruf ! n";
else
cout << “Masukan Anda bukan huruf ! n”;
getch();
return 0;
}
Perintah Multiple if – else
 C++ memberikan fasilitas nested if – else untuk mendukung
fleksibilitas 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
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”;
else
cout << “Grade E n”;
9
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{
char Kar;
clrscr(); // Hapus Layar
cout << “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”;
else
cout << “Masukan Anda bukan alphanumericn”;
getch();
}
10
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{
char Kar;
clrscr(); // Hapus Layar
cout << “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”;
else
cout << “Masukan Anda bukan alphanumeric
getch(); }
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
 Bentuk Umum IF Bersarang
if (kondisi1)
if (kondisi2)
….
if (kondisi-n) statemen;
else
statement;
else
statement;
else
statement;
Deskripsi
1. input a dan b
2. if (a < 10)
if (b > 8) then
{ c  a + b
wite (c) }
else { c  a – b
write (c) }
else { c  a * b
write (c) }
If tersarang (nested if) merupakan bentuk dari suatu statement if yang berada
di dalam
lingkungan statement if lainnya. Bentuk notasi algoritma statement if tersarang
adalah sebagai berikut:
Constructs - Yessy Asri 13
Contoh:
#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();
}
Constructs - Yessy Asri 14
Soal
Susun program untuk menginput 4 (empat) buah bilangan bulat,
(dianggap ketiga buah bilangan tersebut nilainya tidak sama satu
dengan yang lain), kemudian mencetak salah satu bilangan yang
nilainya terbesar. Menggunakan Nested If
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;
else
cout << D;
}
else
{if(C > D)
cout << C;
else
cout << D;
}
}
else
else
{if (B > C)
{if(B > D)
cout << B;
else
cout << D;
}
else
{if(C > D)
cout << C;
else
cout << D;
}
}
}
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;
}
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;
}
Constructs - Yessy Asri 18
Perintah switch
 Perintah ini memiliki bentuk switch – case, yang digunakan untuk
pilihan berjumlah banyak.
 Perintah tersebut di atas tidak dianjurkan pada
pilihan yang melibatkan jangkauan nilai (range ), tetapi
dianjurkan 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;
}
Constructs - Yessy Asri 19
Hal – hal yang perlu diperhatikan adalah :
1.Dibelakang keyword case harus diikuti oleh sebuah konstanta, tidak
boleh diikuti oleh ekspresi ataupun variable.
2.Konstanta yang digunakan bertipe int atau char
3.Jika bentuknya seperti diatas maka apabila ekspresi sesuai dengan
konstanta2 maka pernyataan2, pernyataan3 sampai dengan pernyataan
lain dieksekusi. Untuk mencegah hal tersebut, gunakan keyword break;.
4.Jika keyword break digunakan maka setelah pernyataan2 dieksekusi
program langsung keluar dari pernyataan switch.
5.Selain digunakan dalam switch, keyword break banyak digunakan
untuk keluar dari pernyataan yang berulang ( looping ).
6.Pernyataan lain dieksekusi jika konstanta1 sampai konstantaN tidak
ada yang memenuhi ekspresi
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;
Constructs - Yessy Asri 21
switch(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;
}
Constructs - Yessy Asri 22
case 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
#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();
}
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
LOOPS
 Pengulangan (Loops) merupakan fasilitas bahasa C++
yang mampu melakukan proses yang berulang, karena itu
komputer dapat mengerjakan proses berulang-ulang
dengan cepat, tepat dan tanpa lelah.
 Konstruksi pengulangan dalam C++ meliputi :
Perintah for
Perintah do – while
Perintah while
For Loop
 C++ memiliki dua jenis pengulangan for – fixed dan conditional.
Syntax :
 for ( <inisialisasi variabel pengulangan>; <kondisi>;<penambahan/pengurangan> )
 { blok_pernyataan; }
26
Contoh :
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
cout << “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 for
loop.
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
#include <ctype.h>
void main()
{ char ch;
double x, y;
28
for ( ; ; )
{ 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 ;
}
else
cout << “Error: cannot accept 0 n”;
}
getch();
}
do-while Loop
 Loop ini dikenal dengan nama conditional loop, dimana
kondisi pengulangan diperiksa pada akhir blok loop.
29
Syntax :
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
While Loop
 Loop ini juga merupakan conditional loop, dimana kondisi
pengulangan diuji pada awal blok pengulangan.
 Pada pengulangan dengan perintah while loop kemungkinan
tidak ada satu pernyataanpun yang akan dikerjakan bila
kondisinya bernilai salah (sama dengan nol).
 Sedang pada pengulangan menggunakan do-while
loop, memungkinkan minimal ada satu pernyataan yang
akan dikerjakan bila kondisinya bernilai salah (sama dengan
nol).
Syntax :
while ( kondisi )
{
blok_pernyataan;
}
31
Contoh Program C++:
#include <iostream.h>
#include <conio.h>
void main()
{ double
int 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
// Menampilkan Hasil
cout << “Jumlah semua bilangan dari “<< first << “ s/d “ << last << “ = “
<< sumx << “n”;
cout << “Rata -rata nilai = “ << sumx / sum;
getch();
}
Latihan :
Buat program C++ dengan menggunakan while
loop untuk menghitung dan menampilkan jumlah
bilangan genap dari 11 s/d 121.
33
1. Buat flowchart untuk menentukan bilangan terbesar diantara 2 variabel
setelah itu buat flowchart kembali untuk 3 variabel
2. 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 tidak
diterima. Tentukan bagaimana keadaan seorang calon. Buat
programnya.
3. Buatlah Program untuk menghitung total pembayaran dari pembelian
seorang pelanggan toko. Dalam masalah ini ada ketentuan, apabila pembelian
pelanggan tersebut sama dengan atau melebihi 100.000 , maka pelanggan
mendapat discount 10%, jika tidak pelanggan tersebut hanya mendapat
discount 5 %
4. Buatlah Program menu untuk menghitung nilai konversi uang dalam bentuk
Dollar, Pesso dan Yen. Adapun inputannya adalah Rupiah dan pilihan konversi
dengan rumus :
dollar = Rupiah / 10000
Yen = Rupiah / 5000
Pesso = Rupiah / 3000
Constructs - Yessy Asri 34
PRE TEST
1.Buatlah Program Untuk Mendeteksi Suatu bilangan apakah bilangan ganjil
atau bilangan genap
Contoh:
Masukkan Angka: 12
Angka yang anda masukkan merupakan bilangan genap
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’;
else
if(nilai > 69)
indeks = ‘B’;
else
if(nilai > 59)
indeks = ‘C’;
else
if(nilai > 49)
indeks = ‘D’;
else //nilai ≤ 49
indeks = ‘E’;
cout<<”Indeks = “<<indeks<<endl;
}
2. Pada Program disamping,
Apakah Output yang dihasilkan
bernilai ‘A’ jika kita menginput
nilai ujian =101? mengapa
demikian? Jelaskan! Dan
perbaikilah perogram tersebut
sehingga jika menginput nilai
>100 maka output yang
dihasilkan“Masukkan anda
salah”

Más contenido relacionado

La actualidad más candente

Lapopran praktikum struktur data pertemuan 1 Tipe Data
Lapopran praktikum struktur data pertemuan 1  Tipe DataLapopran praktikum struktur data pertemuan 1  Tipe Data
Lapopran praktikum struktur data pertemuan 1 Tipe DataAdy Achirul
 
Lapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingLapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingAdy Achirul
 
Algoritma&Pemrograman C++ Pertemuan 6
Algoritma&Pemrograman C++ Pertemuan 6Algoritma&Pemrograman C++ Pertemuan 6
Algoritma&Pemrograman C++ Pertemuan 6Menny SN
 
Pertemuan 07 - Pemrograman C
Pertemuan 07 - Pemrograman CPertemuan 07 - Pemrograman C
Pertemuan 07 - Pemrograman CNurdin Al-Azies
 
07 elemen dasar c++ part 2
07   elemen dasar c++ part 207   elemen dasar c++ part 2
07 elemen dasar c++ part 2Budi Yono
 
07 elemen dasar c++ part 2
07   elemen dasar c++ part 207   elemen dasar c++ part 2
07 elemen dasar c++ part 2Budi Yono
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanTri Retna
 

La actualidad más candente (16)

Lapopran praktikum struktur data pertemuan 1 Tipe Data
Lapopran praktikum struktur data pertemuan 1  Tipe DataLapopran praktikum struktur data pertemuan 1  Tipe Data
Lapopran praktikum struktur data pertemuan 1 Tipe Data
 
Tugas alogaritma
Tugas alogaritmaTugas alogaritma
Tugas alogaritma
 
Prokom raw
Prokom rawProkom raw
Prokom raw
 
Lapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 SortingLapopran praktikum struktur data pertemuan 2 Sorting
Lapopran praktikum struktur data pertemuan 2 Sorting
 
Pt6 pt-loop komplek
Pt6 pt-loop komplekPt6 pt-loop komplek
Pt6 pt-loop komplek
 
Algoritma&Pemrograman C++ Pertemuan 6
Algoritma&Pemrograman C++ Pertemuan 6Algoritma&Pemrograman C++ Pertemuan 6
Algoritma&Pemrograman C++ Pertemuan 6
 
Pertemuan 07 - Pemrograman C
Pertemuan 07 - Pemrograman CPertemuan 07 - Pemrograman C
Pertemuan 07 - Pemrograman C
 
Fungsi dan Prosedur
Fungsi dan ProsedurFungsi dan Prosedur
Fungsi dan Prosedur
 
07 elemen dasar c++ part 2
07   elemen dasar c++ part 207   elemen dasar c++ part 2
07 elemen dasar c++ part 2
 
Modul 2 strukdat
Modul 2 strukdatModul 2 strukdat
Modul 2 strukdat
 
Tipe data
Tipe dataTipe data
Tipe data
 
07 elemen dasar c++ part 2
07   elemen dasar c++ part 207   elemen dasar c++ part 2
07 elemen dasar c++ part 2
 
modul algoritma Bab 5
modul algoritma Bab 5modul algoritma Bab 5
modul algoritma Bab 5
 
Algoritma pemrograman 6
Algoritma pemrograman 6Algoritma pemrograman 6
Algoritma pemrograman 6
 
Algo
AlgoAlgo
Algo
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & Pemrograman
 

Destacado

Pointer
PointerPointer
Pointerwindi1
 
Ok 3 rep data2
Ok 3 rep  data2Ok 3 rep  data2
Ok 3 rep data2windi1
 
Ok 2 rep data1
Ok 2 rep  data1Ok 2 rep  data1
Ok 2 rep data1windi1
 
Matericlass
MatericlassMatericlass
Matericlasswindi1
 
Pertemuan vi
Pertemuan viPertemuan vi
Pertemuan viwindi1
 
Ok 6 alu
Ok 6 aluOk 6 alu
Ok 6 aluwindi1
 
Function
FunctionFunction
Functionwindi1
 
Probabilitas kontinu
Probabilitas kontinuProbabilitas kontinu
Probabilitas kontinuWindii
 

Destacado (8)

Pointer
PointerPointer
Pointer
 
Ok 3 rep data2
Ok 3 rep  data2Ok 3 rep  data2
Ok 3 rep data2
 
Ok 2 rep data1
Ok 2 rep  data1Ok 2 rep  data1
Ok 2 rep data1
 
Matericlass
MatericlassMatericlass
Matericlass
 
Pertemuan vi
Pertemuan viPertemuan vi
Pertemuan vi
 
Ok 6 alu
Ok 6 aluOk 6 alu
Ok 6 alu
 
Function
FunctionFunction
Function
 
Probabilitas kontinu
Probabilitas kontinuProbabilitas kontinu
Probabilitas kontinu
 

Similar a Pertemuan iv

2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrogramanRoziq Bahtiar
 
Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanTri Retna
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Mr. FM
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanFaisal Amir
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanFisma Ananda
 
3.adp struktur keputusan
3.adp struktur keputusan3.adp struktur keputusan
3.adp struktur keputusanHardini_HD
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanAvenzz Venzz
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanChabil_Juniar
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)nakomuri
 
Pertemuan 6B.pptx
Pertemuan 6B.pptxPertemuan 6B.pptx
Pertemuan 6B.pptxMenny SN
 
Algoritma&Pemrograman C++ Pertemuan 5
Algoritma&Pemrograman C++ Pertemuan 5Algoritma&Pemrograman C++ Pertemuan 5
Algoritma&Pemrograman C++ Pertemuan 5Menny SN
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingMelina Krisnawati
 
Pertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanPertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanTri Retna
 
Struktur perulangan dalam c++
Struktur perulangan dalam c++Struktur perulangan dalam c++
Struktur perulangan dalam c++Alvin Setiawan
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++farizky berian
 
Rangkuman Pemograman Dasar.pptx
Rangkuman Pemograman Dasar.pptxRangkuman Pemograman Dasar.pptx
Rangkuman Pemograman Dasar.pptxSutarnaSutarna1
 

Similar a Pertemuan iv (20)

2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman
 
Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & Pemrograman
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3.adp struktur keputusan
3.adp struktur keputusan3.adp struktur keputusan
3.adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
Asistensi 1 mod 3
Asistensi 1 mod 3Asistensi 1 mod 3
Asistensi 1 mod 3
 
Bab ii
Bab iiBab ii
Bab ii
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)
 
Pertemuan 6B.pptx
Pertemuan 6B.pptxPertemuan 6B.pptx
Pertemuan 6B.pptx
 
Algoritma&Pemrograman C++ Pertemuan 5
Algoritma&Pemrograman C++ Pertemuan 5Algoritma&Pemrograman C++ Pertemuan 5
Algoritma&Pemrograman C++ Pertemuan 5
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented Programming
 
207 p04
207 p04207 p04
207 p04
 
Pertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanPertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & Pemrograman
 
Struktur perulangan dalam c++
Struktur perulangan dalam c++Struktur perulangan dalam c++
Struktur perulangan dalam c++
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++
 
Rangkuman Pemograman Dasar.pptx
Rangkuman Pemograman Dasar.pptxRangkuman Pemograman Dasar.pptx
Rangkuman Pemograman Dasar.pptx
 
Praktikum Decision + Output
Praktikum Decision + OutputPraktikum Decision + Output
Praktikum Decision + Output
 

Último

KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAH
KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAHKPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAH
KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAHMhdTopanSahroni
 
Praktikum Galoh Endah Fajarani-Kombis.pptx
Praktikum Galoh Endah Fajarani-Kombis.pptxPraktikum Galoh Endah Fajarani-Kombis.pptx
Praktikum Galoh Endah Fajarani-Kombis.pptxEndah261450
 
"Skintoto: Destinasi Utama bagi Pecinta Judi Online"
"Skintoto: Destinasi Utama bagi Pecinta Judi Online""Skintoto: Destinasi Utama bagi Pecinta Judi Online"
"Skintoto: Destinasi Utama bagi Pecinta Judi Online"HaseebBashir5
 
menang-besar-rahasia-kemenangan-di-hokagetogel
menang-besar-rahasia-kemenangan-di-hokagetogelmenang-besar-rahasia-kemenangan-di-hokagetogel
menang-besar-rahasia-kemenangan-di-hokagetogelHaseebBashir5
 
Pelajari Marketing Plan dari Bisnis JKS88
Pelajari Marketing Plan dari Bisnis JKS88Pelajari Marketing Plan dari Bisnis JKS88
Pelajari Marketing Plan dari Bisnis JKS88KangGunawan2
 
Skintoto: Mengeksplorasi Dunia Judi Online yang Menarik
Skintoto: Mengeksplorasi Dunia Judi Online yang MenarikSkintoto: Mengeksplorasi Dunia Judi Online yang Menarik
Skintoto: Mengeksplorasi Dunia Judi Online yang MenarikHaseebBashir5
 
Laporan Aksi Nyata.docx kurikulum merdeka
Laporan Aksi Nyata.docx kurikulum merdekaLaporan Aksi Nyata.docx kurikulum merdeka
Laporan Aksi Nyata.docx kurikulum merdekajohan effendi
 
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda Ketahui
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda KetahuiPanduan Lengkap tentang Situs Toto: Apa yang Perlu Anda Ketahui
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda KetahuiHaseebBashir5
 

Último (8)

KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAH
KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAHKPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAH
KPBU UNTUK SPAM PERUMDA AIR MINUM DENGAN BANTUAN PIHAK SWASTA/PEMERINTAH
 
Praktikum Galoh Endah Fajarani-Kombis.pptx
Praktikum Galoh Endah Fajarani-Kombis.pptxPraktikum Galoh Endah Fajarani-Kombis.pptx
Praktikum Galoh Endah Fajarani-Kombis.pptx
 
"Skintoto: Destinasi Utama bagi Pecinta Judi Online"
"Skintoto: Destinasi Utama bagi Pecinta Judi Online""Skintoto: Destinasi Utama bagi Pecinta Judi Online"
"Skintoto: Destinasi Utama bagi Pecinta Judi Online"
 
menang-besar-rahasia-kemenangan-di-hokagetogel
menang-besar-rahasia-kemenangan-di-hokagetogelmenang-besar-rahasia-kemenangan-di-hokagetogel
menang-besar-rahasia-kemenangan-di-hokagetogel
 
Pelajari Marketing Plan dari Bisnis JKS88
Pelajari Marketing Plan dari Bisnis JKS88Pelajari Marketing Plan dari Bisnis JKS88
Pelajari Marketing Plan dari Bisnis JKS88
 
Skintoto: Mengeksplorasi Dunia Judi Online yang Menarik
Skintoto: Mengeksplorasi Dunia Judi Online yang MenarikSkintoto: Mengeksplorasi Dunia Judi Online yang Menarik
Skintoto: Mengeksplorasi Dunia Judi Online yang Menarik
 
Laporan Aksi Nyata.docx kurikulum merdeka
Laporan Aksi Nyata.docx kurikulum merdekaLaporan Aksi Nyata.docx kurikulum merdeka
Laporan Aksi Nyata.docx kurikulum merdeka
 
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda Ketahui
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda KetahuiPanduan Lengkap tentang Situs Toto: Apa yang Perlu Anda Ketahui
Panduan Lengkap tentang Situs Toto: Apa yang Perlu Anda Ketahui
 

Pertemuan iv

  • 1. 1 DECISION MAKING CONSTRUCTS Struktur ini digunakan untuk menguji suatu kondisi, kemudian melaksana- kan satu urutan perintah. Konstruksi pilihan (decision making constructs) dalam C++ meliputi :  Perintah if.  Perintah if - else.  Perintah switch. Perintah if C++ tidak memiliki kata kunci (Keyword) then pada konstruksi perintah if. Syntax : if ( kondisi ) pernyataan; atau
  • 2. 2 if ( 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  Kondisi digunakan untuk menentu- kan pengambilan keputusan, dan operator yang digunakan pada kondisi adalah Relational dan Logical Operators.  Pernyataan dapat berupa sebuah pernyataan ataupun pernyataan majemuk atau Blok Pernyataan (terdiri dari dua atau lebih pernyataan). Bagian ini dijalankan hanya jika kondisi bernilai benar (bernilai tidak sama dengan NOL).  Pernyataan majemuk (Blok Pernyataan) harus diapit tanda { dan }. Contoh Program C++ : // -- Prog-4-1.cpp - Pernyataan if #include <iostream.h> #include <conio.h> void main() { int Angka; // Deklarasi Variabel clrscr(); // Hapus Layar // Memasukkan data dari keyboard cout << "Masukkan bilangan bulat = "; cin >> Angka;
  • 4. 4 // Menguji dan Menampilkan data if ( Angka % 2 ) // if ( Angka % 2 != 0 ) cout << "Bilangan Ganjil ! n"; getch(); } Perintah if – else  Perintah ini memberikan satu alternatif dari dua kemungkinan, kemudian diikuti dengan urutan perintah sebagai hasil uji boolean. Syntax : if ( kondisi ) { blok_pernyataan_1; } else { blok_pernyataan_2; }
  • 5. 5 Pada bentuk ini, bila kondisi bernilai benar (tidak sama dengan NOL) maka blok_-pernyataan_1 akan dijalankan. Bilakondisi bernilai salah (sama dengan NOL ) maka blok_pernyataan_2 yang akan dijalankan. Contoh : if ( Angka % 2 != 0 ) cout << “Bilangan Ganjil ! n”; else cout << “Bilangan Genap ! n”; atau if ( Angka % 2 ) cout << “Bilangan Ganjil ! n”; else cout << “Bilangan Genap ! n
  • 6. 6 if ( 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 Variabel clrscr(); // Hapus Layar  cout << "Masukkan satu karakter = "; cin >> Kar;
  • 7. Constructs - Yessy Asri 7 Kar = toupper( Kar ); // ubah isi Kar menjadi huruf besar if ( Kar >= ‘A’ && Kar <= ‘Z’ ) cout << "Masukan Anda adalah huruf ! n"; else cout << “Masukan Anda bukan huruf ! n”; getch(); return 0; } Perintah Multiple if – else  C++ memberikan fasilitas nested if – else untuk mendukung fleksibilitas 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 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”; else cout << “Grade E n”;
  • 9. 9 Contoh Program C++ : #include <iostream.h> #include <conio.h> void main() { char Kar; clrscr(); // Hapus Layar cout << “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”; else cout << “Masukan Anda bukan alphanumericn”; getch(); }
  • 10. 10 Contoh Program C++ : #include <iostream.h> #include <conio.h> void main() { char Kar; clrscr(); // Hapus Layar cout << “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”; else cout << “Masukan Anda bukan alphanumeric getch(); }
  • 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  Bentuk Umum IF Bersarang if (kondisi1) if (kondisi2) …. if (kondisi-n) statemen; else statement; else statement; else statement; Deskripsi 1. input a dan b 2. if (a < 10) if (b > 8) then { c  a + b wite (c) } else { c  a – b write (c) } else { c  a * b write (c) } If tersarang (nested if) merupakan bentuk dari suatu statement if yang berada di dalam lingkungan statement if lainnya. Bentuk notasi algoritma statement if tersarang adalah sebagai berikut:
  • 13. Constructs - Yessy Asri 13 Contoh: #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. Constructs - Yessy Asri 14 Soal Susun program untuk menginput 4 (empat) buah bilangan bulat, (dianggap ketiga buah bilangan tersebut nilainya tidak sama satu dengan yang lain), kemudian mencetak salah satu bilangan yang nilainya terbesar. Menggunakan Nested If
  • 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; else cout << D; } else {if(C > D) cout << C; else cout << D; } } else else {if (B > C) {if(B > D) cout << B; else cout << D; } else {if(C > D) cout << C; else cout << D; } } }
  • 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. 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. Constructs - Yessy Asri 18 Perintah switch  Perintah ini memiliki bentuk switch – case, yang digunakan untuk pilihan berjumlah banyak.  Perintah tersebut di atas tidak dianjurkan pada pilihan yang melibatkan jangkauan nilai (range ), tetapi dianjurkan 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. Constructs - Yessy Asri 19 Hal – hal yang perlu diperhatikan adalah : 1.Dibelakang keyword case harus diikuti oleh sebuah konstanta, tidak boleh diikuti oleh ekspresi ataupun variable. 2.Konstanta yang digunakan bertipe int atau char 3.Jika bentuknya seperti diatas maka apabila ekspresi sesuai dengan konstanta2 maka pernyataan2, pernyataan3 sampai dengan pernyataan lain dieksekusi. Untuk mencegah hal tersebut, gunakan keyword break;. 4.Jika keyword break digunakan maka setelah pernyataan2 dieksekusi program langsung keluar dari pernyataan switch. 5.Selain digunakan dalam switch, keyword break banyak digunakan untuk keluar dari pernyataan yang berulang ( looping ). 6.Pernyataan lain dieksekusi jika konstanta1 sampai konstantaN tidak ada yang memenuhi ekspresi
  • 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. Constructs - Yessy Asri 21 switch(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. Constructs - Yessy Asri 22 case 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 #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. 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 LOOPS  Pengulangan (Loops) merupakan fasilitas bahasa C++ yang mampu melakukan proses yang berulang, karena itu komputer dapat mengerjakan proses berulang-ulang dengan cepat, tepat dan tanpa lelah.  Konstruksi pengulangan dalam C++ meliputi : Perintah for Perintah do – while Perintah while For Loop  C++ memiliki dua jenis pengulangan for – fixed dan conditional. Syntax :  for ( <inisialisasi variabel pengulangan>; <kondisi>;<penambahan/pengurangan> )  { blok_pernyataan; }
  • 26. 26 Contoh : 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 cout << “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 for loop. Contoh Program C++ : #include <iostream.h> #include <conio.h> #include <ctype.h> void main() { char ch; double x, y;
  • 28. 28 for ( ; ; ) { 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 ; } else cout << “Error: cannot accept 0 n”; } getch(); } do-while Loop  Loop ini dikenal dengan nama conditional loop, dimana kondisi pengulangan diperiksa pada akhir blok loop.
  • 29. 29 Syntax : 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 While Loop  Loop ini juga merupakan conditional loop, dimana kondisi pengulangan diuji pada awal blok pengulangan.  Pada pengulangan dengan perintah while loop kemungkinan tidak ada satu pernyataanpun yang akan dikerjakan bila kondisinya bernilai salah (sama dengan nol).  Sedang pada pengulangan menggunakan do-while loop, memungkinkan minimal ada satu pernyataan yang akan dikerjakan bila kondisinya bernilai salah (sama dengan nol). Syntax : while ( kondisi ) { blok_pernyataan; }
  • 31. 31 Contoh Program C++: #include <iostream.h> #include <conio.h> void main() { double int 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 // Menampilkan Hasil cout << “Jumlah semua bilangan dari “<< first << “ s/d “ << last << “ = “ << sumx << “n”; cout << “Rata -rata nilai = “ << sumx / sum; getch(); } Latihan : Buat program C++ dengan menggunakan while loop untuk menghitung dan menampilkan jumlah bilangan genap dari 11 s/d 121.
  • 33. 33 1. Buat flowchart untuk menentukan bilangan terbesar diantara 2 variabel setelah itu buat flowchart kembali untuk 3 variabel 2. 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 tidak diterima. Tentukan bagaimana keadaan seorang calon. Buat programnya. 3. Buatlah Program untuk menghitung total pembayaran dari pembelian seorang pelanggan toko. Dalam masalah ini ada ketentuan, apabila pembelian pelanggan tersebut sama dengan atau melebihi 100.000 , maka pelanggan mendapat discount 10%, jika tidak pelanggan tersebut hanya mendapat discount 5 % 4. Buatlah Program menu untuk menghitung nilai konversi uang dalam bentuk Dollar, Pesso dan Yen. Adapun inputannya adalah Rupiah dan pilihan konversi dengan rumus : dollar = Rupiah / 10000 Yen = Rupiah / 5000 Pesso = Rupiah / 3000
  • 34. Constructs - Yessy Asri 34 PRE TEST 1.Buatlah Program Untuk Mendeteksi Suatu bilangan apakah bilangan ganjil atau bilangan genap Contoh: Masukkan Angka: 12 Angka yang anda masukkan merupakan bilangan genap
  • 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’; else if(nilai > 69) indeks = ‘B’; else if(nilai > 59) indeks = ‘C’; else if(nilai > 49) indeks = ‘D’; else //nilai ≤ 49 indeks = ‘E’; cout<<”Indeks = “<<indeks<<endl; } 2. Pada Program disamping, Apakah Output yang dihasilkan bernilai ‘A’ jika kita menginput nilai ujian =101? mengapa demikian? Jelaskan! Dan perbaikilah perogram tersebut sehingga jika menginput nilai >100 maka output yang dihasilkan“Masukkan anda salah”