LOOP (Perulangan)
Definisi 
• Adalah proses yang mengerjakan 
pernyataan yang sama secara 
berulang kali hingga memenuhi 
syarat batas yang ditentukan. 
• Digunakan untuk mengerjakan suatu 
pernyataan yg sama dengan data yg 
berbeda-beda. 
• Bertujuan untuk meng-efisien-kan 
pembuatan program, sehingga 
penulisan program menjadi 
sederhana.
Perintah Perulangan 
1. For 
2. While – do 
3. Repeat - Until
FOR 
Adalah perintah perulangan yang 
digunakan apabila jumlah atau 
banyaknya perulangan yang akan 
dilakukan sudah diketahui. 
Ada 2 macam : 
1. For – to – do 
2. For – down - to
1. For – To - Do 
Digunakan untuk melakukan peru-langan 
dengan indeks dari bilangan 
yg kecil ke bilangan yg lebih besar. 
Bentuk Perintah : 
FOR i := n1 TO n2 DO 
Begin 
{pernyataan} 
End; 
Ket : i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1<n2
Flowchart
Contoh 1 
Buatlah program untuk mencetak 
angka 1 hingga n. 
Algoritma : 
1. Mulai 
2. Definisikan variabel n, i 
3. Input nilai n 
4. Cetak nilai i secara berulang 
hingga i=n. 
5. Selesai
Program Angka; 
Uses crt; 
Var i,n : integer; 
Begin 
clrscr; 
Write(‘Input jumlah 
data = ‘); 
Readln(n); 
For i:=1 to n do 
Write(n,’ ‘); 
Readln; 
End.
Contoh-2 
Buatlah program untuk mencetak bilangan 
Ganjil antara 1 hingga 50. 
Jawab : 
Algoritma 
1. Mulai 
2. Def var I,n 
3. Cari bil ganjil antara 1 hingga 50 
4. Jika ditemukan, cetak bil ganjil dan 
ulangi pencarian 
5. Jika tidak ditemukan, ulangi pencarian 
6. Selesai
Flowchart
Program Bil_Ganjil; 
Uses crt; 
Var I,n : integer; 
Begin 
clrscr; 
for i:=1 to 50 do 
Begin 
n:= I mod 2; 
if n=1 then write(I, ‘ ‘); 
End; 
readln; 
End.
Contoh-3 
Buatlah program untuk mencetak kata 
“Unika Atmajaya” sebanyak 5 kali.
Contoh 4 
Buatlah program untuk mencetak 
angka 1 hingga 8 secara ascending.
For- Downto - Do 
Digunakan untuk melakukan perulangan 
dengan indeks perulangan mulai dari bilangan 
besar ke bilangan yg lebih kecil. 
Bentuk Perintah : 
FOR i := n1 Downto n2 DO 
Begin 
{pernyataan} 
End; 
Ket : 
i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1>n2
Flowchart
Contoh 5 
Buatlah program untuk mencetak 
bilangan n hingga 1. 
Algoritma : 
1. Mulai 
2. Definisikan variabel n, i 
3. Input nila n 
4. Cetak nilai i mulai dari i=n secara 
berulang selama i>=1. 
5. Selesai
Program Contoh5; 
Uses crt; 
Var I,n : integer; 
Begin 
clrscr; 
write(‘Input n = ‘); 
readln(n); 
for i:=n downto 1 do 
Begin 
write(I,‘ ‘); 
End; 
Readln; 
End.
Contoh 6 
Buatlah program untuk mencetak 
bilangan mulai 40 hingga 30.
Latihan 
1. Jumlahkan data sebanyak n dan 
hitung nilai rata2-nya. 
2. Cari nilai maksimum dan minimum 
dari data sebanyak n. 
3. Hitung y = 
 
 
+ 
 
 
+ 
 
 
+ 
 
 
+ ………
Menjumlahkan Data 
Jika ada sebanyak N data yg terdiri dari n1, n2, 
n3, ….ni, maka jumlah datanya adalah : 
Jumlah = n1 + n2 + n3 + .. + .. + ni 
Dimana n1 s/d ni harus diinput. 
Proses penjumlahan data dalam loop 
dinyatakan dengan pernyataan : 
Jumlah := Jumlah + ni;
Algoritma Penjumlahan Data 
1. Mulai 
2. Definisikan Variabel Jumlah,I,n 
3. Tentukan nilai awal Jumlah = 0 
4. Tentukan banyaknya data (n) 
5. Input data sebanyak n dan Jumlahkan 
selama i=n. 
6. Cetak hasil penjumlahan data 
7. Selesai
Flowchart Penjumlahan Data 
Program Jumlah; 
Uses crt; 
Var j,i,n : integer; 
Begin 
J := 0; 
clrscr; 
write(‘Input banyaknya data =‘); 
readln(n); 
For i:= 1 to n do 
Begin 
write(‘Input data ke- ‘,I,’ = ‘); 
Readln(data); 
J:=J + data; 
End; 
Write(Jumlah Data = ‘,j); 
Readln; 
End.
Menghitung Nilai Rata-Rata 
Secara Matematik, Rumus untuk menghitung nilaia rata-rata 
adalah : 
Nilai rata-rata = Jumlah Data / Banyaknya Data 
Algoritma : 
1. Mulai 
2. Definisikan Variabel Jumlah,I,n 
3. Tentukan nilai awal Jumlah = 0 
4. Tentukan banyaknya data (n) 
5. Input data dan Jumlahkan data sebanyak n hingga 
i=n. 
6. Hitung nilai rata-rata 
7. Cetak jumlah data dan Nilai rata-rata 
8. Selesai
Program JumlahdanRata2; 
Uses crt; 
Var j,i,n : integer; 
r : real; 
Begin 
J := 0; 
clrscr; 
write(‘Input banyaknya data =‘); 
readln(n); 
For i:= 1 to n do 
Begin 
write(‘Input data ke- ‘,I,’ = ‘); 
Readln(data); 
J:=J + data; 
End; 
R := j / n; 
Write(Jumlah Data = ‘,j); 
write(Nilai Rata-rata = ‘,r:6:2); 
Readln; 
End.
Mencari Data Maksimum dan 
Minumum 
• Data maksimum adalah data yg paling besar dari 
sekelompok data sedangkan Data minimum adalah 
data yg paling kecil dari sekelompok data. 
• Misalnya ada sekelompok data yg terdiri dari 8 buah 
data sbb : 
23 56 90 87 32 65 87 13 
• Untuk mendapatkan data maks dan min, maka 
definisikan var maks =0 (terkecil), dan min = 100 
(terbesar). 
• Bandingkan data pertama dengan data ke-2, ke-3, 
hingga ke-8. 
• Jika nilai Maks lebih kecil, maka ganti nilai Maks = 
data ke-i 
• Jika nilai Min lebih besar, maka ganti niilai Min= data 
ke-i
Cara mencari Nilai Maksimum 
Data: 23 56 90 87 32 65 87 13 
1. Bandingkan data1 dengan Maks, Apakah 023?, jika Ya, maka 
simpan 23 sebagai data maksimum ke dalam var maks, maks = 
data1. Jika tidak, maka tetap. Jadi maks = 23 
2. Bandingkan maks dengan data2, apakah 2356 jika Ya, maks = 
data2. Jika tidak, maka tetap. Jadi Maks = 56. 
3. Bandingkan maks dengan data3, apakah 5690 jika Ya, maks = 
data3. Jika tidak, maka tetap. Jadi Maks = 90. 
4. Bandingkan maks dengan data4, apakah 9087 jika Ya, maks = 
data4. Karena tidak , maka Maks = 90. 
5. Bandingkan maks dengan data5, apakah 9032 jika Ya, maks = 
data5. Karena tidak , maka Maks = 90. 
6. Bandingkan maks dengan data6, apakah 9065 jika Ya, maks = 
data6, Karena tidak , maka Maks = 90. 
7. Bandingkan maks dengan data7, apakah 9087 jika Ya, maks = 
data7. Karena tidak , maka Maks = 90. 
8. Bandingkan maks dengan data8, apakah 9013 jika Ya, maks = 
data2. Karena tidak , maka Maks = 90. 
Hasilnya nilai maksmum adalah 90.
Cara mencari Nilai Minimum 
Data: 23 56 90 87 32 65 87 13 
1. Bandingkan data1 dengan var Min, Apakah 10023?, jika Ya, 
maka simpan 23 sebagai data minimum ke dalam var min, min 
= data1. Jadi min = 23 
2. Bandingkan data2 dengan var Min, Apakah 2356?, jika Ya, 
maka min = data2. Jika tidak maka tetap min = 23 
3. Bandingkan data3 dengan var Min, Apakah 2390?, jika Ya, 
maka min = data3. Jika tidak maka tetap min = 23 
4. Bandingkan data4 dengan var Min, Apakah 2387?, jika Ya, 
maka min = data4. Jika tidak maka tetap min = 23 
5. Bandingkan data5 dengan var Min, Apakah 2332?, jika Ya, 
maka min = data5. Jika tidak maka tetap min = 23 
6. Bandingkan data6 dengan var Min, Apakah 2365?, jika Ya, 
maka min = data6. Jika tidak maka tetap min = 23 
7. Bandingkan data7 dengan var Min, Apakah 2387?, jika Ya, 
maka min = data7. Jika tidak maka tetap min = 23 
8. Bandingkan data8 dengan var Min, Apakah 2313?, jika Ya, 
maka min = data8. Jika tidak maka tetap min = 13 
Hasilnya nilai minimum adalah 13
Algoritma 
1. Mulai 
2. Definisikan var I, n, maks, min, data 
3. Definisikan maks=0, dan min=100 
4. Input n, banyaknya data 
5. Input data sebanyak n selama i=n 
6. Bandingkan setiap data input dengan var 
maks dan min selama i=n 
7. Jika maksdata, maka maks=data 
8. Jika mindata, maka min=data 
9. Cetak maks dan min 
10.Selesai
Flowchart 
Program JumlahdanRata2; 
Uses crt; 
Var i,n, maks, min, data: integer; 
Maks := 0; Min:=100; 
Begin 
clrscr; 
write(‘Input banyaknya data =‘); 
readln(n); 
For i:= 1 to n do 
Begin 
write(‘Input data ke- ‘,I,’ = ‘); 
Readln(data); 
if maksdata then 
maks:=data; 
If mindata then 
min := data 
End; 
Write(‘Data Maksimum = ‘,maks); 
write(‘Data Minimum = ‘,min); 
Readln; 
End.
Penjumlahan Bil Pecahan 
Hitunglah y = 
 
 
+ 
 
 
+ 
 
 
+ 
 
 
+ ……… 
 
	 
Algoritma : 
1. Mulai 
2. Defin var j, y, n 
3. Defin nilai awal y=0 
4. Input n, jumlah suku 
5. Jumlahkan setiap suku dan simpan 
dalam var y 
6. Cetak y 
7. Selesai
Flowchart dan Program 
Program Jumlah_Pecahan; 
Uses crt; 
Var j,n : integer; 
y : real; 
y := 0; 
Begin 
clrscr; 
write(‘Input banyaknya data =‘); 
readln(n); 
For j:= 1 to n do 
Begin 
y:=y + 1/n; 
End; 
Write(Jumlah Data = ‘,j); 
Readln; 
End.
TUGAS 
Kumpulkan Tgl 25 Nov ‘14 
1. Buatlah Algoritma, flowchart, dan program 
untuk menjumlahkan bilangan genap antara 50 
s.d 100 dan hitung nilai rata-ratanya. 
2. Diketahui ada data sebanyak 10. Buatlah 
Algoritma, flowchart, dan program untuk 
menginput data dan hitunglah : 
a. Nilai rata-ratanya 
b. Carilah nilai maksimum dan minimumnya.

