Diapositiva 1 - WordPress.com

advertisement
WEEK 6
Teknik Elektro – UIN SGD Bandung
PERULANGAN - LOOPING
Tugas
1. Buatlah program untuk mengecek apakah suatu segitiga sama sisi
atau bukan, dengan input sisi dari user!
2. Buatlah program untuk mengetahui kuadran dari inputan koordinat
x dan y!
3. Buatlah sebuah program untuk menentukan kondisi pintu air. User
akan memasukkan sebuah nilai pecahan yaitu tinggi air (dalam
meter). Apabila tinggi air <= 500.0 m, status AMAN, tinggi air
antara 500.1-600.0 m status WASPADA, tinggi air antara 600.1650.0 m status SIAGA 2, tinggi air >650m status SIAGA 1.
4. Buatlah algoritma dan flowchart untuk 3 soal di atas. (Ditulis
tangan)
Tujuan Instruksional
• Mahasiswa memahami mekanisme
perulangan dengan benar.
• Mahasiswa memahami penggunaan
perintah perulangan : while, do-while, for
• Mahasiswa dapat membuat program
sederhana dengan perintah perulangan
Topik
•
•
•
•
While
Do-while
For
Nested-Loop (Perulangan bersarang)
(next week)
PERULANGAN - LOOPING
• Salah satu kelebihan komputer dibandingkan dengan
manusia adalah kemampuannya untuk melaksanakan
suatu perintah berulangkali tanpa lelah dan bosan
• Perulangan adalah instruksi yang dapat mengulang
sederetan Instruksi secara berulang-ulang sesuai
persyaratan yang ditetapkan.
• Dalam algoritma, pengulangan/loop/repetition dapat
dilakukan sejumlah kali atau sampai kondisi berhenti
Latar Belakang
• Misalkan ada kasus yang mengharuskan program untuk
melakukan sebuah proses berulang-ulang, sejumlah
tertentu atau sampai dengan kondisi tertentu, seperti :
– Menuliskan kalimat “saya tidak akan mencontek lagi”
sebanyak 100 kali
– Menuliskan pertanyaan “Apakah anda cakep?” secara
terus menerus sampai ditekan karakter N atau n
– Dll.
7
Penyelesaian
•
•
1.
2.
3.
Menggunakan perintah perulangan(looping)
Terdapat 3 perintah perulangan dalam C, yaitu :
while
do-while
for
8
while
• Pola :
while (kondisi){
statement
}
• Proses : kondisi akan selalu dievaluasi, selama
nilainya :
– Satu : statement dieksekusi terus
– Nol : perulangan berhenti (statement tidak dieksekusi)
9
Flowchart while
while : Contoh 1
Program untuk menulis kalimat “Saya tidak
akan mencontek” sebanyak 100 kali
Apa yang terjadi jika
dihilangkan?
11
while : Contoh 2
Program untuk menulis kalimat “Saya tidak akan
mencontek” sebanyak n kali
12
while : Contoh 3
• Menjumlahkan angka-angka yang dimasukkan
user sampai user memasukkan angka 0
13
do-while
• Pola :
do {
statement
} while (kondisi);
• Proses : program menjalankan statement, baru
mengecek kondisi.
• Jika kondisi nilainya :
1  maka statement dieksekusi lagi
0  maka perulangan berhenti
14
Flowchart do-while
15
do while : contoh 1
Program untuk menulis kalimat “Saya tidak akan
mencontek” sebanyak 10 kali
16
do while : contoh 2
Program untuk menulis kalimat “Saya tidak akan
mencontek” sebanyak 10 kali
17
do while : contoh 3
• Program yang hanya sekali dieksekusi
18
for
19
Flowchart for
initialization value
N
Conditio
n
Y
Statements
Increment
20
Contoh for 1
• Apa output program berikut:
for : contoh 2
22
for : contoh 3
• Menampilkan angka kelipatan 5 diantara
angka 5 sampai 100
23
for : contoh 4
• Menampilkan angka 10 sampai 1
24
for : contoh 4
• Program menuliskan angka 10 sampai 1
25
Latihan
1. Tuliskan “Teknik Elektro YES” sebanyak
100 kali.
2. Buat flowchart dan program untuk
menampilkan deret dengan while
1 4 7
10 13
16
26
Perulangan Bersarang
• Mekanisme perulangan di dalam
perulangan
27
Next week
Perulangan Bersarang
i = initialization value
• flowchart
Condition
i
Y
J = initialization value
N
Condition
j
Y
N
Statements
j++/j-i++/i-…
29
Perulangan Bersarang
• Perulangan bersarang (nested loop)
adalah perulangan di dalam perulangan.
• Dapat berupa perulangan yang sejenis,
atau kombinasi dari beberapa jenis yang
berbeda.
• Misal : for didalam for (sejenis), for
didalam while (kombinasi), dll.
30
Nested Loop : contoh 1
31
Nested Loop : contoh 2
• Program mencetak bintang.
32
Statement Break dan
Continue
• Statement break digunakan untuk
menghentikan perulangan
• Statement continue menyebabkan proses
mengabaikan seluruh instruksi setelah
continue, dan melanjutkan perulangan.
33
break : contoh 1
• Menuliskan angka sebanyak n/2 kali. (n
input dari user)
34
continue : contoh 1
• Menuliskan angka ganjil
35
Latihan
• Buat flowchart dan program untuk
menampilkan bintang menggunakan
nested loop :
*
*
*
*
*
*
*
*
*
*
36
Latihan
1. Buatlah flowchart dan program yang akan
membaca angka dari user secara terusmenerus. Program akan berhenti jika
angka yang dimasukkan oleh user adalah
nol. Hitunglah jumlah seluruh angka
masukan user.
37
Contoh-contoh
38
• Program mencetak bintang.
39
break
• Instruksi break digunakan untuk
menghentikan perulangan.
• Jika ada nested loop, maka break hanya
akan menghentikan perulangan yang
mengandung perintah break tsb.
40
Contoh-contoh
• Menuliskan angka sebanyak n/2 kali. (n
inputan user)
41
continue
• Perintah continue pada perulangan
menyebabkan proses mengabaikan
seluruh instruksi setelah continue, dan
melanjutkan perulangan.
42
Contoh-contoh
• Menuliskan angka ganjil
43
4. Dari soal no.3, jumlahkan hanya jika user
memasukkan bilangan positif.
5. Dari soal no.3, hitung rata-rata bilangan
masukan user.
44
1)
2)
3)
4)
5)
6)
5,10,15,20,…,50
3,9,27,81,…, 531441
Bilangan kelipatan 4 antara 1 s/d 50
Tulisan STUDY HARD sebanyak 100x
99,97,95,93,…15
Buatlah program yang akan menulis
“Good Morning” sebanyak N (N adalah
inputan user)
45
7) Buatlah program yang akan menuliskan
angka 1 s/d N (N adalah inputan user)
8) Buatlah program yang akan menerima 5
angka dari user dan menjumlahkannya
9) Buatlah program yang akan
menjumlahkan seluruh angka dari user
dan berhenti ketika jumlah > 100
46
10) Buatlah program yang akan membaca
angka dari user secara terus-menerus.
Program akan berhenti jika angka yang
dimasukkan oleh user adalah nol.
Hitunglah jumlah seluruh angka masukan
user.
11) Buatlah program modifikasi dari soal no
10. Hitunglah rata-rata dari seluruh angka
yang dimasukkan user.
47
• Program menjumlahan 10 angka masukan
user.
48
• Program menjumlahkan angka masukan
user. Program berhenti jika inputan<0
49
• Program menghitung total belanja,
berhenti jika user memasukkan < 1.
50
• 4. Buatlah algoritma menentukan bilangan
terbesar dari tiga buah bilangan. Input :
• tiga bilangan (A, B dan C). Ouput :
bilangan terbesar dari ketiga input
tersebut.
Download