4 adp struktur perulangan

Post on 15-Jul-2015

146 views 5 download

Transcript of 4 adp struktur perulangan

ALGORITMA & DASAR

PEMROGRAMAN

STRUKTUR PENGULANGAN

(LOOPING)

STRUKTUR PERULANGAN

Perintah perulangan (looping)

digunakan untuk melakukan suatu

proses secara berulang-ulang, jika

suatu kondisi dipenuhi atau

sebaliknya.

Pada prakteknya proses pengulangan

biasanya digunakan untuk beberapa

hal, misalnya mengulang proses

pemasukan data, mengulang proses

perhitungan dan mengulang proses

penampilan hasil pengolahan data.

PERINTAH FOR

Proses looping yang menggunakan penghitung

(counter) dapat dibuat menggunakan pernyataan

FOR. Pernyataan ini digunakan bila sudah

diketahui berapa kali sebuah atau beberap

pernyataan akan dilakukan perulangan.

Bentuk umum:

for(awal;akhir;peningkatan/penurunan)

{

pernyataan;

}

PERINTAH FOR Bentuk di atas berarti:

a.Awal adalah inisialisasi untuk memberi nilai awalterhadap variabel pengendali looping (disebut jugaindeks atau loop-control variable).

b.Akhir adalah kondisi untuk keluar dari looping ataukondisi yang harus dipenuhi supaya perulanganmasih dapat terus dilakukan.

c.Penurunan/peningkatan adalah pengatur kenaikanatau penurunan nilai variabel pengendali looping

Misalkan untuk menampilkan tulisan “ContohPenggunaan Statemen For” sebanyak 5 kali, makasesuai dengan bentuk umum di atas penulisannyaadalah sebagai berikut:

/* ---------------------------------

Nama Program: ADP_21cpp

Statemen for

----------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X;

printf("Contoh Program Penggunaan Statemen for\n");

printf("_______________________________\n");

printf("\n");

for(X=1; X<=5; X++)

printf("Contoh Penggunaan Statemen For\n");

printf("\n");

system ("pause");

}

PERINTAH FOR Algoritma program di atas adalah:

1. Tentukan nilai awal, batas akhir dan penambahan nilai

2. Cetak kalimat

3. Ulangi langkah 1 sampai batas akhir

Beberapa contoh perulangan dengan statemen for dan variasinya adalah:

1. Perulangan Positif,

2. Perulangan Negatif,

3. Perulangan dengan Blok Statemen,

4. Statemen For Tanpa Nilai Awal,

5. Statemen For Tanpa Peningkatan,

6. Statemen For Tanpa Nilai Awal dan Peningkatan

7. Perulangan For Tanpa Nilai Awal, Akhir, dan Peningkatan

8. Perulangan dengan Statemen Kosong

9. Variasi di Kondisi Perulangan

10. Statemen For Menggunakan Operator Koma

11. Perulangan For Bersarang

12. Statemen break untuk Menghentikan Perulangan for

Perulangan Positif, yang merupakan perulangan dengan

peningkatan positif untuk variabel pengontrol perulangannya

(misalnya I++) dengan penambahan 1/* --------------------------------------------------------------

Nama Program: ADP_2_for_perulangan_positif.cpp

Statemen for Perulangan Positif dengan Penambahan 1

---------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I;

printf("Contoh Program Penggunaan Statemen for");

printf(" Perulangan Positif dengan Penambahan 1\n");

printf(“______________________________\n");

printf("\n\t");

for(I=-5; I<=5; I++)

printf("%d\n\t",I);

printf("\n");

system ("pause");

}

Perulangan Positif, yang merupakan perulangan dengan peningkatan

positif untuk variabel pengontrol perulangannya (misalnya I++)

dengan penambahan lebih dari 1

/* ---------------------------------------------------------------------------

Nama Program: ADP_2a_for_perulangan_positif.cpp

Statemen for Perulangan Positif dengan Penambahan lebih dari 1

--------------------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I;

printf("Contoh Program Penggunaan Statemen for");

printf(" Perulangan Positif dengan Penambahan Lebih Dari 1\n");

printf("______________________________________\n");

printf("\n\t");

for(I=-5; I<=10; I+=3)

printf("%d\n\t",I);

printf("\n");

system ("pause");

}

Perulangan Negatif, yang merupakan perulangan dengan penurunan nilai

(dari nilai besar ke nilai kecil) untuk variabel pengontrol perulangannya

(misalnya I--) dengan pengurangan 1

/* -----------------------------------------------------------------

Nama Program: ADP_3_for_perulangan_negatif.cpp

Statemen for Perulangan Negatif dengan Pengurangan 1

------------------------------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I;

printf("Contoh Program Penggunaan Statemen for");

printf(" Perulangan Negatif dengan Pengurangan 1\n");

printf(“_______________________________\n");

printf("\n\t");

for(I=5; I>0; I--)

printf("%d\n\t",I);

printf("\n");

system ("pause");

}

Perulangan Negatif, yang merupakan perulangan dengan penurunan nilai

(dari nilai besar ke nilai kecil) untuk variabel pengontrol perulangannya

(misalnya I--) dengan pengurangan >1

/* -----------------------------------------------------------------------------

Nama Program: ADP_3a_for_perulangan_negatif.cpp

Statemen for Perulangan Negatif dengan Pengurangan Lebih dari 1

------------------------------------------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I;

printf("Contoh Program Penggunaan Statemen for");

printf(" Perulangan Negatif dengan Pengurangan Lebih dari 1\n");

printf("_______________________________________\n");

printf("\n\t");

for(I=5; I>=-5; I-=3)

printf("%d\n\t",I);

printf("\n");

system ("pause");

}

Perulangan dengan Blok Statemen, yang memungkinkan sejumlah

statemen di dalam blok diproses berulang-berulang./* -------------------------------

Nama Program: ADP_25.cpp

Statemen for Perulangan Dengan

Blok Statemen

------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I,N;

float X, Rata, Total=0;

printf("Contoh Program Penggunaan Statemen for\n");

printf("untuk Perulangan Dengan Blok Statemen\n");

printf("_____________________________________\n");

printf("\n");

/*Masukkan Jumlah Data*/

