5 perulangan
-
Upload
simon-patabang -
Category
Education
-
view
390 -
download
3
Transcript of 5 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.
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
FOR i := n1 TO n2 DO
Begin
{pernyataan}
End;
Ket : i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1<n2
Digunakan untuk melakukan peru-
langan dengan indeks dari bilangan
yg kecil ke bilangan yg lebih besar.
Bentuk Perintah :
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
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.
For- Downto - Do
Digunakan untuk melakukan perulangan
dengan indeks perulangan mulai dari bilangan
besar ke bilangan yg lebih kecil.
FOR i := n1 Downto n2 DO
Begin
{pernyataan} End;
Ket :
i = Var. kontrol, n1=Nilai awal, n2 = nilai batas, n1>n2
Bentuk Perintah :
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.
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 0<23?, 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 23<56 jika Ya, maks = data2. Jika tidak, maka tetap. Jadi Maks = 56.
3. Bandingkan maks dengan data3, apakah 56<90 jika Ya, maks = data3. Jika tidak, maka tetap. Jadi Maks = 90.
4. Bandingkan maks dengan data4, apakah 90<87 jika Ya, maks = data4. Karena tidak , maka Maks = 90.
5. Bandingkan maks dengan data5, apakah 90<32 jika Ya, maks = data5. Karena tidak , maka Maks = 90.
6. Bandingkan maks dengan data6, apakah 90<65 jika Ya, maks = data6, Karena tidak , maka Maks = 90.
7. Bandingkan maks dengan data7, apakah 90<87 jika Ya, maks = data7. Karena tidak , maka Maks = 90.
8. Bandingkan maks dengan data8, apakah 90<13 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 100>23?, jika Ya, maka simpan 23 sebagai data minimum ke dalam var min, min = data1. Jadi min = 23
2. Bandingkan data2 dengan var Min, Apakah 23>56?, jika Ya, maka min = data2. Jika tidak maka tetap min = 23
3. Bandingkan data3 dengan var Min, Apakah 23>90?, jika Ya, maka min = data3. Jika tidak maka tetap min = 23
4. Bandingkan data4 dengan var Min, Apakah 23>87?, jika Ya, maka min = data4. Jika tidak maka tetap min = 23
5. Bandingkan data5 dengan var Min, Apakah 23>32?, jika Ya, maka min = data5. Jika tidak maka tetap min = 23
6. Bandingkan data6 dengan var Min, Apakah 23>65?, jika Ya, maka min = data6. Jika tidak maka tetap min = 23
7. Bandingkan data7 dengan var Min, Apakah 23>87?, jika Ya, maka min = data7. Jika tidak maka tetap min = 23
8. Bandingkan data8 dengan var Min, Apakah 23>13?, 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 maks<data, maka maks=data
8. Jika min>data, 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 maks<data then
maks:=data;
If min>data 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.