You are on page 1of 22

Struktur Skuensial, Seleksi, dan

Perulangan
(Flowgorithm)
Risma Septiana, ST, M.Eng.
Struktur Skuensial

Contoh masalah:
Menghitung jarak Euclidean dari dua buah titik: (x1,y1) dan (x2,y2)

Rumus
= 𝑥2 − 𝑥1 2 + 𝑦2 − 𝑦1 2

Buatlah diagram alir yang meminta nilai kedua titik tersebut menggunakan keyboard dan
kemudian menampilkan jaraknya
Contoh skuensial 2:

Mawar memerlukan aplikasi yang dapat digunakan untuk menghitung cicilan pinjaman perbulan
berdasarkan suatu nilai pokok pinjaman, jangka kredit dalam satuan bulan, dan bunga setahun.
Perhitungan bunga yang digunakan adalah jenis flat. Buatlah diagram alir untuk permasalah
tersebut

Penyelesaian:
Masukkan yang digunakan antara lain:
Pokok = Pokok Pinjaman
Bunga Per Tahun = Suku Bunga Per Tahun
TempoDalamBulan= Lama Kredit dalam bulan

Maka,
AngsuranPokokPerBulan= Pokok/TempoDalamBulan
BungaPerBulan=Pokok x BungaPerTahun/1200
AngsuranPerBulan = AngsuranPokokPerBulan+BungaPerBulan
AngsuranPerBulan=Pokok/TempoDalamBulan+Pokok x BungaPerTahun/1200

Angsuran Per Bulan = Pokok x (1/TempoDalamBulan+BungaPerTahun/1200)


Contoh-contoh kasus yang harus diselesaikan:

1. Tinggi suatu menara dapat diukur melalui suatu posisi dengan mengukur jarak dari posisi
tersebut ke kaki menara dan sudut antara posisi pengukuran dan tinggi menara. Buatlah
diagram alir yang meminta masukkan berupa jarak dan sudut tersebut serta tinggi sebagai
output akhir.
STRUKTUR SELEKSI

• Dalam struktur seleksi, terdapat ekspresi Boolean yang akan menentukkan pengambilan
keputusan.
• Struktur seleksi berkaitan dengan Pemrograman Defensif
• Pemrograman Defensif berkaitan dengan pernyataan-pernyataan yang digunakan untuk
memeriksa data yang tidak sesuai selama program dieksekusi.
• Contoh aplikasi meliputi:
 Mencegah pembagian dengan nol
 Menghindari perhitungan akar untuk bilangan nol dan negative
 Melakukan validasi terhadap data pilihan
Contoh
Bagaimana menentukan suatu bilangan bulat sebagai bilangan genap atau ganjil?

Penyelesaian:
• Sangat mudah untuk menyatakan suatu bilangan genap atau ganjil secara manual
(anggapan manusia). Namun, bagaimana caranya agar computer bias menentukan
hal itu?

• Terapkan cara bagaimana manusia menentukan bilangan ganjil dan gneap .

• Bilangan genap adalah bilangan yang habis jika dibagi dengan 2. Ekspresi
matematisnya adalah
• X mod 2 == 0

• X merupakan inputan berupa sebuah bilangan yang akan ditentukan sebagai


bilangan genap atau bukan.

• Hasilnya adalah ekspresi Boolean yang menunjukkan nilai True jika X adalah
bilangan Genap dan False jika X adalah bilangan ganjil.
If Bertingkat:
Body Mass Index (BMI) biasa digunakan sebagai indicator untuk menyatakan perbandingan antara
berat badan dan tinggi badan manusia dewasa. Dengan menggunakan BMI, seseorang bias
dikategorikan sebagai terlalu kurus, terlalu gemuk, atau ideal. Rumus yang digunakan untuk
menghitung indeks ini adalah sebagai berikut:

𝑏𝑒𝑟𝑎𝑡
𝐵𝑀𝐼 =
𝑡𝑖𝑛𝑔𝑔𝑖 2

Satuan berat yang digunakan adalah kilogram, dan tinggi dinyatakan dalam meter

Berdasarkan nilai BMI yang didapat seseorang dapat dikategorikan :


a. Kurus jika BMI < 18,5
b. Ideal jika BMI>=18,5 tetapi BMI<=25
c. Gemuk jika BMI>=25, dan BMI<=30
d. Terlalu Gemuk jika BMI>=30

Buatlah penyelesaian agar seseorang mengetahui nilai BMInya dan kategori badannya menurut
nilai BMI tersebut.
Contoh-contoh kasus yang harus diselesaikan:

1. Penentuan Harga Papan Arduino Uno yang dijual di perusahaan Elektropedia ditentukan
oleh kuantitas pembelian, seperti yang ditunjukkan pada table berikut.

Kuantitas Minimum Kuantitas Maksimum Harga Per Unit


1 5 78000
6 12 75000
13 20 72000
21 40 68000
41 99 65000
100 - 58000

Buatlah diagram alir yang meminta kuantitas barang yang dibeli dan melaporkan harga per unit serta
total pembayaran.
Perulangan

Perlu dihindari perulangan yang tidak berhenti atau dinamakan infinit loop

Contoh:
Tampilkan bilangan <=10
Harus ada fungsi pencacah untuk menghentikan perulangan

Perulangan juga bias dihentikan dengan nilai sentinel yaitu satu nilai yang biasa digunakan untuk
menghentikan perulangan.
Pencacah berfungsi sebagai counter untuk menghitung jumlah iterasi dalam perulangan, sehingga pada
suatu saat jika kondisi perulangan bernilai true maka perulangan akan berakhir.
1
1
2

increment
Perulangan While Do
Pengujian perulangan dilakukan sebelum assignment dieksekusi

Contoh:
Menampilkan N bilangan asli pertama
Perulangan dengan Do While
Perulangan dilakukan setelah assignment dieksekusi
1 2

Perulangan For
Contoh Kasus Perulangan

Bagaimana cara pembuatan N Bintang yang ditampilkan dalam


satu baris dengan N dapat ditentukan melalui Keyboard?

Penyelesaian:
Perulangan dapat menggunakan while do, do while ataupun for.
Setiap iterasi, symbol * ditambahkan ke akhir nilai suatu
variable bertipe String.
Buatlah diagram alir untuk membentuk segita seperti berikut

N=5
*
**
***
****
*****

N=6
*
**
***
****
*****
******

Dengan ketentuan jika N dapat diinputkan melalui keyboard


Penjelasan:
• Dari gambar tersebut dapat terlihat jika tinggi
segitiga adalah N.
• Jumlah bintang tergantung dengan barisnya, jika
baris 1 jumlah bintang juga 1, demikian seterusnya.
• Perulangan yang digunakan adalah perulangan
bertingkat karena ada dua jenis perulangan yang
ditangani yaitu dalam penentuan jumlah baris dan
penentuan jumlah bintang.
Kasus:

1. Buatlah diagram alir untuk mendapatkan segitiga dengan bentuk berikut:


*********
*******
*****
***
*

2. Buatlah diagram alir untuk membuat N suku deret Fibonacci


1,1,2,3,5,8,13,21

You might also like