Tutorial Belajar C Part 38: Perulangan WHILE Bahasa C

Melanjutkan tutorial belajar bahasa pemrograman C di Duniailkom, kali ini kita akan bahas struktur perulangan (looping) kedua, yakni perulangan WHILE.


Pengertian Struktur Perulangan While Bahasa C

Dalam tutorial sebelumnya, yakni tentang perulangan FOR. Kita telah membahas bahwa sebuah perulangan setidaknya memiliki 3 syarat: kondisi awal perulangan, kondisi pada saat perulangan, dan kondisi akhir perulangan.

Dalam perulangan FOR, ketiga syarat ini ditulis dalam 1 baris perintah, seperti: for (i = 1; i < 5; i++). Di dalam perulangan WHILE, ketiga kondisi ini saling terpisah.

Berikut format dasar struktur perulangan WHILE dalam bahasa C:

start;
while (condition) 
{
   // kode program
   // kode program
  increment;
}

Di bagian start biasanya berupa perintah inisialisasi variabel counter, misalnya i = 0. Di bagian condition terdapat kondisi yang harus dipenuhi agar perulangan berjalan, misalnya i < 5. Kemudian perintah increment di dalam block perulangan yang di pakai untuk menaikkan nilai variabel counter, misalnya dengan perintah i++.

Mari kita lihat contoh prakteknya.


Contoh Kode Program Perulangan While Bahasa C

Sebagai praktek pertama, berikut kode program perulangan WHILE untuk menampilkan teks "Hello World" sebanyak 5 kali:

#include <stdio.h>

int main(void)
{
  int i = 1;
  while (i <= 5){
    printf("Hello World \n");
    i++;
  }
  return 0;
}

Hasil kode program:

Hello World
Hello World
Hello World
Hello World
Hello World

Di baris 5 terdapat perintah untuk menginput angka 1 ke dalam variabel i. Nantinya, variabel i ini akan menjadi variabel counter yang dipakai untuk menentukan jumlah perulangan.

Proses perulangan di mulai di baris 6. Perintah while (i <= 5) artinya, selama nilai variabel i kurang atau sama dengan 5, maka jalankan perulangan.

Di dalam blok perulangan terdapat perintah printf("Hello World \n") di baris 7. Ini dipakai untuk menampilkan teks "Hello World". Kemudian di baris 8 terdapat perintah increment, yakni i++. Perintah ini akan menaikkan nilai variabel i sebanyak 1 angka dalam setiap iterasi.

Perulangan while di atas akan di ulang sebanyak 5 kali, mulai dari i = 1, i = 2, i = 3, i = 4, hingga i = 5. Ketika nilai variabel counter i sudah mencapai 6, maka kondisi while (i <= 5) tidak terpenuhi lagi (false), sehingga perulangan berhenti.

Salah satu hal yang harus selalu diingat ketika membuat perulangan while adalah, jangan lupa membuat perintah increment. Jika tidak, kondisi akhir tidak akan pernah terpenuhi dan perulangan akan berjalan terus menerus. Ini dikenal dengan istilah infinity loop. Berikut contohnya:

#include <stdio.h>

int main(void)
{
  int i = 1;
  while (i <= 5){
    printf("Hello World \n");
  }
  return 0;
}

Jika anda menjalankan kode program di atas, teks "Hello World" akan ditampilkan terus menerus, tidak pernah selesai. Penyebabnya karena kondisi while (i <= 5) akan selalu bernilai true. Di dalam blok perulangan tidak ada perintah yang bisa mengubah nilai variabel i agar kondisi while (i <= 5) bernilai false.

Untuk menghentikan infinity loop, tutup paksa jendela hasil dengan men-klik tanda (x) di sudut kanan atas, atau tekan kombinasi CTRL + C.

Contoh kode program perulangan WHILE bahasa pemrograman C (infinity loop)

Contoh hasil infinity loop

Sama seperti perulangan FOR, di dalam block perulangan WHILE kita juga bisa mengakses nilai dari variabel counter i:

#include <stdio.h>

int main(void)
{
  int i = 1;
  while (i <= 5){
    printf("Hello World %i \n",i);
    i++;
  }
  return 0;
}

Hasil kode program:

Hello World 1
Hello World 2
Hello World 3
Hello World 4
Hello World 5

Bagaimana dengan perulangan menurun? tidak masalah. Kita tinggal mengatur kondisi awal, kondisi akhir, serta proses decrement:

#include <stdio.h>

int main(void)
{
  int i = 10;
  while (i > 5){
    printf("Hello World %i \n",i);
    i--;
  }
  return 0;
}

Hasil kode program:

Hello World 10
Hello World 9
Hello World 8
Hello World 7
Hello World 6

Di sini saya mengisi nilai awal variabel counter i dengan angka 10. Kondisi perulangan adalah while (i > 5), artinya selama nilai variabel i di atas 5, jalankan perulangan. Dan karena kita ingin membuat perulangan menurun, maka dipakai perintah decrement i-- yang akan mengurangi nilai variabel i sebanyak 1 angka dalam setiap iterasi.

Sebagai latihan, silahkan anda coba rancang kode program perulangan WHILE untuk membuat deret berikut:

3 6 9 12 15 18 21 24 27 30

Deret ini sudah pernah kita bahasa dalam tutorial perulangan FOR. Sekarang tinggal mengkonversinya menjadi perulangan WHILE.

Sebelum menutup tutorial ini, saya ingin membuat tantangan lain. Tanpa menjalankan kode program di bawah ini, bisakah anda menebak hasilnya?

#include <stdio.h>

int main(void)
{
  int i = 10;
  while (i <= 5){
    printf("Hello World %i \n",i);
    i++;
  }
  return 0;
}

Berapa kali teks "Hello World" tampil? Yup, jawabannya: Tidak ada. Alasannya karena kondisi awal perulangan WHILE sudah langsung tidak terpenuhi.

Di baris 5 saya mengisi variabel i dengan angka 10. Kemudian terdapat blok perulangan WHILE dengan perintah while (i <= 5). Artinya, selama nilai variabel i kurang dari 5, jalankan perulangan. Masalahnya, nilai variabel i saat ini adalah 10, sehingga 10 <= 5 sudah langsung false. Dengan demikian, blok perulangan tidak akan pernah dijalankan.


Pada tutorial kali ini kita telah mempelajari cara penggunaan perulangan while atau while loop dalam bahasa pemrograman C. Selanjutnya akan dibahas tentang perulangan ketiga, yakni Perulangan DO WHILE.

 

9 Comments

  1. Nishio
    29 Mar 19
    • Andre
      01 Apr 19
  2. Andi Gigatera Halil M
    04 Nov 19
  3. khairun
    08 Jan 20
  4. besto
    08 Mar 20
  5. l
    01 Jan 21
  6. Kakiku
    12 Mar 21
    • Andre
      13 Mar 21
  7. Anonymous
    20 Mar 21

Add Comment

Leave a Reply to khairun Cancel reply