Menguasai Loop dalam C: For, While, dan Do-While Dijelaskan dengan Contoh Praktis
Apa itu Loop dalam C?
Sebuah loop mengulangi blok pernyataan sampai kondisi tertentu menjadi salah. Dalam C, sebuah loop terdiri dari tubuh dan pernyataan kontrol yang menentukan berapa kali tubuh dieksekusi. Menguasai loop esensial untuk menulis program C yang efisien dan mudah dibaca.
Dalam tutorial ini Anda akan menemukan:
Definisi dan tujuan loop dalam C
Jenis loop: terkontrol masuk vs terkontrol keluar
Dasar-dasar loop while
Dasar-dasar loop do-while
Dasar-dasar loop for
Menggunakan break dan continue
Memilih loop yang tepat untuk skenario tertentu
Jenis Loop dalam C
Loop C diklasifikasikan berdasarkan posisi kondisi kontrolnya:
Terkontrol masuk – kondisi dievaluasi sebelum tubuh berjalan (misalnya, while dan for).
Terkontrol keluar – kondisi dievaluasi setelah tubuh berjalan (misalnya, do‑while).
Sebuah loop tak terbatas terjadi ketika loop tidak pernah memenuhi kondisi pengakhirannya. Penyebab umum termasuk hilangnya pemeriksaan pengakhiran atau kondisi yang selalu benar.
Loop While dalam C
Loop while adalah bentuk paling sederhana dari loop terkontrol masuk. Sintaksnya adalah:
while (kondisi) { pernyataan; }
Kondisi dievaluasi terlebih dahulu; jika benar, tubuh dieksekusi. Setelah setiap eksekusi, kondisi dievaluasi ulang sampai menjadi salah.
Contoh – cetak angka 1 hingga 10:
#include <stdio.h> int main() { int num = 1; while (num <= 10) { printf("%d\n", num); num++; } return 0; }
Output:
1 2 3 4 5 6 7 8 9 10
Loop While dalam Pemrograman C
Loop Do-While dalam C
Loop do‑while menjamin bahwa tubuh dieksekusi setidaknya sekali, menjadikannya loop terkontrol keluar. Sintaks:
do { pernyataan; } while (kondisi);
Contoh – cetak tabel perkalian 2 hingga 10:
#include <stdio.h> int main() { int num = 1; do { printf("%d\n", 2 * num); num++; } while (num <= 10); return 0; }
Output:
2 4 6 8 10 12 14 16 18 20
Loop Do-While dalam Pemrograman C
Loop For dalam C
Loop for sangat efisien untuk iterasi dengan awal, akhir, dan langkah yang diketahui. Sintaks:
for (inisialisasi; kondisi; inkremen) { pernyataan; }
Inisialisasi berjalan sekali.
Kondisi diperiksa sebelum setiap iterasi.
Inkremen memperbarui variabel loop.
Contoh – cetak angka 1 hingga 10:
#include <stdio.h> int main() { for (int number = 1; number <= 10; number++) { printf("%d\n", number); } return 0; }
Output:
1 2 3 4 5 6 7 8 9 10
Loop For dalam Pemrograman C
Loop for yang kompleks dapat mencakup beberapa ekspresi dan bahkan komponen kosong:
for (int i = 0, j = num; i < j; i++, j--) { // pernyataan }
Loop bersarang umum, terutama untuk array multidimensi. Contoh – tabel perkalian:
#include <stdio.h> int main() { int i, j; int table = 2; int max = 5; for (i = 1; i <= table; i++) { for (j = 0; j <= max; j++) { printf("%d x %d = %d\n", i, j, i * j); } printf("\n"); } return 0; }
Output:
1 x 0 = 0 1 x 1 = 1 1 x 2 = 2 1 x 3 = 3 1 x 4 = 4 1 x 5 = 5 2 x 0 = 0 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10
Pernyataan Break dalam C
Kata kunci break keluar dari loop terdekat atau pernyataan switch segera. Contoh – hentikan loop while ketika nilai mencapai 3:
#include <stdio.h> int main() { int num = 5; while (num > 0) { if (num == 3) break; printf("%d\n", num); num--; } return 0; }
Output:
5 4
Pernyataan Continue dalam C
Kata kunci continue melewati sisa iterasi saat ini dan melanjutkan ke siklus loop berikutnya. Contoh – lewati pencetakan angka 5:
#include <stdio.h> int main() { int nb = 7; while (nb > 0) { nb--; if (nb == 5) continue; printf("%d\n", nb); } return 0; }
Output:
6 4 3 2 1
Memilih Loop yang Tepat
Putuskan berdasarkan kapan kondisi harus dievaluasi:
Preevaluasi diperlukan – gunakan while atau for.
Preevaluasi pasca diperlukan – gunakan do‑while.
Ringkasan
Sebuah loop mengulangi blok kode sampai kondisinya menjadi salah.
C menawarkan tiga loop utama: while, do‑while, dan for.
Loop terkontrol masuk mengevaluasi kondisi sebelum setiap iterasi; loop terkontrol keluar mengevaluasi setelahnya.
Gunakan break untuk mengakhiri loop lebih awal dan continue untuk melewati iterasi.
Pilih loop yang paling sesuai dengan kebutuhan alur kontrol algoritma Anda.