pengulangan looping n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Pengulangan (looping) PowerPoint Presentation
Download Presentation
Pengulangan (looping)

Loading in 2 Seconds...

play fullscreen
1 / 38

Pengulangan (looping) - PowerPoint PPT Presentation


  • 147 Views
  • Uploaded on

Pengulangan (looping). DPK. Issa Arwani , S.kom, M.sc. Issa.arwani@ub.ac.id UNIVERSITAS BRAWIJAYA MALANG. Contoh Algoritma. Algoritma Sarapan Pagi Mulai Ambil piring Masukkan nasi dan lauk dalam piring Ambil sendok dan garpu Ulangi Angkat sendok dan garpu Ambil nasi dan lauk

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Pengulangan (looping)' - helen-powers


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
pengulangan looping
Pengulangan (looping)

DPK

IssaArwani, S.kom, M.sc.

Issa.arwani@ub.ac.id

UNIVERSITAS BRAWIJAYA

MALANG

contoh algoritma
ContohAlgoritma

AlgoritmaSarapanPagi

Mulai

Ambilpiring

Masukkannasidanlaukdalampiring

Ambilsendokdangarpu

Ulangi

Angkatsendokdangarpu

Ambilnasidanlauk

Suapkankedalammulut

Taruhsendokdangarpu

Kunyah

Sampai (nasidanlaukhabis) ATAU kekenyangan

Bereskanpiring, sendokdangarpu

Selesai

struktur pengulanangan
Struktur Pengulanangan
  • Strukturpengulangandimaksudkanuntukmelakukanprosespengulangandaribeberapainstruksidalamsejumlahpengulangantertentu
  • Jumlahpengulangandapatditentukansebelumnyaatauditentukandalamprosespelaksanaanpengulangan.
  • Tigamacam struktur pengulangan dalam pemrograman terstruktur, yaitu:
      • Struktur for
      • Struktur while
      • Struktur do-while
struktur pengulangan for
Struktur Pengulangan for
  • Konstruksifor

for(exp1; exp2; exp3) statement;

atau:

for(exp1; exp2; exp3){

statement1;

statement2;

…….

}

exp1:adalahekspresiuntukinisialisasi,

exp2:adalahekspresi conditional

exp3:adalahekspresi increment ataudecrement

exp1, exp2 dan exp3 adalahsifatnya optional (bolehadabolehtidakada).

struktur pengulangan f or
Struktur Pengulangan for

exp1

exp1

exp3

exp3

statements

statements

true

true

exp2

exp2

false

false

Strukturlogikapengulangan for

struktur pengulangan f or1
Struktur Pengulangan for

x = 1

x++

printf(“%d\n”,x)

true

x<=10

false

  • Contoh :
    • for (x=1; x <= 10; x++) printf(“%d\n”,x);
struktur pengulangan f or2
Struktur Pengulangan for

#include<stdio.h>

int main()

{ intx;

for( x = 1 ; x <= 10 ; x++ ) printf( "%d\n", x );

return(0);

}

#include<stdio.h>

int main()

{ intx;

for( x = 10 ; x >= 1 ; x-- ) printf( "%d\n", x);

return(0);

}

Contoh :

struktur pengulangan f or3
Struktur Pengulangan for

#include <stdio.h>

#include <iostream.h>

int main () { inti = 0;

for(;;) { i++; printf("%d ", i);

if (i>=10) break;

}

printf("\n\n");

system("PAUSE");

return(0);

}

  • Infinite Loop

Untukmembuat infinite loop dapatdilakukandenganmenggunakan “for-loop”, denganmenghilangkanketiga parameter (exp1, exp2, exp3) yang adapada for loop. Untukkeluardari loop dapatdigunakan statement break.

  • Contoh:
struktur pengulangan f or4
Struktur Pengulangan for

int x, y;

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

for (y=5; y>=1; y--)

printf(”%d %d ”,x,y);

Bahasa C

Bahasa C++

(diperbolehkan)

for (int x=1;x<=5;x++)

for (int y=5; y>=1; y--)

printf(”%d %d ”,x,y);

Output :

1 5 1 4 1 3 .. 2 5 2 4 .. 5 1

  • Nested Loop

Jikadidalamsebuahpengulanganterdapat statement pengulangan. Pengulanganakandijalankandimulaidaripengulanganterdalam.

struktur pengulangan while
Struktur Pengulangan while

statements

true

eks. boolean

false

  • Sintaks :

while (eks.boolean) statements;

atau :

while(eks.boolean){

statement1;

statement2;

…..

}

struktur pengulangan while1
Struktur Pengulangan while

product=2*product;

product <= 1000

true

false

  • Contoh :
    • while(product <= 1000) product = 2*product;
struktur pengulangan while2
Struktur Pengulangan while

