Anda di halaman 1dari 38

Dasar-Dasar

Pemrograman
Pertemuan 6 dan 7
Perulangan
1
Indikator

Mengidentifikasi jenis-jenis
perulangan.

Menjelaskan struktur
perulangan.

Menerapkan konsep
perulangan ke dalam program

2
Tujuan

 Memberikan pemahaman mengenai


struktur perulangan dan
implementasinya dalam bahasa C++
menggunakan while, for dan do
while, sehingga mahasiswa dapat
memanfaatkan struktur perulangan
tersebut dalam menyelesaikan
persoalan pemrograman.

3
Outline

Review Percabangan

Struktur Perulangan

Statement Perulangan

Latihan

4
Review Percabangan

IF
• IF dengan satu alternatif
• IF dengan dua alternatif
• IF bertingkat

Selection/ Switch
• Berbagai pilihan
5
Struktur Perulangan

 Struktur Perulangan  struktur kontrol


pengulangan eksekusi sekumpulan langkah
dalam program.
 Kumpulan langkah yang dikerjakan
berulang-ulang disebut juga dengan loop
body.
 Struktur perulangan digunakan untuk
mengeksekusi instruksi secara
berulang(lebih dari sekali eksekusi)
6
Looping / Perulangan

While

Do while

For

7
While

 Perintah while adalah pengulangan


yang dilakukan oleh program selama
(kondisi while) terpenuhi (bernilai
benar).
 Jika kondisi perulangan bernilai :
 Benar : instruksi dalam “loop body”
dijalankan
 Salah : instruksi dalam “loop body”
tidak dijalankan
8
Statement WHILE

Benar
Kondisi while Instruksi yang dieksekusi selama
kondisi while terpenuhi

Salah

Bentuk :
while (kondisi perulangan)
instruksi

9
Contoh 1
 Program untuk menjumlahkan 10 angka yang dimasukan:
 #include <stdio.h>
void main()
{ int angka, sum = 0, hitung= 0;
while (hitung < 10)
{ printf("Masukkan angka");
scanf(“%d”,&angka);
sum += angka;
hitung++;
}
printf("jumlah: %d", sum);
} 10
Contoh 2
Mencari N!

int number, factorial, counter;

cout << "Enter a positive integer:";


cin >> number;
factorial = 1;
counter = 1;
while(counter <= number){
factorial *= counter;
counter += 1; //counter = counter + 1;
}
cout << "The factorial of " << number << " is " <<
factorial << endl;

11
Contoh 3

12
Hasil 3

13
Do...While

 Perintah ini adalah perintah


untuk tetap melakukan
perulangan dalam instruksi
program(loop body), sampai
kondisinya dalam while
terpenuhi.
 Bedakan dengan pemakaian
while.
14
Statement DO WHILE

Instruksi yang dieksekusi selama


kondisi while belum terpenuhi Bentuk :
Do
Salah instruksi
while (kondisi
perulangan)
Kondisi while

Benar
15
End
Contoh 1
 Program untuk menghitung nilai count dimulai dengan
0, dengan penambahan 2 dan akan berhenti pada 15:

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
main()
{ int Count = 0;
do {
printf(“%d\n”, Count * 2);
Count++;
} while( Count <= 15 );
} 16
Contoh 2
Mencari N!

int number, factorial, counter;


cout << "Enter a positive integer:";
cin >> number;
factorial = 1;
counter = 1;
do{
factorial *= counter;
counter++;
}while(counter <= number);
cout << "The factorial of " << number
<< " is " << factorial << endl;

17
Contoh 3

char reply;
do{
// do something
cout << "Continue(y/n): ";
cin >> reply;
}while(reply!='n');

18
Contoh 4

19
Hasil 4

 Perulangan selesai jika dimasukkan nilai ‘0’ (masukan yang


membuat kondisi while terpenuhi)

20
For
 Bentuk perulangan yang banyak digunakan
 Perulangan dilakukan sampai kondisi terpenuhi
 Perulangan for’ dapat mengeksekusi instruksi
berulang sejumlah yang sudah ditentukan.

21
Statement for
Bentuk :
for (variabel inisialisasi perulangan;
variabel penguji perulangan;
variabel pengubah perulangan)
Instruksi;

for (inisialisasi; kondisi;


iterasi) {
//yang ingin dilakukan...
instruksi
22
}
Cara kerja for

Dilakukan inisialisasi

Dilakukan pengujian kondisi,


jika kondisi bernilai benar
• Dikerjakan instruksi
• Dilakukan perubahan nilai
23
Contoh 1

