SlideShare a Scribd company logo
1 of 8
Download to read offline
BAB V PROSES PENGULANGAN DALAM PEMROGRAMAN
Pertemuan Minggu V dan VI
Alokasi Waktu

:

4 Jam Pertemuan

Standar Kompetensi

:

Mahasiswa dapat membuat program komputer sederhana dengan menggunakan bahasa
C

Kompetensi Dasar

:

Memahami program komputer yang mengandung unsur Pengulangan (looping)

Indikator

:

Mahasiswa dapat memahami struktur program bahasa C yang mengandung unsur do
while, while do, for

:

Mahasiswa dapat membuat program dengan melibatkan struktur pengulangan

Proses pengulangan pada suatu program merupakan salah satu kekuatan yang dimiliki ketika kita
mengembangan suatu program komputer. Proses pengulangan merupakan suatu proses yang dilakukan
oleh komputer secara berulang-ulang hingga kondisi yang diinginkan terpenuhi. Dalam beberapa buku
proses pengulangan diistilahkan sebagai proses looping atau kalang. Bahasa C mempunyai tiga struktur
untuk melakukan proses pengulangan yaitu struktur while do, do while, dan for.
Pernyataan 1

Periksa
Logika?

Tidak

Gambar 5.1
Diagram Alir Struktur
Pengulangan (looping)

Umum

Ya
Pernyataan 2

Tambahkan angka
1 untuk looping

Pernyataan 3

Sebelum membahas lebih jauh tentang proses looping, terlebih dahulu akan dibahas mengenai operator
decrement (--) dan operator increment (++). Operator decrement adalah operator dimana variabel yang
dirujuk akan melakukan pengurangan secara otomatis satu angka untuk seitap kali proses looping.
Operator increment adalah sebaliknya akan menambah angka satu pada variable yang dirujuk setiap kali
proses looping. Pada pemakaiannya operator ini dapat dituliskan dibelakang ataupun di depan sebuah
variabel yang dirujuk sebagai contoh
Int i;

i ++ , i-- penulisan setelah variabel
++ i , -- I penulisan sebelum variabel
1
Penerapan kedua operator diatas akan dibahas lebih lanjut dalam penggunaannya dalam proses
pengembagan program dengan melibatkan proses looping.
Tiga struktur ini mempunyai karakteristik masing-masing, untuk struktur for dan while do proses
pengulangan mengisyaratkan untuk mengevaluasi kondisi masukan terlebih dahulu kemudian baru
menjalankan pernyataan yang sesuai dengan kondisi yang terpenuhi. Berikut adalah struktur umum dari
for

1.1. LOOPING DENGAN MENGGUNAKAN STRUKTUR FOR
for (batas awal ; batas akhir ; increment/decrement)
{

}

Batas awal mengisyaratkan bahwa proses pengulangan dimulai pada angka 1, 2,atau 3, batas akhir
mengisyaratkan batas atas dari suatu kondisi dimana proses pengulangan harus berhenti.
increment/decrement adalah proses untuk melakukan penambahan/pengurangan satu demi satu saat
melakukan proses pengulangan. Berikut adalah contoh penggunaan stuktur for dalam pemrograman
Contoh 5.1.
#include <stdio.h>
#include <conio.h>
main()
{
int digit;
for (digit=1; digit<=10; digit++)
{
printf(“%d”n,digit);
printf(“nSelesain”);
}
getch();
}

Program diatas akan mengeluarkan output program sebagai berikut:
1
2
3
4
5
6
7
8
9
10
Selesai

Looping for mengisyaratkan bahwa program akan menampilkan angka di layar monitor dengan dimulai
dengan angka 1 melaui perintah digit=1, kemudian digit akan berangsur – angsur meningkat setiap kelipatan
1 melalui perintah digit++, sedangkan perintah digit<= 10 mengisyratkan kapan berakhirnya proses looping,
dalam hal ini dinyatakan proses looping berhenti pada angka 10, karena angka yang lebih dari 10 yaitu 11
keatas mempunyai logika yang salah dari pernyataan digit <= 10. Kata Selesai akan di cetak pada layar
2
monitor ketika logika program digit < = 10 bernilai salah yang berarti akan keluar dari proses looping.
Kemdian program akan berlanjut secara sequence mengerjakan instruksi berikutnya yang dalam hal ini
adalah intruksi printf(“nSelesain”), dimana perintah tersebut memerintahkan program untuk menampilkan
kata Selesai dilayar monitor. Berikut adalah diagram alir dari contoh program diatas

digit = 1

Digit <= 10

Tidak

Ya

Gambar 5.2
Diagram Alir Struktur Program
Penulisan Angka 1 – 10 (looping)

printf(“%d”n,digit);

Tambahkan angka 1 ke
variable digit untuk looping

printf(“nSelesain”)
;

Contoh 5.2.
#include <stdio.h>
#include <conio.h>
main()
{
int jumlah, counter, i;
jumlah = 0;
printf("Masukan angka yang akan anda hitung jumlah deretnya : ");
scanf("%d",&counter);
for (i=1; i<=counter; i++)
jumlah = jumlah + i;
printf("Total Jumlah Deret = %d",jumlah);
getch();
}

