Anda di halaman 1dari 6

P6-PERULANGAN

Perulangan/looping adalah suatu statement/perintah program yang sama ditulis


berulang kali. Jika dalam suatu program terdapat statement yang sama ditulis
berulang kali, maka hal ini merupakan suatu pemborosan dalam hal penulisan dan
mengakibatkan program menjadi tidak terstruktur. Oleh karena itu, maka Bahasa C
memberikan solusi untuk hal tersebut dengan memberikan 3 alternatif cara yang
berkaitan dengan perulangan, yaitu :
1. for()
2. do-while()
3. while()

5.1 Perulangan dengan for()


Bentuk umum :

for (inisialisasi;kondisi;kendali)
{
statement-1;
statement-2;

statement-n;
}

Keterangan :
inisialisasi digunakan sebagai nilai awal yang diberikan terhadap kendali looping tersebut.
kondisi berupa ungkapan yang berfungsi untuk mengontrol looping tersebut.
kendali digunakan untuk mengatur naik/turunnya nilai inisialisasi yang akan dikontrol oleh
kondisi.

Catatan : Looping akan terus dilakukan selama kondisi bernilai Benar/True. Jika
kondisi bernailai Salah/False, maka alur program akan dialihkan ke pernyataan
setelah struktur looping for() tersebut.

Contoh kasus, misalnya Anda diminta menampilkan deret bilangan mulai dari 1
sampai 10. Perhatikan jawabannya di bawah ini :

#include <stdio.h> /*contoh program 10.1 */


#include <conio.h>
main()
{ /* awal program */
int i;

clrscr();
for(i=1;i<=10;i++)
{
printf("%d",i);
}
getch();
} /* akhir program */
Output : 1 2 3 4 5 6 7 8 9 10

#include <stdio.h> /*contoh program 10.2 */


#include <conio.h>
main()
{ /* awal program */
int jml_bil,i,bil,jumlah;
float rata_rata;
clrscr(); jumlah=0;
printf(“Jumlah Bilangan ? “); scanf(”%d”,&jml_bil);

for(i=1;i<=jml_bil;i++)
{
printf(“Masukan bilangan ke-%d = “,i);
scanf(”%d”,&bil);
fflush(stdin); jumlah=jumlah+bil;
}
printf(“\n“); /*pindah baris*/
//cari nilai rata-ratanya
rata_rata=(float)jml_bil/jml_bil;
printf(“Jumlah Bilangan = %d\n“, jml_bil);
printf(“Rata-rata = %5.2f\n“, rata_rata);

getch();
} /* akhir program */

5.2 Perulangan dengan do-while()


Bentuk umum :
do
{
statement-1;
statement-2;
...
} while (kondisi);
Catatan : Looping akan terus dilakukan selama kondisi pada while() bernilai
Benar/True. Jika kondisi bernailai Salah/False, maka alur program akan dialihkan
ke pernyataan setelah struktur looping do-while() tersebut.

Contoh kasus, misalnya Anda diminta menampilkan deret bilangan mulai dari 10
sampai 20. Perhatikan jawabannya di bawah ini :

#include <stdio.h> /*contoh program 10.3 */


#include <conio.h>
main()
{ /* awal program */
int i;

clrscr();
i=1;
do
{
printf("%d\n",i);
i++;
} while (i<=10);

getch();
} /* akhir program */

5.3 Perulangan dengan while()


Bentuk umum :

while (kondisi)
{
statement-1;
statement-2;
...
}

Catatan : Looping akan terus dilakukan selama kondisi pada while() bernilai
Benar/True. Jika kondisi bernailai Salah/False, maka alur program akan dialihkan
ke pernyataan setelah struktur looping while() tersebut.

Contoh kasus, misalnya Anda diminta menampilkan deret bilangan mulai dari 1
sampai 10. Perhatikan jawabannya di bawah ini :
#include <stdio.h> //contoh program 10.4
#include <conio.h>
main()
{ /* awal program */
int i;

clrscr(); i=1;
while (i<=10)
{
printf("%d\n",i);
i++;
}
getch();
} /* akhir program */

5.4 Perulangan Bersarang (nested loop)


Jika dalam suatu perulangan terdapat perulangan yang lain, maka dikerjakan
terlebih dahulu perulangan yang paling dalam. Untuk lebih jelasnya, perhatikan
nested loop berikut ini :
...
for (i=1; i<=5; i++)
{ /* awal loop i */
for(j=1; j<=5; j++)
{ /* awal loop j*/
printf(”*”);
}/* akhir loop j*/
printf((”\n”);
} /* akhir loop i */
...

...
do
{i=1;
do
{
j=1;
printf(“*”);
j++;
}while (j<=5);
i++; printf(“\n”);
}while(i<=5);
...

...
i=1;
while (i<=5)
{
j=1;
while (j<=5);
{
printf(“*”);
j++;
}
i++; printf(“\n”);
}
...

Jika ke-3 potongan program di atas dijalankan, maka akan menghasilkan output
yang sama seperti yang terlihat bentuk outputnya di bawah ini :

*****
*****
*****
*****
*****

TUGAS 4
1. Buatlah sebuah program untuk menampilkan deret bilangan berikut ini :
a. 1 3 5 7 9
b. 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
c. 1 2 3 3 4 7 5 6 11 7 8 15 9 10 19

2. Buatlah sebuah program untuk menampilkan output sbb :


a. b.
* *****
** ****
*** ***
**** **
***** *

3. Buatlah Daftar sebuah daftar nilai ujian mahasiswa untuk Mata Kuliah
Pemrograman Terstruktur dari sejumlah mahasiswa, kemudian tentukan jumlah
nilainya, nilai terbesar dari nilai ujian tersebut dan nilai rata-ratanya. Jumlah
mahasiswa, nim, namamahasiswa dan nilai ujian diinput melalui keyboard dengan
contoh output sbb :

Jumlah Mahasiswa : 5 [enter]


Daftar Nilai Ujian
Mata Kuliah : Pemrograman Terstruktur

NO NIM NAMA MAHASISWA NILAI UJIAN


--------------------------------------------------------
1. 001[enter1] Asep[enter2] 70[enter3]
2. 002[enter4] Beni[enter5] 80[enter6]
3. 003[enter7] Cecep[enter8] 75[enter9]
4. 004[enter10] Deden[enter11] 85[enter12]
5. 005[enter13] Eman[enter14] 60[enter15]
--------------------------------------------------------
Jumlah Nilai = 370
Nilai Rata-rata = 74.00
Nilai terbesar = 85

Anda mungkin juga menyukai