5 perulangan

  • 1.
  • 2.
    Definisi • Adalahproses yang mengerjakan pernyataan yang sama secara berulang kali hingga memenuhi syarat batas yang ditentukan. • Digunakan untuk mengerjakan suatu pernyataan yg sama dengan data yg berbeda-beda. • Bertujuan untuk meng-efisien-kan pembuatan program, sehingga penulisan program menjadi sederhana.
  • 3.
    Perintah Perulangan 1.For 2. While – do 3. Repeat - Until
  • 4.
    FOR Adalah perintahperulangan yang digunakan apabila jumlah atau banyaknya perulangan yang akan dilakukan sudah diketahui. Ada 2 macam : 1. For – to – do 2. For – down - to
  • 5.
    1. For –To - Do Digunakan untuk melakukan peru-langan dengan indeks dari bilangan yg kecil ke bilangan yg lebih besar. Bentuk Perintah : FOR i := n1 TO n2 DO Begin {pernyataan} End; Ket : i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1<n2
  • 6.
  • 7.
    Contoh 1 Buatlahprogram untuk mencetak angka 1 hingga n. Algoritma : 1. Mulai 2. Definisikan variabel n, i 3. Input nilai n 4. Cetak nilai i secara berulang hingga i=n. 5. Selesai
  • 8.
    Program Angka; Usescrt; Var i,n : integer; Begin clrscr; Write(‘Input jumlah data = ‘); Readln(n); For i:=1 to n do Write(n,’ ‘); Readln; End.
  • 9.
    Contoh-2 Buatlah programuntuk mencetak bilangan Ganjil antara 1 hingga 50. Jawab : Algoritma 1. Mulai 2. Def var I,n 3. Cari bil ganjil antara 1 hingga 50 4. Jika ditemukan, cetak bil ganjil dan ulangi pencarian 5. Jika tidak ditemukan, ulangi pencarian 6. Selesai
  • 10.
  • 11.
    Program Bil_Ganjil; Usescrt; Var I,n : integer; Begin clrscr; for i:=1 to 50 do Begin n:= I mod 2; if n=1 then write(I, ‘ ‘); End; readln; End.
  • 12.
    Contoh-3 Buatlah programuntuk mencetak kata “Unika Atmajaya” sebanyak 5 kali.
  • 13.
    Contoh 4 Buatlahprogram untuk mencetak angka 1 hingga 8 secara ascending.
  • 14.
    For- Downto -Do Digunakan untuk melakukan perulangan dengan indeks perulangan mulai dari bilangan besar ke bilangan yg lebih kecil. Bentuk Perintah : FOR i := n1 Downto n2 DO Begin {pernyataan} End; Ket : i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1>n2
  • 15.
  • 16.
    Contoh 5 Buatlahprogram untuk mencetak bilangan n hingga 1. Algoritma : 1. Mulai 2. Definisikan variabel n, i 3. Input nila n 4. Cetak nilai i mulai dari i=n secara berulang selama i>=1. 5. Selesai
  • 17.
    Program Contoh5; Usescrt; Var I,n : integer; Begin clrscr; write(‘Input n = ‘); readln(n); for i:=n downto 1 do Begin write(I,‘ ‘); End; Readln; End.
  • 18.
    Contoh 6 Buatlahprogram untuk mencetak bilangan mulai 40 hingga 30.
  • 19.
    Latihan 1. Jumlahkandata sebanyak n dan hitung nilai rata2-nya. 2. Cari nilai maksimum dan minimum dari data sebanyak n. 3. Hitung y = + + + + ………
  • 20.
    Menjumlahkan Data Jikaada sebanyak N data yg terdiri dari n1, n2, n3, ….ni, maka jumlah datanya adalah : Jumlah = n1 + n2 + n3 + .. + .. + ni Dimana n1 s/d ni harus diinput. Proses penjumlahan data dalam loop dinyatakan dengan pernyataan : Jumlah := Jumlah + ni;
  • 21.
    Algoritma Penjumlahan Data 1. Mulai 2. Definisikan Variabel Jumlah,I,n 3. Tentukan nilai awal Jumlah = 0 4. Tentukan banyaknya data (n) 5. Input data sebanyak n dan Jumlahkan selama i=n. 6. Cetak hasil penjumlahan data 7. Selesai
  • 22.
    Flowchart Penjumlahan Data Program Jumlah; Uses crt; Var j,i,n : integer; Begin J := 0; clrscr; write(‘Input banyaknya data =‘); readln(n); For i:= 1 to n do Begin write(‘Input data ke- ‘,I,’ = ‘); Readln(data); J:=J + data; End; Write(Jumlah Data = ‘,j); Readln; End.
  • 23.
    Menghitung Nilai Rata-Rata Secara Matematik, Rumus untuk menghitung nilaia rata-rata adalah : Nilai rata-rata = Jumlah Data / Banyaknya Data Algoritma : 1. Mulai 2. Definisikan Variabel Jumlah,I,n 3. Tentukan nilai awal Jumlah = 0 4. Tentukan banyaknya data (n) 5. Input data dan Jumlahkan data sebanyak n hingga i=n. 6. Hitung nilai rata-rata 7. Cetak jumlah data dan Nilai rata-rata 8. Selesai
  • 24.
    Program JumlahdanRata2; Usescrt; Var j,i,n : integer; r : real; Begin J := 0; clrscr; write(‘Input banyaknya data =‘); readln(n); For i:= 1 to n do Begin write(‘Input data ke- ‘,I,’ = ‘); Readln(data); J:=J + data; End; R := j / n; Write(Jumlah Data = ‘,j); write(Nilai Rata-rata = ‘,r:6:2); Readln; End.
  • 25.
    Mencari Data Maksimumdan Minumum • Data maksimum adalah data yg paling besar dari sekelompok data sedangkan Data minimum adalah data yg paling kecil dari sekelompok data. • Misalnya ada sekelompok data yg terdiri dari 8 buah data sbb : 23 56 90 87 32 65 87 13 • Untuk mendapatkan data maks dan min, maka definisikan var maks =0 (terkecil), dan min = 100 (terbesar). • Bandingkan data pertama dengan data ke-2, ke-3, hingga ke-8. • Jika nilai Maks lebih kecil, maka ganti nilai Maks = data ke-i • Jika nilai Min lebih besar, maka ganti niilai Min= data ke-i
  • 26.
    Cara mencari NilaiMaksimum Data: 23 56 90 87 32 65 87 13 1. Bandingkan data1 dengan Maks, Apakah 023?, jika Ya, maka simpan 23 sebagai data maksimum ke dalam var maks, maks = data1. Jika tidak, maka tetap. Jadi maks = 23 2. Bandingkan maks dengan data2, apakah 2356 jika Ya, maks = data2. Jika tidak, maka tetap. Jadi Maks = 56. 3. Bandingkan maks dengan data3, apakah 5690 jika Ya, maks = data3. Jika tidak, maka tetap. Jadi Maks = 90. 4. Bandingkan maks dengan data4, apakah 9087 jika Ya, maks = data4. Karena tidak , maka Maks = 90. 5. Bandingkan maks dengan data5, apakah 9032 jika Ya, maks = data5. Karena tidak , maka Maks = 90. 6. Bandingkan maks dengan data6, apakah 9065 jika Ya, maks = data6, Karena tidak , maka Maks = 90. 7. Bandingkan maks dengan data7, apakah 9087 jika Ya, maks = data7. Karena tidak , maka Maks = 90. 8. Bandingkan maks dengan data8, apakah 9013 jika Ya, maks = data2. Karena tidak , maka Maks = 90. Hasilnya nilai maksmum adalah 90.
  • 27.
    Cara mencari NilaiMinimum Data: 23 56 90 87 32 65 87 13 1. Bandingkan data1 dengan var Min, Apakah 10023?, jika Ya, maka simpan 23 sebagai data minimum ke dalam var min, min = data1. Jadi min = 23 2. Bandingkan data2 dengan var Min, Apakah 2356?, jika Ya, maka min = data2. Jika tidak maka tetap min = 23 3. Bandingkan data3 dengan var Min, Apakah 2390?, jika Ya, maka min = data3. Jika tidak maka tetap min = 23 4. Bandingkan data4 dengan var Min, Apakah 2387?, jika Ya, maka min = data4. Jika tidak maka tetap min = 23 5. Bandingkan data5 dengan var Min, Apakah 2332?, jika Ya, maka min = data5. Jika tidak maka tetap min = 23 6. Bandingkan data6 dengan var Min, Apakah 2365?, jika Ya, maka min = data6. Jika tidak maka tetap min = 23 7. Bandingkan data7 dengan var Min, Apakah 2387?, jika Ya, maka min = data7. Jika tidak maka tetap min = 23 8. Bandingkan data8 dengan var Min, Apakah 2313?, jika Ya, maka min = data8. Jika tidak maka tetap min = 13 Hasilnya nilai minimum adalah 13
  • 28.
    Algoritma 1. Mulai 2. Definisikan var I, n, maks, min, data 3. Definisikan maks=0, dan min=100 4. Input n, banyaknya data 5. Input data sebanyak n selama i=n 6. Bandingkan setiap data input dengan var maks dan min selama i=n 7. Jika maksdata, maka maks=data 8. Jika mindata, maka min=data 9. Cetak maks dan min 10.Selesai
  • 29.
    Flowchart Program JumlahdanRata2; Uses crt; Var i,n, maks, min, data: integer; Maks := 0; Min:=100; Begin clrscr; write(‘Input banyaknya data =‘); readln(n); For i:= 1 to n do Begin write(‘Input data ke- ‘,I,’ = ‘); Readln(data); if maksdata then maks:=data; If mindata then min := data End; Write(‘Data Maksimum = ‘,maks); write(‘Data Minimum = ‘,min); Readln; End.
  • 30.
    Penjumlahan Bil Pecahan Hitunglah y = + + + + ……… Algoritma : 1. Mulai 2. Defin var j, y, n 3. Defin nilai awal y=0 4. Input n, jumlah suku 5. Jumlahkan setiap suku dan simpan dalam var y 6. Cetak y 7. Selesai
  • 31.
    Flowchart dan Program Program Jumlah_Pecahan; Uses crt; Var j,n : integer; y : real; y := 0; Begin clrscr; write(‘Input banyaknya data =‘); readln(n); For j:= 1 to n do Begin y:=y + 1/n; End; Write(Jumlah Data = ‘,j); Readln; End.
  • 32.
    TUGAS Kumpulkan Tgl25 Nov ‘14 1. Buatlah Algoritma, flowchart, dan program untuk menjumlahkan bilangan genap antara 50 s.d 100 dan hitung nilai rata-ratanya. 2. Diketahui ada data sebanyak 10. Buatlah Algoritma, flowchart, dan program untuk menginput data dan hitunglah : a. Nilai rata-ratanya b. Carilah nilai maksimum dan minimumnya.