printf("Masukkan Jumlah Data yang diinginkan: ");

scanf("%d",&N);

printf("\n");

/*Memasukkan Nilai dari masing-masing Data*/

for(I=1; I<=N; I++){

printf("Data ke %d : ",I);scanf("%f",&X);

Total=Total+X;

}

Rata=Total/N;

printf("\n");

/*Menampilkan Hasil*/

printf("Banyaknya data: %d\n",N);

printf("Nilai total seluruh data:

%.2f\n",Total);

printf("Rata-rata nilai: %.2f\n",Rata);

printf("\n”);

system ("pause");

}

Statemen For Tanpa Nilai Awal, dimana nilai awal dari variabel pengontrol

perulangan tidak harus ada di statemen for, tetapi dapat ditentukan

sebelum statemen ini.

/* -----------------------------------------------------------------------

Nama Program: ADP_4_statemen_for_tanpa_nilai_awal.cpp

Statemen for Tanpa Nilai Awal

----------------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X;

X=1;

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Awal\n");

printf(“_______________________________\n");

printf("\n");

for(; X<=5; X++)

printf("Contoh Penggunaan Statemen For Tanpa Nilai Awal\n");

printf("\n");

system ("pause");

}

Statemen for Tanpa Peningkatan, dimana ungkapan yang menunjukkan peningkatan

nilai dari variabel pengontrol perulangan dapat tidak dituliskan, tetapi dapat dituliskan

sebagai suatu statemen yang akan diproses berulang-ulang/* -------------------------------------------------------------------------------------

Nama Program: ADP_5_statemen_for_tanpa_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Peningkatan atau Penurunan

--------------------------------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X;

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Peningkatan atau Penurunan\n");

printf(“_______________________________\n");

printf("\n");

for(X=1; X<=5;){

X++;

printf("Contoh Penggunaan Statemen For Tanpa Nilai Peningkatan atau

Penurunan\n");

}

printf("\n");

system ("pause");

}

/* -----------------------------------------------------------------------------------------

Nama Program:

ADP_5a_statemen_for_tanpa_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Peningkatan atau Penurunan

------------------------------------------------------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X;

printf("Contoh 2 Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Peningkatan atau Penurunan\n");

printf(“_________________________________\n");

printf("\n\t");

for(X=3; X<=7;){

printf("%d\n\t",X++);

}

printf("\n");

system ("pause");

}

/* ------------------------------------------------------------------------------------------

Nama Program:

ADP_5b_statemen_for_tanpa_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Peningkatan atau Penurunan

------------------------------------------------------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X;

printf("Contoh 3 Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Peningkatan atau Penurunan\n");

printf(“_________________________________\n");

printf("\n\t");

for(X=3; X<=7;){

printf("%d\n\t",++X);

}

printf("\n");

system ("pause");

}

Statemen for Tanpa Nilai Awal dan Peningkatan, dimana nilai awal dan peningkatan

untuk variabel pengontrol perulangan boleh tidak ditulis di statemen for/* -----------------------------------------------------------------------------------------------

Nama Program: ADP_6_for_tanpa_nilai_awal_dan_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Awal dan Peningkatan atau Penurunan

----------------------------------------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int X=1;

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Awal dana Peningkatan atau Penurunan\n");

printf(“_____________________________________\n");

printf("\n");

for(; X<=5;){

X++;

printf("Contoh Penggunaan Statemen For Tanpa Nilai Awal");

printf(" dan Peningkatan atau Penurunan\n");

}

printf("\n");

system ("pause");

}

Statemen for Tanpa Nilai Awal, Akhir, dan Peningkatan, biasanya digunakan untuk

membuat suatu perulangan yang tidak pernah berhenti (infinite loop), yang

diakibatkan oleh kondisi yang digunakan untuk mengakhiri perulangan tidak

terdapat di statemen for yang digunakan

/* ------------------------------------------------------------------------------------------------------

Nama Program: ADP_7_for_tanpa_nilai_awal_akhir_dan_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Awal, Akhir dan Peningkatan atau Penurunan

------------------------------------------------------------------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

main()

{

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Awal, Nilai Akhir, dan Peningkatan atau Penurunan\n");

printf(“_____________________________________________\n");

printf("\n");

for(;;){

printf("Contoh Penggunaan Statemen For Tanpa Nilai Awal");

printf(" dan Peningkatan atau Penurunan yang akan ditampilkan TANPA HENTI\n");

}

printf("\n");

system ("pause");

}

/* -------------------------------------------------------------------------------------------------------

Nama Program: ADP_7a_for_tanpa_nilai_awal_akhir_dan_peningkatan_penurunan.cpp

Statemen for Tanpa Nilai Awal, Akhir dan Peningkatan atau Penurunan

dengan statemen break

--------------------------------------------------------------------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Awal, Nilai Akhir, dan Peningkatan atau Penurunan\n");

printf("_____________________________________________\n");

printf("\n");

for(;;){

printf("Contoh Penggunaan Statemen For Tanpa Nilai Awal");

printf(" dan Peningkatan atau Penurunan\n");

printf(" dengan statemen break\n");

break;

}

printf("\n");

system ("pause");

}

Untuk menghentikan perulangan, dapat digunakan statemen break.

/* -------------------------------------

Nama Program: ADP_25.cpp

Statemen for Tanpa Nilai Awal,

Akhir, dan Peningkatan atau Penurunan

------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

printf("Contoh Program Penggunaan Statemen for\n");

printf("Tanpa Nilai Awal, Akhir, dan");

printf("Peningkatan atau Penurunan\n");

printf("_______________________________________\n");

printf("\n");

for(;;)

{

printf("Tampilan ini terus ditampilkan TANPA BERHENTI\n");

printf("\n");

break;

}

system ("pause");

}

/* ------------------------------------------

Nama Program: ADP_25.cpp

Statemen for dengan Perulangan menggunakan

Statemen Kosong

------------------------------------------ */

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

main()

{

int I;

long int J;

clrscr();

printf("Contoh Variasi Program di Kondisi Perulangan\n");

printf("____________________________________________\n");

printf("\n");

for(I=1; I<=10;I++){

gotoxy(40,12);printf("/");

for(J=0;J<500000000;J++);

gotoxy(40,12);printf("\\");

for(J=0;J<500000000;J++);

}

system ("pause");

}

Perulangan dengan Statemen Kosong dimaksudkan untuk memproses berulang-

ulang sesuatu yang tidak ada.

/* --------------------------------------------

Nama Program: ADP_25.cpp

Contoh Variasi Program di Kondisi Perulangan

-------------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I, J, N;

printf("Contoh Variasi Program Menggunakan Operator Koma\n");

printf("________________________________________________\n");

printf("\n");

N=5;

for(I=1,J=N;I<=N;I++,J--)

printf("I = %d dan Y = %d\n",I,J);

system ("pause");

}

Perulangan for Bersarang, dimana suatu perulangan for dapat berada di dalam

ruang lingkup perulangan for yang lainnya. Biasa disebut juga nested for. Untuk

perulangan bersarang ini, tiap-tiap statemen for harus mengnakan variabel

pengontrol perulangan yang berbeda satu dengan lainnya.

/* -------------------------------------

Nama Program: ADP_25.cpp

Contoh Program Statemen for bersarang

------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

main()

{

int I, J;

printf("Contoh Program Penggunaan Statemen for bersarang\n");

printf("________________________________________________\n");

printf("\n");

for(I=1;I<=3;I++){

for(J=1;J<=4;J++)

printf(" (I = %d, Y = %d)",I,J);

printf("\n");

}

system ("pause");

PERINTAH WHILE

Bentuk umum:

while (kondisi)

pernyataan;

atau

while (kondisi){

pernyataan1;

pernyataan2;

}

PERINTAH WHILE

Pernyataan dapat berupa pernyataan kosong,

pernyataan tunggal atau blok pernyataan yang

akan diproses secara berulang-ulang.

Proses perulangan akan masih dilakukan jika

kondisi yang diseleksi di pernyataan while masih

bernilai benar dan perulangan akan berhenti jika

kondisinya sudah bernilai salah.

/* -----------------------------------

Program ADP_While_1.cpp

Statemen while

----------------------------------- */

#include<stdio.h>

#include<stdlib.h>

main()

{

int X;

printf("Contoh Program Penggunaan Statemen While\n");

printf("________________________________________\n");

X=7;

while(X>5)printf("%d",X++);

system("pause");

}

/* ------------------------------------

Program ADP_While_1a.cpp

Statemen while

------------------------------------ */

#include<stdio.h>

#include<stdlib.h>

main()

{

int X;

printf("Contoh 2 Program Penggunaan Statemen While\n");

printf("________________________________________\n");

printf("\n\t");

X=3;

while(X<=7)printf("%d\n\t",X+=2);

printf("\n");

system("pause");

}

/* ------------------------------------

Program ADP_While_1b.cpp

Statemen while

------------------------------------- */

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

main()

{

char C='\0';

printf("Contoh 3 Program Penggunaan Statemen While\n");

printf("________________________________________\n");

printf("\n”);

while(!(C=='N' || C== 'n')) C=getche();

system("pause");

}

Berikut adalah contoh proses perulangan yang akan menunggu

pemasukan suatu karakter dari keyboard, dimana perulangan akan

berhenti jika karakter yang dimasukkan adalah ‘N’ atau ‘n’

PERINTAH DO..WHILE

Bentuk umum:

do pernyataan;

while (kondisi)

atau

while (kondisi){

pernyataan1;

pernyataan2;

}

WHILE

DO... WHILE

WHILE... CONTINUE