330 likes | 545 Views
Percabangan dan Perulangan. Pemprograman Terstruktur 1. Struktur IF … THEN … Struktur CASE … OF …. Percabangan. IF akan diikuti oleh ekspresi dan selalu berpasangan dengan THEN kemudian diikuti dengan statemen .
E N D
PercabangandanPerulangan PemprogramanTerstruktur 1
Struktur IF … THEN … Struktur CASE … OF … Percabangan
IF akandiikutiolehekspresidanselaluberpasangandengan THEN kemudiandiikutidenganstatemen. • Bilastatemen yang akandilakukanhanyasatu, makakitatidakperlumenuliskanblok begin…end. • Bilastatemen yang akandilakukanlebihdarisatu, makakitaharusmenuliskanstatemenpadablok begin…end. If … then …
If (ekspresi) then statemen; If (ekspresi) then begin statemen; statemen; ……………... end. If … then …
Satukasus. • if (kondisi) then aksi; • Bilaekspresi yang diperiksabernilaibenarmaka program akanmengeksekusistatemen-statemen, jikatidakmaka program tidakakanmengeksekusinya. If … then …
Program if_satu_kasus; Var x : integer; Begin write(‘masukkanangka’); readln(x); if (x > 5) then writeln (x, ‘ lebihbesardari 5’); Readln; End; contoh
Dua Kasus • if (kondisi) then aksi1 else aksi2 ; If … then … ELSE …
Program ganjil_atau_genap; Varbilangan : integer; Begin write(‘masukkanangka’); readln(bilangan); if (bilangan mod 2 = 0) then writeln (bilangan, ‘ adalahgenap’); else writeln (bilangan, ‘ adalahganjil’); Readln; End; contoh
Tiga Kasus atau Lebih If … then … ELSE …
If (kondisi 1) then aksi1 Else If (kondisi 2) then aksi2 Else If (kondisi 3) then aksi3 Else If (kondisi 4) then aksi4 Else aksi5; Jikaandamenggunakan else, perludiingatbahwasatubaris / statemensebelum else tidakdiperkenankanmengandungtanda “ ; “
Uses Crt; varNilai : Byte; begin clrscr; write('Baca nilai :');readln(Nilai); if nilai>=80 then write('Nilai = A') else if nilai>=65 then write('Nilai = B') else if nilai>=41 then write('Nilai = C') else if nilai>=26 then write('Nilai = D') else write('Nilai = E'); readln; end. contoh
Buatlah program yang meminta input satu huruf (char), kemudian menghasilkan output yang menjelaskan input tersebut merupakan huruf vokal atau huruf konsonan. LATihan
Digunakan jika harus memilih dari banyak pilihan Case (variabel) of kondisi1 : aksi1 ; kondisi2 : aksi2 ; ……………. ; kondisi-n : aksi-n ; Case … of …
Case (variabel) of Kondisi1 : begin statemen1; statemen2; ………………. end; Kondisi2 : begin statemen1; statemen2; ………………. end; Else begin statemen1; statemen2; ………………. end; End. Case … of …
Ekspresi yang digunakan dalam statemen Case adalah yang mempunyai tipe ordinal yaitu dengan batas antara (-32768 s/d 32767). Sehingga tipe lain seperti integer yang bertipe longint, tipe string atau real tidak boleh digunakan.
Var Nilai : integer; begin write('Baca nilai ='); readln(Nilai); Case Nilai of 0..25 : writeln('Nilainya = E'); 26..39 : writeln('Nilainya = D'); 40..64 : writeln('Nilainya = C'); 65..79 : writeln('Nilainya = B'); 80..100: writeln('Nilainya = A'); else writeln('Tidak ada nilai yang dimaksud'); end; readln; end. contoh
Program contoh_case_of; Uses crt; VarnomorBulan: integer; Begin clrscr; write(‘masukkannomorbulan, antara 1-12’); readln(nomorBulan); Case (nomorBulan) of 1 : writeln (‘ bulanpertamaadalahJanuari’); 2 : writeln (‘ bulankeduaadalahFebruari’); …………………………………………………………….. 12 : writeln (‘ bulankeduabelasadalahDesember’); else writeln (‘ nomor yang andamasukkansalah’); end; Readln; End. contoh
Buatlahsebuah program yang akanmenerimanmasukanbilanganbulatdari user. Jikabilangan yang dimasukkan 0, maka program akanmenampilkan string ‘Minggu’; jika user memasukkanbilangan 1, maka program akanmenampilkan string ‘Senin’; danseterusnyasampaiSabtu; jika user memasukkanbilanganlebihdari 6, makaakankeluar • string ‘Haritidak valid’. Latihan
- Struktur FOR….DO…. - Struktur WHILE…DO…… - Struktur REPEAT…UNTIL…. perulangan
Digunakan untuk melakukan perulangan yang banyaknya sudah diketahui secara pasti. • Format : • For count := awal to akhir do aksi/ blok aksi ; • Contoh : • For i:=1 to 5 do write(‘saya’); • Variabel i, dideklarasikan di var. For … do …
Program Latihan_perulangan: • uses Crt; • varN,i :integer; • begin • clrscr; • write('Baca nilai : ');readln(N); • for i:= 1 to N do • write(i:3); • readln; • end. contoh
Program latihan2; • Vari, nilai, jumlah :integer; • Begin write (‘masukkannilai’); readln(nilai); jumlah := 0; for i:= 1 to nilai do begin jumlah := jumlah + i; end; writeln (‘jumlahdari ‘,nilai,’ bilanganpositifpertamaadalah’, jumlah); • Readln; • End. contoh
Buat program untuk menghitung nilai dari faktorial. 5 ! = 1 x 2 x 3 x 4 x 5. latihan
Terdapatsuatukondisi yang harusdilakukanterlebihdahulusebelummelakukanperulangan. • Format • While ( kondisi ) do • Begin • Statemen1; • Statemen2; • ………………. • End; While … do …
Program Latihan_while; uses crt; var i:integer; begin clrscr; write('Masukkanangka :');readln(i); while i<5 do begin writeln(‘D3 Komsi UGM'); i:=i+2; end; Readln; End. contoh
Buat program yang menghasilkan satu nilai x yang memenuhi persamaan x2 + 2x – 30 = 0. latihan
Hampir sama dengan while..do.. Perbedaannya adalah, struktur ini akan terus melakukan perulangan apabila kondisi masih bernilai false dan berhenti ketika kondisi sudah bernilai true. Pengecekan kondisi dilakukan setelah mengeksekusi statemen. REPEAT ... UNTIL ...
Format repeat statement1; statement2; …………………. until ( kondisi ); REPEAT ... UNTIL ...
Program latihan_repeat_until; Varmasukan : integer; Begin repeat write(‘pencetnomorsatu’); readln(masukan); if (masukan<>1) then writeln (‘wee ngeyel…’); until (masukan = 1); writeln (‘Pinteeerrr’); Readln; End. contoh
Buatlah program penjumlahan. Akan tetapi pengguna dapat menggunakannya terus menerus tanpa harus memberhentikan program. latihan
Buat program yang menampilkan tulisan JUM’AT Silahkandicoba