Repetition in C Programming
Repetition atau looping adalah satu atau lebih instruksi pengulangan beberapa kali, atau sampai memenuhi suatu syarat. Operasi-operasi yang termasuk dalam repetition/looping yaitu :
- For loop
- While loop
- Do-while loop
- Goto
Goto termasuk dalam jenis looping yang melompat dari goto menuju ke statement yang dituju dalam function yang sama. Penggunaan goto sangat tidak disarankan dalam semua jenis bahasa program karena akan menyebabkan kita sulit membaca alur jalan sebuah program. Looping yang sering digunakan dalam program adalah for loop, while loop, dan do-while loop. Perbedaan dari while dan do-while adalah dimana while loop akan melihat dari kondisi sebelum menjalankan statement di dalamnya, sedangkan do-while loop akan melihat kondisi setelah statement di dalamnya telah dijalankan satu kali. Contoh sederhana yang menggunakan looping yaitu mesin ATM. Mesin ATM menggunakan operasi looping do-while, karena kita harus memasukkan sesuatu (PIN ATM) terlebih dahulu baru hasilnya akan keluar. Repetition sangat banyak gunanya karena segala sesuatu dihidup ini pasti ada yang namanya pengulangan. Contoh lain yang menggunakan repetition yaitu mencetak angka genap dalam jumlah yang banyak.
1. For Loop
For memiliki 3 hal yang perlu diisi yaitu expression 1, expression2, dan expression3. Expression 1 isinya berupa inisialisasi, expression 2 berisi kondisi yang perlu dipenuhi, dan expression 3 berisi increment atau decrement. Contoh syntaxnya:
for(exp1;exp2;exp3) {
statement1;
statement2;
........
Flowchart dari statement for loop:
Repetition for terbagi atas 2 yaitu:
Infinite loop adalah loop dimana tidak ada kondisi untuk berhentinya, loop ini dapat digunakan di for-loop dengan menghilangkan semua parameter (exp1, exp2, exp3). Untuk menghentikan loop ini dapat dengan menggunakan break. Apabila di .exe terjadi endless loop/infinite loop dapat diakhiri dengan menekan Ctrl + C.
Nested loop yaitu loop didalam loop. Operasi repetition ini akan dimulai dari loop yang paling dalam.
Contoh-contoh bentuk kodingan menggunakan for-loop :
1. Membuat bintang sebanyak 5

#include <stdio.h>
int main(){
int i;
for(i=0; i<5;i++){
printf("*");
}
return 0;
}
2. Membuat bintang sebanyak 8 apabila diketahui i-nya sama dengan 180

#include <stdio.h>
int main(){
int i;
int x=188;
for(i=180; i<x;i++){
printf("*");
}
return 0;
}
3. Mencetak angka 1,2,3,.. dst secara berurutan sebanyak n

#include <stdio.h>
int main(){
int i;
int x;
printf("Masukkan jumlah angka = ");
scanf("%d",&x); fflush(stdin);
for(i=0; i<=x;i++){
printf("%d",i+1); }
return 0;
}
4. Hanya mencetak angka genap saja sebanyak n

#include <stdio.h>
int main(){
int i;
int x;
printf("Masukkan jumlah angka = ");
scanf("%d",&x); fflush(stdin);
for(i=1; i<=x;i++){
printf("%d\n",(i+1)*2);
}
return 0;
}
5. Membuat kotak yang terbuat dari simbol "*"

#include <stdio.h>
int main(){
int i,j;
int x;
printf("Masukkan jumlah : ");
scanf("%d",&x);
for(i=0; i<x; i++){
for(j=0; j<x;j++){
printf("*");
}printf("\n");
}printf("\n");
return 0;
}
6. Membuat segitiga siku-siku

#include <stdio.h>
int main(){
int i,j;
int x;
printf("Masukkan jumlah : ");
scanf("%d",&x);
for(i=0; i<x; i++){
for(j=0; j<=i;j++){
printf("*");
}printf("\n");
}
return 0;
}
2201766173
Binus.ac.id
skyconnectiva.com
Aviel Leonardo Wijaya