Algorithm and Programming - Program Control: Repetition - Gerald Stephanus Tamon // 2201743182
Algorithm and Programming
Pertemuan 10 Oktober 2018
Program Control: Repetition
Gerald Stephanus Tamon // 2201743182 // CB01-CL
Blog ini dibuat dengan sumber materi dari:
Ø PPT Session 9 - 10 Oct 2018 - Program Control: Repetition
Repetition adalah pengulangan satu atau lebih instruksi dalam
suatu waktu. Repetition digunakan dalam C untuk mengulang beberapa pernyataan
atau expression untuk menghasilkan output yang diinginkan. Jumlah pengulangan bisa
ditentukan di dalam program, atau ditentukan saat program berjalan.
Operasi yang digunakan untuk repetition:
- - for
- - while
- - do-while
1. FOR
Ø
Syntax untuk repetition menggunakan for:
for(exp1;
exp2; exp3) statement;
atau:
for(exp1;
exp2; exp3){
statement1;
statement2;
…….
}
exp1 :
inisialisasi (initialization)
exp2 :
kondisi (conditional)
exp3 :
increment atau decrement
exp1, exp2
and exp3 boleh diisi, boleh tidak diisi.
untuk exp1
dan exp3 boleh diisi beberapa expression yang dipisah dengan tanda koma.
Ø
Contoh penggunaan for:
void
reverse(char ss[])
{
int c,i,j;
for(i=0, j=strlen(ss)-1; i<j; i++, j--){
c=ss[i];
ss[i]=ss[j];
ss[j]=c;
}
}
Ø
Contoh program untuk menampilkan angka 1 sampai
10:
#include<stdio.h>
int
main()
{
int x;
for( x = 1 ; x <= 10 ; x++ ) printf( "%d\n", x );
return(0);
}
Ø
Contoh program untuk menampilkan angka 10
sampai 1:
#include<stdio.h>
int
main()
{
int x;
for( x = 10 ; x >= 1 ; x-- ) printf( "%d\n", x);
return(0);
}
Ø
Infinite
Loop
Infinite loop adalah pengulangan tanpa
kondisi untuk berhenti. Untuk mengakhiri pengulangan, gunakan break;
Ø
Nested
Loop
Nested Loop adalah pengulangan
dalam pengulangan. Pengulangan yang di paling dalam yang akan dijalankan
terlebih dahulu.
Ø
Contoh Nested Loop:
int x, y;
for (x=1;x<=5;x++)
for (y=5; y>=1; y--)
printf(”%d %d ”,x,y);
Output :
1 5 1 4 1 3 .. 2 5 2 4 .. 5 1
2. WHILE
Ø
Syntax untuk while:
while (exp) statements;
atau:
while(exp){
statement1;
statement2;
…..
}
exp di dalam while adalah Boolean expression
(expression
yang hasilnya TRUE atau FALSE),
statement akan dijalankan selama hasil exp bukan 0
(FALSE).
Ø
Contoh penggunaan while:
int counter = 1;
while ( counter
<= 10 ) {
printf(
"%d\n", counter );
++counter;
}
3. DO-WHILE
Ø
Syntax:
do{
< statements >;
} while(exp);
statement
akan dilakukan terus selama exp menghasilkan nilai TRUE.
Ø
Contoh penggunaan do-while:
int counter=0;
do {
printf(
"%d ", counter );
++counter;
} while (counter <= 10);
Ø
Di operasi WHILE, statement tidak akan
dijalankan jika exp bernilai FALSE.
Ø
Di operasi DO-WHILE, statement akan dijalankan
sekali jika exp bernilai FALSE, ini dikarenakan validasi kondisi dilakukan
setelah statement berjalan 1 kali.
Ø
Untuk mengakiri pengulangan, bisa dilakukan
dengan beberapa cara:
o
Sentinel
o
Question, apakah pengulangan akan dilanjutkan?
Ø
Contoh (Question):
#include <stdio.h>
int main()
{
int width, height, area;
char repeat;
printf(”Continue ? (Y/N)
:”);
scanf(”%c”,&repeat);
while((toupper(repeat)) ==
’Y’) {
printf(” Width : ”);
scanf(”%d”,&width);
printf(” Height : ”);
scanf(”%d”,&height);
area = width*height;
printf(” Area = %d\n\n”,area);
printf(”Continue ?(Y/N):”);
scanf(”%c”,&repeat);
}
return(0);
}
Ø Contoh (Sentinel):
Sentinel = 0 untuk width dan
height.
#include <stdio.h>
int main()
{
int width, height, area;
do{
printf(” Width : ”);
scanf(”%d”,&width);
printf(” Height : ”);
scanf(”%d”,&height);
area = width*height;
printf(” Area = %d\n\n”,area);
} while((width != 0)
&& (height != 0));
return(0);
}
Beda
Break dan Continue:
Ø
Break digunakan untuk mengakhiri pengulangan
(for, while, dan do-while)
Ø
Continue digunakan untuk melewati semua
statement di bawahnya, dan melanjutkan pengulangan dari awal pengulangan.
Contoh
perbedaan ‘break;’ dan ‘continue;’ dalam program:
Ø
Continue:
#include <stdio.h>
int main() {
int x;
for(x=1; x<=10; x++) {
if (x == 5) continue;
printf("%d ", x);
}
return 0;
}
Output : 1 2 3 4 6 7 8 9 10
Ø
Break:
#include <stdio.h>
int main() {
int x;
for(x=1; x<=10; x++) {
if (x == 5) break;
printf("%d ", x);
}
return 0;
}
Output : 1 2 3 4
Demikian dari post saya. Semoga blog
ini berguna untuk kalian yang ingin belajar. Mohon maaf bila ada salah kata.
Terima kasih telah membaca.
AD:
Spotify Premium 30.000 / bulan; 2XX.000 / tahun:
Tokopedia
Instagram
Line@
AD:
Spotify Premium 30.000 / bulan; 2XX.000 / tahun:
Tokopedia
Line@
Comments
Post a Comment