exp1;while( exp2 ) { statement1;

statement2;

….

exp3}

for(exp1; exp2; exp3 ) { statement1;

statement2;

….}

setara

#include<stdio.h>

void main() {

intx = 1;

while (x<=10) {

printf( "%d\n", x );

x++;

}

}

#include<stdio.h>

void main() {

int x;

for( x = 1 ; x <= 10 ; x++ )

printf( "%d\n", x );

}

serupa dg

  • Kesetaraan for denganwhile sbb:
  • Contoh:
struktur pengulangan do while
Struktur Pengulangan do - while

statements

true

eks. boolean

false

  • Sintaks :

do statement while (eks.boolean);

atau :

do {

statement1;

statement2;

…..

} while(eks.boolean)

  • Selamaeks.booleanbernilaitrue makastatements dieksekusiberulang-ulang.
  • Pengetesaneks.booleandilakukansetelahmeng-eksekusistatements.
struktur pengulangan do while1
Struktur Pengulangan do - while

I = 0

Cetak

i

true

++i <= 10

false

  • Contoh:

inti = 0;

do {

printf(”%d\n”, i);

} while(++i<=10);

pengulangan
Pengulangan

Padapengulanganwhile, statement ataublok statement mungkintidakakanpernahdilaksanakan, bilanilaiekspresiboolenbernilaifalse, karenaoperasipengulangandiawalidenganmengeksekusiekspresibooleanterlebihdahulu.

Padapengulangando-whilestatement ataublok statement pastidikerjakan paling sedikitsatu kali, karenaekspresibooleanbarudiujipadaakhirblokpengulangan.

pengulangan1
Pengulangan
  • Beberapacarauntukmenghentikanpengulangan untuk program interaktif, di antaranya dapatdilakukandenganmenambah:
    • SentinelatauPembatasdengankodekhusus.
    • Pertanyaan, misalkan: “Apakahpengulanganakandilanjutkan?”.
pengulangan2
Pengulangan

#include <stdio.h>

int main()

{ intpanjang,lebar,luas; char ulang;

do{printf(“Panjang [0=selesai] : “);

scanf(“%d”,&panjang);

printf(“Lebar [0=selesai] : “);

scanf(“%d”,&lebar);

luas= panjang * lebar;

printf(“Luas = %d\n”,luas);

} while((panjang != 0) && (lebar != 0));

return(0);

}

  • Contoh : Cara ‘sentinel’ padakonstruksido-while dengan memakai nilai0 padavariabelpanjangdan variabellebar.
pengulangan3
Pengulangan

#include <stdio.h>

intmain()

{ intpanjang, lebar, luar; char ulang;

printf(”TeruskanPerhitungan ? (Y/T) :”);

scanf(”%c”,&ulang);

while((toupper(ulang)) == ’Y’) {

printf(”Panjang : ”); scanf(”%d”,&panjang);

printf(”Lebar : ”); scanf(”%d”,&lebar);

luas = panjang * lebar;

printf(”Luas = %d\n\n”,luas);

printf(”TeruskanPerhitungan?(Y/T):”);

scanf(”%c”,&ulang);

}

return(0);

}

Contoh : Cara ‘Pertanyaan’ padakonstruksi While

statement break dan continue
Statement break dan continue
  • break
    • Digunakanuntukkeluardari loop (for, while dan do-while)
    • Digunakanuntukkeluardari switch
  • continue
    • skip sisainstruksidalam loop, daneksekusi loop berjalanketahapselanjutnya
break
Break
  • Contoh penggunaan statement breakpadaloop yangmenyebabkan program keluardari loop tersebut

Keluardari loop

#include<stdio.h>

int main() {

int x = 1;

while (x<=10) {

printf( "%d\n", x );

x++;

if (x>5) break;

}

return 0;

}

continue
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

Contoh:

break vs continue
break vs continue

do {

scanf(“%f”, &x);

if(x<0) {

printf”\nEror. Negatif”);

continue;

}

/*Prosesnonnegatif */

} while(exp);

  • do {
  • scanf(“%f”, &x);
  • if(x<0) {
  • printf”\nEror. Negatif”);
  • break;
  • }
  • /*Prosesnonnegatif */
  • } while(exp);
latihan
Latihan

for (i=k; i < n; i++) printf(”TIF-FTUB\n”);

  • Jika k < n makaberapa kali kataTIF-FTUB dicetakdilayarmonitor?
  • Jika k=n makaberapa kali kataTIF-FTUB dicetakdilayar monitor ?
  • Jika k > n makaberapa kali kataTIF-FTUB dicetakdilayar monitor ?
latihan1
Latihan