int i;
for(i=1; i<=20; i++)
cout << "i= " << i << endl;

24
Contoh 2
Mencari N!

int number, factorial, n;

cout << "Enter positive integer:";


cin >> number;
factorial = 1;
for(n=1; n<=number; n++)
factorial *= n;
cout << "The factorial of " << number
<< " is " << factorial << endl;

25
Contoh 3
void main() {
int N, i, nilai;
double Total = 0;
double Rata2;
cout << “Banyaknya bilangan= " << endl;
cin >> N;
for (i=N; i > 0; i--) {
cin >> nilai;
Total += nilai;
}
if (N >0) {
Rata2 = Total / N;
cout << “Rata-rata: " << Rata2 << endl;
}
}

26
Contoh 4

27
Hasil 4

28
Latihan

1. Tuliskan program yang menghasilkan


output sebagai berikut :
0 1
1 2
2 4
3 8
4 16
5 32
6 64 29
Latihan (1)

Buatlah program menggunakan


’while’ dan ’do-while’ untuk
mencetak kata ’Halo’
sebanyak 5 kali.

Buatlah Program untuk


mencetak hasil 2N , Dimana
nilai N diinputkan. Gunakan
perulangan ‘while’ dan ‘for’..!

30
Perbedaan
 for loop
 Untuk melakukan perulangan yang sudah diketahui
jumlah perulangannya
 Dikontrol oleh variabel yang dirubah dengan nilai tertentu
setiap kali perulangan
 while loop
 Jumlah perulangan tergantung dari kondisi yang berubah
selama proses.
 Contoh : berdasar input dari pengguna.
 Dalam beberapa situasi perintah dalam perulangan sama sekali
tidak diproses.
 do-while loop
 Perintah dalam perulangan pasti akan diproses meskipun hanya
satu kali.
 Selain itu, penggunaan do-while sama dengan while.

31
Kesalahan pada perulangan
void main(){
double balance = 333.3;
double amount = 33.33;
int round=0;
char tmp;
while(balance != 0.0){
balance = balance - amount;
cout << round++ <<": the balance is "
<< balance <<endl;
cin >> tmp;
}
}

32
Kesalahan pada perulangan

int power = 0, n;
cout << "Give N :";
cin >> n;
while(power <= 1000){
cout <<"Next power of N is ”
<< power << endl;
power *= n;
}

33
Nested Loop

Perulangan didalam
perulangan.

Prinsipnya seperti pada if


didalam if (if bersarang
terdapat pada perulangan
bertingkat)

34
Contoh 1
int counter, prakt=8;
double avg, score, tscore;
char ulang;
do{
tscore = 0;
for(counter =1; counter <=prakt; counter ++){
cout << “Masukkan nilai untuk praktikum ke "
<< counter << ": ";
cin >> score;
tscore += score;
}
avg = tscore/double(prakt);
cout << “Nilai rata-rata " << avg << endl;
cout << “Input mahasiswa lain (y/n)? ";
cin >>ulang;
}while(ulang=='y' || ulang=='Y');

35
Contoh 2

int row; // Outer loop


counter
int col; // Inner loop counter

for(row=1; row<=10; row++){


for(col=1; col<=10; col++)
cout << row*col << " ";
cout << endl;
}
36
Tugas
 Buat program untuk mencari nilai terbesar dari
sejumlah bilangan yang dimasukkan!
 Buat program untuk menampilkan seperti contoh
berikut:
jika n = 5 hasil: 55555
4444
333
22
1
n merupakan input dari pengguna.

37
Daftar Pustaka

Ekohariadi, Anita Q (2007), Bahasa Pemrograman C, Unipress UNESA.

Jeri R. Hanly and Eliiot B. Koffman (2002), Problem Solving and Program Design in C,
Addison Wesley Publishing.

John J Barton, Lee R. Nackman (1994), Scientific and Engineering C++: an introduction
with advanced techniques and examples, Addison Wesley Longman, Inc.

The Waite Group’s (1992), C++ Programming, Second Edition, SAMS a division of Prentice
Hall Computer Publishing.

Kadir, A dan Heriyanto. 2005. Algoritma Pemrograman Menggunakan C++. Yogyakarta:


Penerbit Andi.

Pranata, A. 2005. Algoritma dan Pemrograman. Yogyakarta: Penerbit Graha Ilmu.

J. Liberty, S. Rao, B. Jones, Sams teach yourself C++ in one hour a day. Sams, 2008.

38

Anda mungkin juga menyukai