
Pengulangan(looping) adalah suatu bagian yang bertugas melakukan kegiatan mengulang suatu proses sesuai dengan yang diinginkan. Banyak dari aplikasi perangkat lunak yang melakukan pekerjaan berulang sampai sebuah kondisi yang diinginkan, oleh karena itu pengulangan merupakan bagian yang penting dalam pemrograman karena dengan adanya pengulangan pembuat program tidak perlu menulis kode program sebanyak pengulangan yang diinginkan.
pengulangan mempunyai beberapa bagian yang harus dipenuhi yaitu :
- Inisialisasi adalah tahap persiapan membuat kondisi awal sel melakukan pengulangan, misalnya mengisi variabel dengan nilai awal. Tahap ini dilakukan sebelum memasuki bagian pengulangan.
- Proses terjadi di dalam bagian pengulangan dimana berisi semua proses yang perlu dilakukan secara berulang-ulang.
- Iterasi terjadi di dalam pengulangan di mana merupakan kondisi pertambahan agar pengulangan dapat terus berjalan.
- Terminasi adalah kondisi berhenti dari pengulangan, kondisi berhenti sangat penting dalam pengulangan agar pengulangan dapat berhenti, tidak menjadi pengulangan yang tanpa henti. Kondisi pengulangan adalah kondisi yang dipenuhi oleh kondisi jalannya algoritma untuk masuk ke dalam blok pengulangan.
Pengulangan merupakan salah satu inti dari analisis kasus pada pembuatan algoritma, sebuah kasus harus dipikirkan penyelesaiannya dengan pemikiran ada proses atau aksi yang harus dikerjakan secara berulang agar sebuah kasus terselesaikan
Pengulangan ‘for’
Struktur pengulangan for biasa digunakan untuk mengulang suatu proses yang telah diketahui jumlah pengulangannya. Dari segi penulisannya, struktur pengulangan for tampaknya lebih efisien karena susunannya lebih simpel dan sederhana. Bentuk umum pengulangan for adalah sebagai berikut :
for(Inisialisasi; Terminasi; Iterasi){ Proses; }
Contoh Kode Program Menampilkan Tulisan:
#include "stdio.h" main(){ int x; for(x=1; x<=10; x++){ printf("%d. Belajar Pengulangan forn", x); } }
Contoh Kode Program Menampilkan Bilangan Ganjil
#include "stdio.h" main(){ int x; for(x=1;x<=10;x++){ if(x%2==1){ printf("%d ", x); } } }
Pengulangan “while”
Pada pengulangan while, pengecekan terhadap pengulangan dilakukan di bagian awal (sebelum tubuh loop). Lebih jelasnya, bentuk struktur pengulangan while adalah sebagai berikut:
Inisialisasi while(Terminasi){ Proses Iterasi }
Contoh Kode Program Menampilkan Tulisan:
#include "stdio.h" main(){ int x; x=1; while(x<=10){ printf("%d. Belajar Pengulangan Whilen", x); x++; } }
Contoh Kode Program Menampilkan Bilangan Ganjil
#include "stdio.h" main(){ int x; x=1; while(x<=100){ if(x%2!=0){ printf("%d ", x); } x++; } }
Pengulangan ‘do-while’
Perbedaan mendasar dengan pengulangan yang lain adalah pada pengulangan do-while, proses pasti akan dilakukan minimal 1 kali. Hal ini terjadi karena terminasi diletakan setelah proses. Berikut ini struktur dari pengulangan do-while:
Inisialisasi do{ Proses Iterasi }while(Terminasi)
Setelah proses dijalankan 1 kali maka barulah terjadi pengecekkan apakah proses diulang lagi atau tidak.
Contoh Kode Program Menampilkan Tulisan:
#include "stdio.h" main(){ int x; x=1; do{ printf("%d. Belajar Pengulangan do-Whilen", x); x++; }while(x<=10); }
Contoh Kode Program Menampilkan Bilangan Kelipatan 3:
#include "stdio.h" main(){ int x; x=1; do{ if(x%3==0){ printf("%d ", x); } x++; }while(x<=10); }
Contoh Β Kode Program Mengulang Pilihan Program:
#include "stdio.h" #include "stdlib.h" main(){ int x,pilihan; do{ system("cls"); printf("Pilihlah Menu Berikut Ini :n"); printf("t1.Cetakn"); printf("t2.Lihatn"); printf("t3.Keluarn"); printf("Pilihan Anda : "); scanf("%d",&pilihan); if(pilihan==1){ printf("nCetak Laporan. Siapkan Printer"); }else if(pilihan==2){ printf("nTampilkan Laporan"); } getch(); }while(pilihan!=3); }
Silahkan eksplorasi lebih lanjut ke Pengulangan Bersarang Pada Bahasa C
Bila ada pertanyaan dan komentar silahkan ditulis di bawah.
Wah teori dasar yang bagus penyampaiannya.
Terima kasih mas
Terima kasih telah mengunjungi Saliman…
Alhamdulillah bisa membantu…:D
wah penyampaian yang bagus.
sedikit nambahin mas yang pengulangan while menampilkan bilangan ganjil itu
mungkin salah tulis
kalau (x%2!=1) itu ntar hasilnya pasti genap
Thanks utk debugnya… π
gan mau nanya misalnya saya input n =3 outputnya 1 2 3 trus kalo saya input 7 outputnya 1 2 3 1 2 3 1 itu gimana ya gan?
Coba Ini :
kalau inputnya 20 dengan 7 tp outptnya keluar 12345671234567, itu bagaiman lg mas?
rubah printf(“%d “, (j%3)+1); jadi printf(“%d “, (j%7)+1);
1stβ βSampleβ βInput 8β β3
Outputβ βforβ β1stβ βSampleβ βInput 1β β2β β3β β1β β2β β3β β1β β2
2ndβ βSampleβ βInput 20β β7
Outputβ βforβ β2ndβ βSampleβ βInput 1β β2β β3β β4β β5β β6β β7β β1β β2β β3β β4β β5β β6β β7β β1β β2β β3β β4β β5β β6
Pertanyaan saya, kalau kita masukin input apa saja outputnya keluar seperti itu mas, padahal kita random gitu masukinnya. Jadi, ga patokan sama (j%3) atau (j%7). terimakasih mas
mas, kalau ini bagaimana ya?
2 : input
0 days, 0 hours, 0 minutes, 2 seconds. : output
#include “stdio.h”
int main(){
int nilai;
int hari,hariSisa,jam,jamSisa,menit,menitSisa,detik;
printf(“Masukkan Nilai : “);
scanf(“%d”,&nilai);
hari = nilai / (60*60*24);
hariSisa = nilai % (60*60*24);
jam = hariSisa / (60*60);
jamSisa = hariSisa % (60*60);
menit = jamSisa / 60;
detik = jamSisa % 60;
printf(“%d days %d hours %d minutes %d seconds \n”,hari,jam,menit,detik);
}
error mas hehe, but thankyou ya mas.
itu masalah tanda petik aja… cek ke sini https://onlinegdb.com/HJ35ijThb
iya mas hehe
thankyou ya
#include
#include
#include “stdlib.h”
int main(void)
{
char menu;
int bil_pertama, bil_kedua, hasil;
do
{
printf(“\n”);
printf(” ====================================\n”);
printf(” Program Kalkulator Sederhana\n”);
printf(” ====================================\n\n”);
printf(” Menu :\n”);
printf(” \t[1] Penjumlahan\n”);
printf(” \t[2] Pengurangan\n”);
printf(” \t[3] Perkalian\n”);
printf(” \t[4] Pembagian\n”);
printf(” \t[5] Perpangkatan\n”);
printf(” \t[6] Perkuadratan\n”);
printf(” \t[7] Persentase\n”);
printf(” \t[8] Keluar\n”);
printf(” Pilih menu : “);
scanf(“%c”,&menu);
if(menu == ‘1’)
{
printf(“\n [1] Penjumlahan :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = bil_pertama + bil_kedua;
printf(” ——————————- +\n”);
printf(” Hasil : %d”, hasil);
}
else if(menu == ‘2’)
{
printf(“\n [2] Pengurangan :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = bil_pertama – bil_kedua;
printf(” ——————————- \n”);
printf(” Hasil : %d”, hasil);
}
else if(menu == ‘3’)
{
printf(“\n [3] Perkalian :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = bil_pertama * bil_kedua;
printf(” ——————————- \n”);
printf(” Hasil : %d”, hasil);
}
else if(menu == ‘4’)
{
printf(“\n [4] Pembagian :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = bil_pertama / bil_kedua;
printf(” ——————————- \n”);
printf(” Hasil : %d”, hasil);
}
else if(menu == ‘5’)
{
printf(“\n [5] Perpangkatan :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = pow(bil_pertama,bil_kedua);
printf(” ——————————- \n”);
printf(” Hasil : %d”, hasil);
}
else if(menu == ‘6’)
{
float a,x,y;
printf(“\n [5] Persentase :\n”);
printf(” ——————————-\n”);
printf(“Masukan bilangan = “);
scanf(“%f”,&a);
x=sqrt(a);
printf(” ——————————- \n”);
printf(“\nAkar dari %7.2f = %4.2f”,a,x);
getchar();
}
else if(menu == ‘7’)
{
printf(“\n [5] Persentase :\n”);
printf(” ——————————-\n”);
printf(” Masukan bilangan pertama : “);
scanf(“%d”,&bil_pertama);
printf(” Masukan bilangan kedua : “);
scanf(“%d”,&bil_kedua);
hasil = bil_pertama * bil_kedua /100;
printf(” ——————————- \n”);
printf(” Hasil : %d”, hasil);
}
}
while(menu != ‘8’);
printf(“\n\n ====================================\n”);
getchar();
return 0;
}
loop nya kok jadi 2x bang
Kalo dalam satu program ada for juga while gimana ya code nya?