Pada contoh 2 diatas program akan menghitung jumlah deret dari nilai yang dimasukan, semisal nilai
yang dimasukan adalah 10 maka program akan melakukan proses penjumlahan yang berulang sebagai
berikut; bertama variable jumlah bernilai 0, pada instruksi jumlah = jumlah + I menyatakan proses
perhitungan sebagai berikut jumlah = 0 + 1 untuk proses looping yang pertama. Hasil dari perhitungan
tersebut di simpan dalam variable jumlah, sehingga variable jumlah yang semula 0 sekarang bernilai 1.
Program berlanjut untuk looping yang kedua, instruksi jumlah = jumlah + I sekarang menyatakan proses
perhitungan jumlah = 1 + 2, varibel jumlah dari proses looping yang bertama mengakibatkan variable
tersebut menyimpan angka 1 dan i pada proses looping yang kedua bernilai 2. Proses looping yang kedua
akan disimpan dalam variable jumlah sehingga yang tadinya bernilai 1 pada proses looping yang kedua
3
akan bernilai 3. Demikian proses looping terus berlanjut hingga kondisi i <= 10 terpenuhi sebagai akhir
dari looping.

1.2. LOOPING DENGAN MENGGUNAKAN STRUKTUR WHILE– DO
Pernyataan while do pada C umumnya di ekspresikan dalam bentuk umum sebagai berikut :
while (ekspresi)
pernyataan ;
ekpresi yang dikandung di dalam tanda kurung akan di uji seperti halnya ekpresi pada struktur
pemrograman if – else. Jika ekepresi tersebut bernilai benar maka pernyataan di bawah struktur while
akan dijalankan, jika sebaliknya maka pernyataan tersebut tidak akan pernah dijalankan. Berikut adalah
proses yang dijalankan oleh computer ketika untuk menguji while do statement.
Uji ekspresi yang diberikan
Jika ekspresi bernilai benar / true /1 maka
a. Jalankan pernyataan
b. kembali ke langkah 1 untuk kembali menguji eksprsi setelah menjalankan pernyataan
else (jika ekspresi yang diuji bernilai salah / false / 0 maka
keluar dari proses looping while do statement

Diagram alir struktur while do adalah sebagi berikut:
Pernyataan 1

Periksa
Logika?

Gambar 5.3
Diagram Alir
while – do

Struktur

looping

Tidak

Ya
Pernyataan 2

Tambahkan angka
1 untuk looping

Pernyataan 3

Diagram Alir untuk teknik looping dengan menggunakan struktur while – do sama dengan pola yang
digunakan pada teknik looping dengan struktur for. Kedua pola looping ini akan menguji kondisi
pengulangan terlebih dahulu sebelum mengekeskusi pernyataan yang terdapat dalam looping, lainnya
halnya denga teknik looping dengan struktur do – while.
Contoh 5.3.
#include <stdio.h>
#include <conio.h>
main()
{

4
int jumlah, counter, i;
jumlah = 0;
i = 1;
printf("Masukan angka yang akan anda hitung jumlah deretnya : ");
scanf("%d",&counter);
while (i <= counter)
{
jumlah = jumlah + i;
i++;
}
printf("Total Jumlah Deret = %d",jumlah);
getch();
}

Pada program contoh 5.3 program terlebih dahulu akan menginisialiasi variable jumlah = 0, dan i = 1,
program akan menampilkan perintah pada layar monitor kepada pengguna untuk memasukan angka yang
akan dihitung jumlah deretnya, angka yang dimasukan oleh pengguna akan ditangkap oleh variable
counter. Pada instruksi selanjutnya program akan menguji dengan struktur pengulangan while do.
Pernyataan while (i <= counter) mengisyaratkan pengecekan apakah I yang bernilai 1 yang diketahui pada saat
inisialisasi awal akan dibandingkan dengan nilai yang tertera pada variable counter. Sebagai contoh
pengguna memasukan angka 10, melalui pernyataan while akan diuji apakah 1 <= 10. Ketika logika dalam
pernyataan tersebut bernilai benar maka instruksi jumlah = jumlah + i akan dijalankan, dari insruksi ini akan
didapatkan hasil penjumlahan dari deret angka 1 sampai 10. Instruksi i++ mengisyaratkan varibel i
melakukan proses increment dengan menambahkan nilai 1 setiap loopingnya. Sebagai contoh pada proses
looping ke dua i akan bernilai 2, nilai ini kemudian akan dimasukan dalam pernyataan while (i <= counter)
yang selanjutnya akan diuji apakah 2 <= 10, logika pernyataan tersebut masih bernilai benar maka program
akan menjalankan instruksi dibawahnya. Instruksi i++ akan menyebabkan i bertambah dari 2 menjadi 3,
nilai 3 tersebut kemudian diperiksa lagi dalam pernyataan while (i <= counter), demikian seterusnya hingga
logika while (i <= counter) bernilai salah, sebagai contoh 11 <= 10. Ketika logika pernyataan bernilai salah maka
proses loopig akan berakhir dan program akan mengeksekusi instruksi printf("Total Jumlah Deret = %d",jumlah).

1.3. LOOPING DENGAN MENGGUNAKAN STRUKTUR DO-WHILE
Teknik pemrograman yang dijelaskan diatas yaitu while do dan for, keduanya akan memeriksa suatu
kondisi pengulangan di awal program,
for (ekspresi)
…..
……
……..

while (ekspresi)
…..
……
……..

Sedangkan struktur do while akan memeriksa kondisi pengulangan pada akhir program,
do
……….
……….
……….
While (ekspresi)

Struktur ini akan memungkinkan program untuk di jalankan minimal sekali sebelum pernyataan dari
program tersebut di periksa oleh kondisi while, jika kondisi yang diperiksa bernilai benar maka
pernyataan diatas while akan di jalankan kembali hingga kondisi salah tercapai. Diagram alir struktur do
while adalah sebagi berikut:
Pernyataan 1
Pernyataan 2

Tambahkan angka
1 untuk looping

5
Gambar 5.4
Diagram Alir Struktur looping do –
while

Contoh 5.4
#include <stdio.h>
#include <conio.h>
main()
{
int counter, jumlah, i;
jumlah = 0;
i = 1;
printf("Masukan angka: ");
scanf("%d",&counter);
do
{
jumlah = jumlah + i;
printf("n%d",jumlah);
i++;
}
while (i <= counter);
getch();
}

Contoh 5.5
#include <stdio.h>
#include <conio.h>
main()
{
int counter,i;
i = 1;
printf("Masukan Angka : ");
scanf("%d",&counter);
while(i <= counter)
{
printf("nBelajar Pemrograman");
i++;

6
}
getch();
}

Contoh 5.6
#include <stdio.h>
#include <conio.h>
main()
{
int counter,i;
i = 1;
printf("Masukan Angka : ");
scanf("%d",&counter);
do
{
printf("nBelajar Pemrograman");
i++;
}
while(i <= counter);
getch();
}

Program contoh 5.5. dan 5.6 memperlihatkan perbedaan penggunaan teknik pengulangan while do dan do
while. Dua program tersebut akan mengeluarkan hasil yang sama ketika kita memasukan angka lebih dari
0, akan tetapi ketika kita berikan angka 0 baru terlihat perbedaan yang mencolok tentang penggunaan
kedua teknik looping tersebut.

Pengayaan
Latihan 5.1
#include <stdio.h>
#include <conio.h>
main()
{
int n, count = 1;
float x, average, sum = 0;
printf("Berapa Angka yang Akan di hitung? " ) ;
scanf ("%d", &n) ;
while (count <= n)
{
printf (" x = ");
scanf("%f", &x);
sum += x;
++count;
}
average = sum/n;
printf("nRata-ratanya adalah %fn", average);

7
getch();
}
Latihan 5.2
#include <stdio.h>
#include <conio.h>
main()
{
int n, count, loops, loopcount;
float x, average, sum;
/* read i n the number of l i s t s */
printf ("How many lists ? " );
scanf ("%d", &loops);
/* outer loop (process each l i s t of numbers */
for (loopcount = 1; loopcount <= loops; ++loopcount)
{
/* initialize and read in a value for n */
sum = 0;
printf ( " n List number %dnHow many numbers? ", loopcount);
scanf ("%d", &n) ;
/* read i n the numbers */
for (count = 1; count <= n; ++count)
{
printf ( " x = " );
scanf ( "%f", &x);
sum += x;
} /* end inner loop */
/* calculate the average and display the answer */
average = sum/n;
printf ("nThe average i s %fn", average) ;
} /* end outer loop */
getch();
}

8

More Related Content

What's hot

struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2Alfian Syamsurizal
 
Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulanganazkiyaku
 
Modul vii dan viii algo
Modul vii dan viii algoModul vii dan viii algo
Modul vii dan viii algoSTMIK AKAKOM
 
Tugas perulangan/Looping
Tugas perulangan/LoopingTugas perulangan/Looping
Tugas perulangan/LoopingIqbalSyawaludin
 
Perulangan atau looping dalam java
Perulangan atau looping dalam javaPerulangan atau looping dalam java
Perulangan atau looping dalam javaWahyu Ardiyono
 
4 adp struktur perulangan
4   adp struktur perulangan4   adp struktur perulangan
4 adp struktur perulanganChabil_Juniar
 
PERULANGAN (LOOPING)
PERULANGAN (LOOPING)PERULANGAN (LOOPING)
PERULANGAN (LOOPING)Ahmad Givari
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Javra Ketoprak
 
Algo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaAlgo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaSenna Hendrian
 
Langkah Dasar Pemrograman pada Aplikasi Dev C++
Langkah Dasar Pemrograman pada Aplikasi Dev C++Langkah Dasar Pemrograman pada Aplikasi Dev C++
Langkah Dasar Pemrograman pada Aplikasi Dev C++Ishardi Nassogi
 
Kumpulan Kode C & C++
Kumpulan Kode C & C++Kumpulan Kode C & C++
Kumpulan Kode C & C++Fajar Sany
 
Tugas algoritma arif
Tugas algoritma arifTugas algoritma arif
Tugas algoritma arifArif Setiawan
 

What's hot (19)

Dasar c++ input, proses, output
Dasar c++ input, proses, output Dasar c++ input, proses, output
Dasar c++ input, proses, output
 
Asistensi 1 mod 3
Asistensi 1 mod 3Asistensi 1 mod 3
Asistensi 1 mod 3
 
struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2
 
Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulangan
 
Pertemuan iv
Pertemuan ivPertemuan iv
Pertemuan iv
 
Modul vii dan viii algo
Modul vii dan viii algoModul vii dan viii algo
Modul vii dan viii algo
 
Tugas perulangan/Looping
Tugas perulangan/LoopingTugas perulangan/Looping
Tugas perulangan/Looping
 
Perulangan atau looping dalam java
Perulangan atau looping dalam javaPerulangan atau looping dalam java
Perulangan atau looping dalam java
 
4 adp struktur perulangan
4   adp struktur perulangan4   adp struktur perulangan
4 adp struktur perulangan
 
5 perulangan
5 perulangan5 perulangan
5 perulangan
 
PERULANGAN (LOOPING)
PERULANGAN (LOOPING)PERULANGAN (LOOPING)
PERULANGAN (LOOPING)
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
 
Algo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaAlgo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritma
 
Punya awan
Punya awanPunya awan
Punya awan
 
Langkah Dasar Pemrograman pada Aplikasi Dev C++
Langkah Dasar Pemrograman pada Aplikasi Dev C++Langkah Dasar Pemrograman pada Aplikasi Dev C++
Langkah Dasar Pemrograman pada Aplikasi Dev C++
 
Kumpulan Kode C & C++
Kumpulan Kode C & C++Kumpulan Kode C & C++
Kumpulan Kode C & C++
 
207 p05
207 p05207 p05
207 p05
 
modul algoritma Bab 4
modul algoritma Bab 4modul algoritma Bab 4
modul algoritma Bab 4
 
Tugas algoritma arif
Tugas algoritma arifTugas algoritma arif
Tugas algoritma arif
 

Similar to LOOPING

MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docx
MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docxMAKALAH PERULANGAN BAHASA C ( Diki Candra ).docx
MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docxDikicandra6
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanie Indah
 
Laporan praktikum modul iv
Laporan praktikum modul ivLaporan praktikum modul iv
Laporan praktikum modul ivDevi Apriansyah
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IIShofura Kamal
 
Struktur perulangan dalam c++
Struktur perulangan dalam c++Struktur perulangan dalam c++
Struktur perulangan dalam c++Alvin Setiawan
 
Tugas algoritma arif
Tugas algoritma arifTugas algoritma arif
Tugas algoritma arifArif Setiawan
 
9. algoritma perulangan pada java
9. algoritma perulangan pada java9. algoritma perulangan pada java
9. algoritma perulangan pada javaSaprudin Eskom
 
Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiDevi Apriansyah
 
materi9 perulangan (looping).ppt
materi9 perulangan (looping).pptmateri9 perulangan (looping).ppt
materi9 perulangan (looping).pptakundiambang
 
PBO Pert 5 Praktek
PBO Pert 5 PraktekPBO Pert 5 Praktek
PBO Pert 5 PraktekRUDISELAMAT2
 
ALOGARITMA 4
ALOGARITMA 4ALOGARITMA 4
ALOGARITMA 4arstwn
 
Intruksi Fundamental Lanjutan
Intruksi Fundamental LanjutanIntruksi Fundamental Lanjutan
Intruksi Fundamental LanjutanAkmal Fajar
 

Similar to LOOPING (20)

MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docx
MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docxMAKALAH PERULANGAN BAHASA C ( Diki Candra ).docx
MAKALAH PERULANGAN BAHASA C ( Diki Candra ).docx
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
 
Laporan praktikum modul iv
Laporan praktikum modul ivLaporan praktikum modul iv
Laporan praktikum modul iv
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
 
Tugas perulangan
Tugas perulanganTugas perulangan
Tugas perulangan
 
Perulangan for
Perulangan forPerulangan for
Perulangan for
 
Struktur perulangan dalam c++
Struktur perulangan dalam c++Struktur perulangan dalam c++
Struktur perulangan dalam c++
 
Tugas algoritma arif
Tugas algoritma arifTugas algoritma arif
Tugas algoritma arif
 
Struktur Kontrol
Struktur KontrolStruktur Kontrol
Struktur Kontrol
 
9. algoritma perulangan pada java
9. algoritma perulangan pada java9. algoritma perulangan pada java
9. algoritma perulangan pada java
 
Tugas algoritma
Tugas algoritmaTugas algoritma
Tugas algoritma
 
Tugas algoritma
Tugas algoritmaTugas algoritma
Tugas algoritma
 
Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iii
 
materi9 perulangan (looping).ppt
materi9 perulangan (looping).pptmateri9 perulangan (looping).ppt
materi9 perulangan (looping).ppt
 
PBO Pert 5 Praktek
PBO Pert 5 PraktekPBO Pert 5 Praktek
PBO Pert 5 Praktek
 
Tugas algoritma
Tugas algoritmaTugas algoritma
Tugas algoritma
 
Looping
LoopingLooping
Looping
 
ALOGARITMA 4
ALOGARITMA 4ALOGARITMA 4
ALOGARITMA 4
 
Algoritma 1 pertemuan 7
Algoritma 1 pertemuan 7Algoritma 1 pertemuan 7
Algoritma 1 pertemuan 7
 
Intruksi Fundamental Lanjutan
Intruksi Fundamental LanjutanIntruksi Fundamental Lanjutan
Intruksi Fundamental Lanjutan
 

More from Roziq Bahtiar

Techarea company profile
Techarea company profileTecharea company profile
Techarea company profileRoziq Bahtiar
 
static and dynamic routing
static and dynamic routingstatic and dynamic routing
static and dynamic routingRoziq Bahtiar
 
Perintah perintah dasar linux Operating Sistem
Perintah perintah dasar linux Operating SistemPerintah perintah dasar linux Operating Sistem
Perintah perintah dasar linux Operating SistemRoziq Bahtiar
 
Pengantar algoritma pemrograman
Pengantar algoritma pemrogramanPengantar algoritma pemrograman
Pengantar algoritma pemrogramanRoziq Bahtiar
 
Flowchart progrm linear bilangan bulat
Flowchart progrm linear bilangan bulatFlowchart progrm linear bilangan bulat
Flowchart progrm linear bilangan bulatRoziq Bahtiar
 
Tarby magazine salafiyah kajen
Tarby magazine  salafiyah kajenTarby magazine  salafiyah kajen
Tarby magazine salafiyah kajenRoziq Bahtiar
 
7. pemrograman struktur
7. pemrograman struktur7. pemrograman struktur
7. pemrograman strukturRoziq Bahtiar
 
6. pemrograman pointer
6. pemrograman pointer6. pemrograman pointer
6. pemrograman pointerRoziq Bahtiar
 
5. pemrograman array dan_string
5. pemrograman array dan_string5. pemrograman array dan_string
5. pemrograman array dan_stringRoziq Bahtiar
 
4. pemrograman fungsi
4. pemrograman fungsi4. pemrograman fungsi
4. pemrograman fungsiRoziq Bahtiar
 
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrogramanRoziq Bahtiar
 
1. variable identifier dan_tipe_data
1. variable identifier dan_tipe_data1. variable identifier dan_tipe_data
1. variable identifier dan_tipe_dataRoziq Bahtiar
 
3 piksel_dan_histogram
 3 piksel_dan_histogram 3 piksel_dan_histogram
3 piksel_dan_histogramRoziq Bahtiar
 

More from Roziq Bahtiar (20)

Techarea company profile
Techarea company profileTecharea company profile
Techarea company profile
 
static and dynamic routing
static and dynamic routingstatic and dynamic routing
static and dynamic routing
 
Perintah perintah dasar linux Operating Sistem
Perintah perintah dasar linux Operating SistemPerintah perintah dasar linux Operating Sistem
Perintah perintah dasar linux Operating Sistem
 
Pengantar algoritma pemrograman
Pengantar algoritma pemrogramanPengantar algoritma pemrograman
Pengantar algoritma pemrograman
 
Flowchart progrm linear bilangan bulat
Flowchart progrm linear bilangan bulatFlowchart progrm linear bilangan bulat
Flowchart progrm linear bilangan bulat
 
Tarby magazine salafiyah kajen
Tarby magazine  salafiyah kajenTarby magazine  salafiyah kajen
Tarby magazine salafiyah kajen
 
Pcd 10
Pcd 10Pcd 10
Pcd 10
 
Pcd 11
Pcd 11Pcd 11
Pcd 11
 
7. pemrograman struktur
7. pemrograman struktur7. pemrograman struktur
7. pemrograman struktur
 
6. pemrograman pointer
6. pemrograman pointer6. pemrograman pointer
6. pemrograman pointer
 
5. pemrograman array dan_string
5. pemrograman array dan_string5. pemrograman array dan_string
5. pemrograman array dan_string
 
4. pemrograman fungsi
4. pemrograman fungsi4. pemrograman fungsi
4. pemrograman fungsi
 
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman
 
1. variable identifier dan_tipe_data
1. variable identifier dan_tipe_data1. variable identifier dan_tipe_data
1. variable identifier dan_tipe_data
 
Alpro tutor
Alpro tutorAlpro tutor
Alpro tutor
 
Pcd 7
Pcd 7Pcd 7
Pcd 7
 
Pcd 5
Pcd 5Pcd 5
Pcd 5
 
Pcd 4
Pcd 4Pcd 4
Pcd 4
 
Eigen
EigenEigen
Eigen
 
3 piksel_dan_histogram
 3 piksel_dan_histogram 3 piksel_dan_histogram
3 piksel_dan_histogram
 

Recently uploaded

tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDmawan5982
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfCloverash1
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfbibizaenab
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxIgitNuryana13
 
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptx
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptxAKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptx
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptxWirionSembiring2
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAAndiCoc
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASaku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASreskosatrio1
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1udin100
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxmawan5982
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapsefrida3
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)3HerisaSintia
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..ikayogakinasih12
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggeraksupriadi611
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxmawan5982
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptxHendryJulistiyanto
 
Aksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxAksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxsdn3jatiblora
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5KIKI TRISNA MUKTI
 

Recently uploaded (20)

tugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SDtugas 1 tutorial online anak berkebutuhan khusus di SD
tugas 1 tutorial online anak berkebutuhan khusus di SD
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdf
 
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdfBab 6 Kreatif Mengungap Rasa dan Realitas.pdf
Bab 6 Kreatif Mengungap Rasa dan Realitas.pdf
 
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptxPaparan Refleksi Lokakarya program sekolah penggerak.pptx
Paparan Refleksi Lokakarya program sekolah penggerak.pptx
 
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptx
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptxAKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptx
AKSI NYATA MODUL 1.2-1 untuk pendidikan guru penggerak.pptx
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASaku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
 
Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1Dampak Pendudukan Jepang.pptx indonesia1
Dampak Pendudukan Jepang.pptx indonesia1
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genap
 
Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)Karakteristik Negara Mesir (Geografi Regional Dunia)
Karakteristik Negara Mesir (Geografi Regional Dunia)
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
Aksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru PenggerakAksi Nyata Modul 1.1 Calon Guru Penggerak
Aksi Nyata Modul 1.1 Calon Guru Penggerak
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx
 
Aksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptxAksi nyata Malaikat Kebaikan [Guru].pptx
Aksi nyata Malaikat Kebaikan [Guru].pptx
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5
 

