Komputer dan Pemrograman
Perulangan (Loopf
M. Khairul Amri Rosa Program Studi Teknik Elektro Universitas Bengkulu
Loop Merupokon pernyqtoon
Diagram alir perulangan
untuk memerintohkon kompiler meniolonkon suotu
prosedur berulong koli. Loop dilokukon terusmenerus selomo kondisi mosih terpenuhi. Loop berhenti ketiko kondisi berniloi soloh
i
f I bertrcnti J Peruhnq.n \ L
Y
Ketahui apa dan bagaimana loop akan digunakan dalam Program
t. 2. 3.
Adokoh longkoh-longkoh yong perlu soyo lokukon berulong-ulong dolom penyelesoion mosoloh? Jiko iowobon pertonyoon I odoloh Yo, tohukoh soyo beropo koli longkoh tersebut horus diulong? Jiko iowobon pertonyoon 2 odoloh Tidok, bogoimono soyo tohu seberopo lomo longkoh-longkoh tersebut terus diulong?
Jenisjenis loop .
Loop
.
.
Meniolonkon sotu blok pernyotoon secooro berulong-ulong selomo kondisi terpenuhi. Kondisi terlebih dohulu diuii sebelum bodon loop diiolonkon.
Loop for
.
r
while
Meniolonkon suotu uruton pernyotoon berulong koli don mempersingkot kode untuk mengendolikon voriobel loop.
Loop do
.
... while
Hompir somo dengon loop while, perbedoonnyo kondisi diuii di okhir bodon loop.
Pernyataan kontrol loop .
breok
.
r
Menghentikon loop don memindohkon eksekusi ke pernyotoon berikufnyo seteloh loop.
conlinue
.
Melewotkon siso pernyotoon dolom bodon loop don kemboli menguii kondisi unfuk melokukon iierosi seloniutnyo.
r golo . Memindohkon kontrol oliron ke pernyotoon dengon lobel yong diorohkqn oleh goto,
Loop for r
Sintoks:
for(ni1ai_awa1; kondisi; perubahan) { Badan Loop; 1.
It
.
niLai_awa1: niloi yong diberikon kepodo voriobel kendoli loop untuk meniolonkon bodon loop pertomo koli. Confoh: = 1, jumlah = 0, olou a = 10.
i
. kondisi, kriterio seberopo lomo loop okon diiolonkon. Contoh: i <= 1-OO, jumlah 1 2O,otou a >= 5. . perubahan: kenoikon otou penurunon niloi voriobel kendoli loop. Conloh: i += 2, jumlah++, otou a--.
Contoh #tl.oop for //
l4enjunLahkan 10 biLangon
#incfude <stdio. ma
h>
in ( )
{ int i, a, jumlah; jumlah =
O;
pnintf( "Masukkan 10 angka\n" ); on (i = 1; i <= lO; i++ pnintf("Angka #%d: scanf(
"%d
",
&a
);
jumlah = jumlah +
printf(
"
", i); // a;
//
badan Loop ==========
\nJumlah = %d",lum1ah);
prcgrum hotus dicobo sampoi berialon. Kemudian modilikdsi untuk mengelqhui efek yqng dihosilkon.
Un uk leblh menguosoi pemrcgromon, seliop contoh
Contoh for #2 //
Mencari biLongon terbesor don terkeciL
#include < stdio.
h>
main ( )
{ int i, a, max, min;
pnintf( "Masukkan 10 angka\n " ); pnintf("Angka #1: ") j
scanf("%d",&a); max = a; min = a; fon (i = 2; i <= tO; i++) { pnintf( "Angka #%d : t); ' scanf( "%d",&a);
if (a > max) max if (a < min) min
a.;
printf("\nBilangan tenbesar = %d", max); pnintf ( " \nBilangan tenkecil = %d', min); ) Unluk lebih mengvosoi pemrcgtomon, seliop contoh progrcm horus dicobo sompoi beialan. Kemudion modirikosi untuk mengetohui elek yong dihosilkdn.
Loop while .
Sinlqks:
while (kondisi) { Bodan Loop; );
. kondisi,
merupokon kriterio sompoi kopon loop okon
diiolonkon. Confoh:
. r
hari
<= 10, harga >
2OOOO
Loop okon terus diiolonkon selomo kondisi mosih terpenuhi. lni berorti horus odo pernyotoon iombohon untuk perboruon niloi
porometer berhenti, seperii: hari++, harga -= 5OO. Ketiodoon otou kesolohon kode seperti ini mengokibotkon loop terus diiolonkon tonpo henti (infinite loop).
Loop do...while r .
Perbedoon loop do...while dengon loop while odoloh kondisi diperikso podo okhir loop. Sinloks,
do{ Badan Loop;
) while (kondisi); r
Koreno pernyotoon kondisi terletok di okhir loop, bodon loop selolu okon diiolonkon sotu koli sebelum kondisi diperikso.
r
Jikq kondisi berniloi benor, oliron progrom okon kemboli ke do don bodon loop kemboli diiolonkon. Proses berulong sompoi kondisi berniloi soloh.
#t
Contoh while #include <stdio.
h>
main ( )
{ int
a = O, count = while (a < 100) { pr
intf
(
O;
"Masukkan angka:
");
scanf("%d",&a);
count=count+1; pnintf("\nAngka
printf
("
%d
\nPrognam
lebih besar dani
selesai setelah
LOO",a);
%d per
ulangan.", count);
Untuk lebih menguosoi pemrogromon, setiop corloh ptogtom horus dicobo sompoi berJolon. Kemudion modilikosi untuk mengetohui efek yong dihosikan.
Contoh while #2 //
Contoh whiLe #7 dengan do...whiLe
#include <stdio.
h>
main ( )
{ int a = 0, count = 0; do{ printf(
"Masukkan angka: scanf( "%d ", &a );
");
if (a <= 1OO) pnintf("Anda count=count+1;
memasukkan angka
%d\n", a);
) while (a <= IOA);
printf("\nAngka pnintf
%d lebih besar dari 100",a); ( " \nP nognam selesai setelah %d penulangan.
",
count);
Unluk lebih menguosoi pemrogromon, setidp contoh progrom horus dicobd sompol beiolan. Kemudldn modifikosi untuk mengetohui efek yong dihosilkon.
ingat... .
Loop horus terdiri otos:
.lnisiolisosi
. . .
Kondisi berhenti
Bodon loop Aksi berhenti
.
Untuk loop dengon iumloh perulongon tertentu gunokon seloin itu gunokon while otou do... while.
,
lnfinile loop odoloh loop yong diiolonkon tonpo henti disebobkon kesolohon dolqm merqncong kondisi berhenti.
for,
Latihan t.
Buotlqh kode progrom untuk menompilkon I 0 suku pertomo dori deret berikui:
1-2-4-8-16-...
2.
Dori lotihon nomor 1 iumlohkon tompilkon don iumlohkon
3.
kesepuluh suku tersebut, sePerti: 1 + 2 + 4 + 8 + l6 +... = (hitungon) Buofloh kode progrom untuk menompilkon don menghitung iumloh 10 suku pertomo dori deret: 1
/2 + 2/3 + 3/4 + 4/5 + ... = (hitungon)