for (i=k; i >= n; i--) printf(” TIF-FTUB \n”);

  • Jika k < n makaberapa kali kataTIF-FTUB dicetakdilayar monitor ?
  • Jika k=n makaberapa kali kataTIF-FTUB dicetakdilayar monitor ?
  • Jika k > n makaberapa kali kataTIF-FTUB dicetakdilayar monitor ?
latihan2
Latihan
  • Dapatkah infinite/forever loop ditulismenggunakan for loop, while loop dan do-while loop ?
  • Jika p = pernyataandan e = ekspresi, ubahlah loop for berikutmenjadi loop while.

a. for(; e ;) p;

b. for(; ; e) p;

latihan3
Latihan

for (i=0, j=1; i<8; i++, j++) printf("%d + %d = %d\n", i, j, i+j);

for (i=0, j=1; i<8; ++i, ++j); printf("%d + %d = %d\n", i, j, i+j);

  • Bandingkanduabuahsintaks for berikutini :

Jelaskan outputnyadanperbedaannyadari dua potongan program di atas!

slide27

Latihan

APA OUTPUT PROGRAM BERIKUT ??

awas! Adatitikkoma

#include <stdio.h>

int main()

{

intx,y;

for(x=1;x<=3;x++);

for (y=3;y>=1;y--)

printf("%d %d ",x,y);

return 0;

}

#include <stdio.h>

int main()

{

intx,y;

for(x=1;x<=3;x++)

for (y=3;y>=1;y--)

printf("%d %d ",x,y);

return 0;

}

latihan4
Latihan

APA OUTPUT PROGRAM BERIKUT ??

awas! adatitikkoma

#include <stdio.h>

int main()

{

intx,y;

for(x=1;x<=3;x++);

for (y=3;y>=1;y--);

printf("%d %d ",x,y);

return 0;

}

Awas! adatitikkoma

#include <stdio.h>

int main()

{

intx,y;

for(x=1;x<=3;x++)

for (y=3;y>=1;y--);

printf("%d %d ",x,y);

return 0;

}

latihan5
Latihan

#include<stdio.h>

int main() {

intnilai = 0, jumlah = 0;

while(nilai < 10) {

jumlah += nilai;

printf(”\nNilai =%d, Jumlah =%d”, nilai++, jumlah);

}

return 0;

}

Jelaskan output program berikutini :

latihan6
Latihan

#include<stdio.h>

int main() {

long bil, tmp, x=1;

printf(”\nInputbil:”); scanf(”%d”, &bil);

tmp=bil;

while(bil >= 1) x*=bil--;

printf(”\n%ld ! = %ld”,tmp, x);

return 0;

}

Jelaskan output program berikutini :

latihan7
Latihan
  • Buat program untukmenampilkanbilanganganjildari 11 s/d 188, denganmenggunakan :
    • for
    • while
    • do - while
latihan8
Latihan
  • Diasumsikanhari 1 menyatakansenin, 2 - selasa, 3 - rabu,…, 7 – minggu. Buatlahsebuah program untukmenampilkanangkaharisebanyak n yang diinputdari keyboard. Perhatikanpolaberikut :

n= 3

    • 2 3

n= 7

    • 2 3 4 5 6 7

n= 10

1 2 3 4 5 6 7 1 2 3

latihan9
Latihan
  • Berapa kali kata Hello dicetakdilayar monitor olehsetiap potonganprogram dibawahini?

int x=0;

for(;;){

if(x<10) printf("Hello\n");

else break;

x++;

}

int x=0;

for(;x<10;x++) printf("Hello\n");

int x=0;

for(;;x++){

if(x<10) printf("Hello\n");

else break;

}

int x ;

for(x=0; x<10; x++) printf("Hello\n");

latihan10
Latihan

n

n

  • Buatlah program untukmenampilkangambarseperticontohdibawah, dimananvariabel integer ygnilainyadi-input dari keyboard (dengan for, while atau do-while loop).

*

* *

* * *

* * * *

* * * * *

slide35

Latihan

n

n

  • Buatlah program untukmenampilkangambarseperticontohdibawah, dimananvariabel integer ygnilainyadi-input dari keyboard (dengan for, while atau do-while loop).

* * * * *

* * * *

* * *

* *

*

latihan11
Latihan

#include <stdio.h>

int main()

{ intx,y,z;

for(x=0; x<4; x++){

for(y=0; y<3; y++){

for(z=0; z<3; z++){

if(z==2) break;

}

printf("Selamat\n");

}

printf("Datang\n");

}

printf("diTIF-FTUB\n");

getch();

return(0);

}

Apa Output dari program dibawahini?

struktur pengulangan f or5
Struktur Pengulangan for

exp1

exp3

statements

true

exp2

false

Strukturlogikapengulangan for

struktur pengulangan f or6
Struktur Pengulangan for

exp1

exp3

statements

true

exp2

false

Strukturlogikapengulangan for