algo temu 6 & 7 - pengulangan
TRANSCRIPT
PENGULANGAN FOR Digunakan untuk mengulang statement
atau satu blok statement berulang kali sejumlah yang ditentukan.
Pengulangan ini digunakan jika sudah diketahui dengan pasti akan diulang berapa kali suatu pernyataan atau blok pernyataan.
Bentuk Umum :
Nama_var, nilai_awal, nilai_akhir harus mempunyai tipe yang sama yaitu : integer
FOR nama_var = nilai_awal TO / DOWNTO nilai akhir DO statement
PERULANGAN POSITIF Perulangan positif adalah perulangan
dengan penghitung dari kecil ke besar atau pertambahan positif.
Perulangan positif dapat dibentuk dengan menggunakan pernyataan For-To-Do
Bentuk umum:
FOR variabel-kontrol = nilai awal TO nilai akhir DO pernyataan
CONTOH1Program MencetakUrutanBilangan
Deklarasii, n : integer
AlgoritmaRead(n)For i = 1 to n do
write(i)Endfor
CONTOH 2Program MencetakSepuluhKaliDeklarasi
i : integerAlgoritma
For i = 1 to 10 doWriteln(‘Saya Mahasiswa Unindra’);
Readln;End.
PENJELASANPernyataan Writeln(‘Saya Mahasiswa Unindra’) akan diulang sebanyak 10 kali, yaitu dengan penghitung dari nilai awal 1 sampai dengan nilai akhir 10Apabila pernyataan diulang lebih dari satu pernyataan maka seteleh DO harus memakai Begin kemudian beberapa pernyataan yang akan diulang dan diakhiri dengan End;.
PERULANGAN NEGATIF Perulangan negatif adalah perulangan
dengan penghitung dari besar ke kecil atau pertambahan negatif.
Perulangan negatif dapat dibentuk dengan menggunakan pernyataan For-DownTo-Do
Bentuk umum:
FOR variabel-kontrol = nilai awal DOWNTO nilai akhir DO pernyataan
PERULANGAN BERSARANG Perulangan tersarang adalah
perulangan yang berbeda di dalam perulangan yang lainnya.
Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah
Mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.
CONTOH PROGRAM FOR BERSARANG
Program ForBersarang;
DeklarasiI,J : integer
AlgoritmaFor I = 1 to 5 Do
For J = 1 to 3 DoWrite(I,J)
EndforEndfor
LATIHAN1. Buatlah Program dengan output sebagai berikut:
1223334444
2. Buatlah Program dengan output sebagai berikut:4321321211
3. Buatlah program menghitung jumlah urutan bilangan dan rata-rata pada sejumlah n bilangan
4. Buatlah Program dengan Pascal yang digunakan untuk menghitung rata-rata dari barisan:2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
5. Buatlah algoritma dan program untuk menentukan nilai terkecil dari N buah data integer yang dibaca dari papan ketik. Nilai N dibaca terlebih dahulu (N>0)
6. Buatlah algoritma program yang membaca nilai n dan menghitung faktorial n
WHILE - DO Pernyataan while adalah pernyataan yang
berguna untuk memproses suatu pernyataan atau pernyataan beberapa kali.
Jenis perulangan ini digunakan untuk mengulang statement atau satu blok statemen berulang kali yang jumlahnya belum bisa ditentukan, tergantung nilai kondisi yang terletak antar a While - Do
Pernyataan atau aksi akan di ulang jika kondisi bernilai True dan jika False maka keluar dari blok perulangan (loop) atau pengulangan selesai.
WHILE - DOBentuk Penulisan
While <kondisi> Do <pernyataan-1> ;Atau
While <kondisi> DoBegin<pernyataan-1>;---------------- ;<pernyataan-n>;End;
Prosedur alur pengulangan sebelumnya adalah sbb:1. Program akan menguji nilai <kondisi>2. Jika <kondisi> bernilai false, <maka
pernyataan> tidak terlaksanakan dan program menghentikan pengulangan3. Jika <kondisi> bernilai true, maka
<pernyataan> akan dilaksanakan satu kali4. Kembali ke prosedur 15. Program menghentikan pengulangan dan
menjalankan baris berikutnya
CONTOH 1# Algoritma Cetak_Angka {mencetak 1, 2, 3,
…, 10 ke piranti keluaran}
Deklarasi:i, n : integerDeskripsi:1. Read(n)2 i 1 {inisialisasi}2. while (i < 10) do
i i + 1 3. write (i)4. endwhile
CONTOH 2#Program MencetakSepuluhKali
Deklarasii : integer
Algoritmai 1While i <= 10 do
Write(‘Saya Senang Belajar Pascal’)i i + 1
Endwhile{ i > 10 }
CONTOH 3#Program PenjumlahanDeret{Menjumlahkan deret 1+2+3+4+5+6 …. +n}Deklarasi
n : integer {banyaknya suku deret, > 0}i : integer { suku deret}jumlah : integer { jumlah deret}
AlgoritmaRead(n)Jumlah 0i 1While I <= n do {ulangi sebanyak n kali}
Jumlah jumlah + ii i + 1
Endwhile{ i > n }Write(jumlah)
CONTOH 4#Program HitungRataRata{Menghitung rata-rata N buah bilangan bulat yang dibaca dari papan ketik}Deklarasi
n : integer {banyaknya data, >0}x : integer {data yang dibaca dari papan ketik}i : integer {pencacah banyak data}jumlah : integer {pencatat jumlah data}rerata : integer {nilai rata-rata seluruh data}
AlgoritmaRead(n)jumlah 0i 1While i <= n doRead(x)jumlah jumlah + xi i + 1Endwhile{ i>n }rerata jumlah/nwrite(‘Rata-rata = ‘,rerata)
CONTOH 5#Program PeluncuranRoket{Hitung mundur peluncuran roket}Deklarasi
i : integerAlgoritma
i 10While i >= 0 do
Write(i)i i – 1
Endwhile{ i < 0 }write(‘Go’)