Penyeleksian kondisi digunakan agar program dapat menentukan tindakan apa yang harus dikerjakan.Perulangan While – Do tidak dilakukan jika kondisi tidak terpenuhi.
CONTOH PENGGUNAAN WHILE DO
Uses Crt; Var i : Integer; Begin i := 0; While < 5 do Write (i:3); Inc (i); { sama dengan i:=i+1 } End; End.
Uses Crt; Var i : Integer; Begin i := 0; While < 5 do Write (i:3); Inc (i); { sama dengan i:=i+1 } End; End.
OUTPUT DARI CONTOH PROGRAM
Hasilnya :
Hasilnya :
WHILE DO TERSARANGDefinisi : Perulangan While – Do tersarang (nested While Do) merupakan perulangan While – Do yang satu di dalam perulangan While – Do yang lainnya.
CONTOH NESTED WHILE DOUses Crt; Var a, b : Integer; Begin ClrScr; a:=1; b:=1; While a < 4 Do{ loop selama a masih lebih kecil dari 4 }Begin a := a+1; While b < 3 Do{ loop selama b masih lebih kecil dari 3 } Write (a:3,b:2); b:=b+1; End; Readln; End.
LATIHAN SOALAnalisa dan jelaskan program diatas lalu tentukan output dari program diatas jika program tersebut dijalankan
DEFINISI REPEAT UNTILRepeat – Until digunakan untuk mengulang statement-statemen atau blok statement sampai (Until) kondisi yang diseleksi di Until tidak terpenuhi.
CONTOH REPEAT UNTILVar i : Integer; Begin i:=0; Repeat i:= i+1; Writeln (i); Until i=5; End.
OUTPUT DARI PROGRAMhasil :
DEFINISI NESTED REPEAT UNTIL
Repeat – Until tersarang adalah suatu perulangan Repeat - Until yang satu berada didalam perulangan Repeat – Until yang lainnya.
Repeat – Until tersarang adalah suatu perulangan Repeat - Until yang satu berada didalam perulangan Repeat – Until yang lainnya.
CONTOH NESTED REPEAT UNTIL
Var a,b,c : Real; Begin Writeln('=============='); Writeln(' sisi A sisi B Sisi C '); Writeln (' ============='); a:= 1; Repeat { perulangan luar } b := 0; Repeat{ perulangan dalam } c:=Sqrt (a*a+b*b);Writeln (a:6:2, b:9:2, c:9:2); b:=b+5; Until b>25; { berhenti jika b lebih besar dari 5 untuk perulangan dalam } a:=a+1; Until a>3; { berhenti jika a lebih besar dari 3 untuk perulangan luar } Writeln(‘=============='); End.
Var a,b,c : Real; Begin Writeln('=============='); Writeln(' sisi A sisi B Sisi C '); Writeln (' ============='); a:= 1; Repeat { perulangan luar } b := 0; Repeat{ perulangan dalam } c:=Sqrt (a*a+b*b);Writeln (a:6:2, b:9:2, c:9:2); b:=b+5; Until b>25; { berhenti jika b lebih besar dari 5 untuk perulangan dalam } a:=a+1; Until a>3; { berhenti jika a lebih besar dari 3 untuk perulangan luar } Writeln(‘=============='); End.
Tidak ada komentar:
Posting Komentar