LOOPING

  • 1. BAB V PROSES PENGULANGAN DALAM PEMROGRAMAN Pertemuan Minggu V dan VI Alokasi Waktu : 4 Jam Pertemuan Standar Kompetensi : Mahasiswa dapat membuat program komputer sederhana dengan menggunakan bahasa C Kompetensi Dasar : Memahami program komputer yang mengandung unsur Pengulangan (looping) Indikator : Mahasiswa dapat memahami struktur program bahasa C yang mengandung unsur do while, while do, for : Mahasiswa dapat membuat program dengan melibatkan struktur pengulangan Proses pengulangan pada suatu program merupakan salah satu kekuatan yang dimiliki ketika kita mengembangan suatu program komputer. Proses pengulangan merupakan suatu proses yang dilakukan oleh komputer secara berulang-ulang hingga kondisi yang diinginkan terpenuhi. Dalam beberapa buku proses pengulangan diistilahkan sebagai proses looping atau kalang. Bahasa C mempunyai tiga struktur untuk melakukan proses pengulangan yaitu struktur while do, do while, dan for. Pernyataan 1 Periksa Logika? Tidak Gambar 5.1 Diagram Alir Struktur Pengulangan (looping) Umum Ya Pernyataan 2 Tambahkan angka 1 untuk looping Pernyataan 3 Sebelum membahas lebih jauh tentang proses looping, terlebih dahulu akan dibahas mengenai operator decrement (--) dan operator increment (++). Operator decrement adalah operator dimana variabel yang dirujuk akan melakukan pengurangan secara otomatis satu angka untuk seitap kali proses looping. Operator increment adalah sebaliknya akan menambah angka satu pada variable yang dirujuk setiap kali proses looping. Pada pemakaiannya operator ini dapat dituliskan dibelakang ataupun di depan sebuah variabel yang dirujuk sebagai contoh Int i; i ++ , i-- penulisan setelah variabel ++ i , -- I penulisan sebelum variabel 1
  • 2. Penerapan kedua operator diatas akan dibahas lebih lanjut dalam penggunaannya dalam proses pengembagan program dengan melibatkan proses looping. Tiga struktur ini mempunyai karakteristik masing-masing, untuk struktur for dan while do proses pengulangan mengisyaratkan untuk mengevaluasi kondisi masukan terlebih dahulu kemudian baru menjalankan pernyataan yang sesuai dengan kondisi yang terpenuhi. Berikut adalah struktur umum dari for 1.1. LOOPING DENGAN MENGGUNAKAN STRUKTUR FOR for (batas awal ; batas akhir ; increment/decrement) { } Batas awal mengisyaratkan bahwa proses pengulangan dimulai pada angka 1, 2,atau 3, batas akhir mengisyaratkan batas atas dari suatu kondisi dimana proses pengulangan harus berhenti. increment/decrement adalah proses untuk melakukan penambahan/pengurangan satu demi satu saat melakukan proses pengulangan. Berikut adalah contoh penggunaan stuktur for dalam pemrograman Contoh 5.1. #include <stdio.h> #include <conio.h> main() { int digit; for (digit=1; digit<=10; digit++) { printf(“%d”n,digit); printf(“nSelesain”); } getch(); } Program diatas akan mengeluarkan output program sebagai berikut: 1 2 3 4 5 6 7 8 9 10 Selesai Looping for mengisyaratkan bahwa program akan menampilkan angka di layar monitor dengan dimulai dengan angka 1 melaui perintah digit=1, kemudian digit akan berangsur – angsur meningkat setiap kelipatan 1 melalui perintah digit++, sedangkan perintah digit<= 10 mengisyratkan kapan berakhirnya proses looping, dalam hal ini dinyatakan proses looping berhenti pada angka 10, karena angka yang lebih dari 10 yaitu 11 keatas mempunyai logika yang salah dari pernyataan digit <= 10. Kata Selesai akan di cetak pada layar 2
  • 3. monitor ketika logika program digit < = 10 bernilai salah yang berarti akan keluar dari proses looping. Kemdian program akan berlanjut secara sequence mengerjakan instruksi berikutnya yang dalam hal ini adalah intruksi printf(“nSelesain”), dimana perintah tersebut memerintahkan program untuk menampilkan kata Selesai dilayar monitor. Berikut adalah diagram alir dari contoh program diatas digit = 1 Digit <= 10 Tidak Ya Gambar 5.2 Diagram Alir Struktur Program Penulisan Angka 1 – 10 (looping) printf(“%d”n,digit); Tambahkan angka 1 ke variable digit untuk looping printf(“nSelesain”) ; Contoh 5.2. #include <stdio.h> #include <conio.h> main() { int jumlah, counter, i; jumlah = 0; printf("Masukan angka yang akan anda hitung jumlah deretnya : "); scanf("%d",&counter); for (i=1; i<=counter; i++) jumlah = jumlah + i; printf("Total Jumlah Deret = %d",jumlah); getch(); } Pada contoh 2 diatas program akan menghitung jumlah deret dari nilai yang dimasukan, semisal nilai yang dimasukan adalah 10 maka program akan melakukan proses penjumlahan yang berulang sebagai berikut; bertama variable jumlah bernilai 0, pada instruksi jumlah = jumlah + I menyatakan proses perhitungan sebagai berikut jumlah = 0 + 1 untuk proses looping yang pertama. Hasil dari perhitungan tersebut di simpan dalam variable jumlah, sehingga variable jumlah yang semula 0 sekarang bernilai 1. Program berlanjut untuk looping yang kedua, instruksi jumlah = jumlah + I sekarang menyatakan proses perhitungan jumlah = 1 + 2, varibel jumlah dari proses looping yang bertama mengakibatkan variable tersebut menyimpan angka 1 dan i pada proses looping yang kedua bernilai 2. Proses looping yang kedua akan disimpan dalam variable jumlah sehingga yang tadinya bernilai 1 pada proses looping yang kedua 3
  • 4. akan bernilai 3. Demikian proses looping terus berlanjut hingga kondisi i <= 10 terpenuhi sebagai akhir dari looping. 1.2. LOOPING DENGAN MENGGUNAKAN STRUKTUR WHILE– DO Pernyataan while do pada C umumnya di ekspresikan dalam bentuk umum sebagai berikut : while (ekspresi) pernyataan ; ekpresi yang dikandung di dalam tanda kurung akan di uji seperti halnya ekpresi pada struktur pemrograman if – else. Jika ekepresi tersebut bernilai benar maka pernyataan di bawah struktur while akan dijalankan, jika sebaliknya maka pernyataan tersebut tidak akan pernah dijalankan. Berikut adalah proses yang dijalankan oleh computer ketika untuk menguji while do statement. Uji ekspresi yang diberikan Jika ekspresi bernilai benar / true /1 maka a. Jalankan pernyataan b. kembali ke langkah 1 untuk kembali menguji eksprsi setelah menjalankan pernyataan else (jika ekspresi yang diuji bernilai salah / false / 0 maka keluar dari proses looping while do statement Diagram alir struktur while do adalah sebagi berikut: Pernyataan 1 Periksa Logika? Gambar 5.3 Diagram Alir while – do Struktur looping Tidak Ya Pernyataan 2 Tambahkan angka 1 untuk looping Pernyataan 3 Diagram Alir untuk teknik looping dengan menggunakan struktur while – do sama dengan pola yang digunakan pada teknik looping dengan struktur for. Kedua pola looping ini akan menguji kondisi pengulangan terlebih dahulu sebelum mengekeskusi pernyataan yang terdapat dalam looping, lainnya halnya denga teknik looping dengan struktur do – while. Contoh 5.3. #include <stdio.h> #include <conio.h> main() { 4
  • 5. int jumlah, counter, i; jumlah = 0; i = 1; printf("Masukan angka yang akan anda hitung jumlah deretnya : "); scanf("%d",&counter); while (i <= counter) { jumlah = jumlah + i; i++; } printf("Total Jumlah Deret = %d",jumlah); getch(); } Pada program contoh 5.3 program terlebih dahulu akan menginisialiasi variable jumlah = 0, dan i = 1, program akan menampilkan perintah pada layar monitor kepada pengguna untuk memasukan angka yang akan dihitung jumlah deretnya, angka yang dimasukan oleh pengguna akan ditangkap oleh variable counter. Pada instruksi selanjutnya program akan menguji dengan struktur pengulangan while do. Pernyataan while (i <= counter) mengisyaratkan pengecekan apakah I yang bernilai 1 yang diketahui pada saat inisialisasi awal akan dibandingkan dengan nilai yang tertera pada variable counter. Sebagai contoh pengguna memasukan angka 10, melalui pernyataan while akan diuji apakah 1 <= 10. Ketika logika dalam pernyataan tersebut bernilai benar maka instruksi jumlah = jumlah + i akan dijalankan, dari insruksi ini akan didapatkan hasil penjumlahan dari deret angka 1 sampai 10. Instruksi i++ mengisyaratkan varibel i melakukan proses increment dengan menambahkan nilai 1 setiap loopingnya. Sebagai contoh pada proses looping ke dua i akan bernilai 2, nilai ini kemudian akan dimasukan dalam pernyataan while (i <= counter) yang selanjutnya akan diuji apakah 2 <= 10, logika pernyataan tersebut masih bernilai benar maka program akan menjalankan instruksi dibawahnya. Instruksi i++ akan menyebabkan i bertambah dari 2 menjadi 3, nilai 3 tersebut kemudian diperiksa lagi dalam pernyataan while (i <= counter), demikian seterusnya hingga logika while (i <= counter) bernilai salah, sebagai contoh 11 <= 10. Ketika logika pernyataan bernilai salah maka proses loopig akan berakhir dan program akan mengeksekusi instruksi printf("Total Jumlah Deret = %d",jumlah). 1.3. LOOPING DENGAN MENGGUNAKAN STRUKTUR DO-WHILE Teknik pemrograman yang dijelaskan diatas yaitu while do dan for, keduanya akan memeriksa suatu kondisi pengulangan di awal program, for (ekspresi) ….. …… …….. while (ekspresi) ….. …… …….. Sedangkan struktur do while akan memeriksa kondisi pengulangan pada akhir program, do ………. ………. ………. While (ekspresi) Struktur ini akan memungkinkan program untuk di jalankan minimal sekali sebelum pernyataan dari program tersebut di periksa oleh kondisi while, jika kondisi yang diperiksa bernilai benar maka pernyataan diatas while akan di jalankan kembali hingga kondisi salah tercapai. Diagram alir struktur do while adalah sebagi berikut: Pernyataan 1 Pernyataan 2 Tambahkan angka 1 untuk looping 5
  • 6. Gambar 5.4 Diagram Alir Struktur looping do – while Contoh 5.4 #include <stdio.h> #include <conio.h> main() { int counter, jumlah, i; jumlah = 0; i = 1; printf("Masukan angka: "); scanf("%d",&counter); do { jumlah = jumlah + i; printf("n%d",jumlah); i++; } while (i <= counter); getch(); } Contoh 5.5 #include <stdio.h> #include <conio.h> main() { int counter,i; i = 1; printf("Masukan Angka : "); scanf("%d",&counter); while(i <= counter) { printf("nBelajar Pemrograman"); i++; 6
  • 7. } getch(); } Contoh 5.6 #include <stdio.h> #include <conio.h> main() { int counter,i; i = 1; printf("Masukan Angka : "); scanf("%d",&counter); do { printf("nBelajar Pemrograman"); i++; } while(i <= counter); getch(); } Program contoh 5.5. dan 5.6 memperlihatkan perbedaan penggunaan teknik pengulangan while do dan do while. Dua program tersebut akan mengeluarkan hasil yang sama ketika kita memasukan angka lebih dari 0, akan tetapi ketika kita berikan angka 0 baru terlihat perbedaan yang mencolok tentang penggunaan kedua teknik looping tersebut. Pengayaan Latihan 5.1 #include <stdio.h> #include <conio.h> main() { int n, count = 1; float x, average, sum = 0; printf("Berapa Angka yang Akan di hitung? " ) ; scanf ("%d", &n) ; while (count <= n) { printf (" x = "); scanf("%f", &x); sum += x; ++count; } average = sum/n; printf("nRata-ratanya adalah %fn", average); 7
  • 8. getch(); } Latihan 5.2 #include <stdio.h> #include <conio.h> main() { int n, count, loops, loopcount; float x, average, sum; /* read i n the number of l i s t s */ printf ("How many lists ? " ); scanf ("%d", &loops); /* outer loop (process each l i s t of numbers */ for (loopcount = 1; loopcount <= loops; ++loopcount) { /* initialize and read in a value for n */ sum = 0; printf ( " n List number %dnHow many numbers? ", loopcount); scanf ("%d", &n) ; /* read i n the numbers */ for (count = 1; count <= n; ++count) { printf ( " x = " ); scanf ( "%f", &x); sum += x; } /* end inner loop */ /* calculate the average and display the answer */ average = sum/n; printf ("nThe average i s %fn", average) ; } /* end outer loop */ getch(); } 8