solusi soal soal algoritma
TRANSCRIPT
Solusi-solusiMata Kuliah Algoritma
Pertemuan 2
Contoh Lain
Menghitung kuadrat suatu bilangan Menghitung luas bidang datar Menghitung volume benda Konversi mata uang Konversi suhu (Celsius ke reamur, celsius
ke fahrenheit, celsius ke kelvin, dan sebaliknya)
Flowchart menghitung kuadrat suatu bilangan
Start
Stop
Input Bil
Kuadrat = 0
Kuadrat = Bil * Bil
Cetak Kuadrat
Flowchart menghitung volume benda - Tabung
Start
Stop
Input Jari2, Tinggi
Volume = 0
Volume = 3.14 * Jari2 * Jari2 * Tinggi
Cetak Volume
Flowchart menghitung luas bidang datar - Segitiga
Start
Stop
Input Alas, Tinggi
Luas = 0
Luas = 0.5 * Alas * Tinggi
Cetak Luas
Flowchart konversi mata uang- Rupiah ke Dollar
Start
Stop
Input Rupiah
Kurs_Rp2US = 9100Konversi = 0
Konversi = Rupiah / Kurs_Rp2US
Cetak Konversi
Flowchart konversi suhu – Celcius ke Fahrenheit
Start
Stop
Input Celcius
Fahrenheit = 0
Fahrenheit = (9 / 5 * Celcius) + 32
Cetak Fahrenheit
Contoh lain
Penentuan bilangan positif atau negatif Penentuan bilangan ganjil atau genap
Flowchart penentuan bilangan positif atau negatif
Start
Stop
Input Bil
Cetak “Positif”
Cetak “Negatif”Bil >= 0 ?
Y
T
Flowchart penentuan bilangan ganjil atau genap
Start
Stop
Input Bil
Cetak “Genap”
Cetak “Ganjil”Bil mod 2 = 0 ?
Y
T
Contoh lain
Pemilihan menu Penentuan status kelulusan mahasiswa
(Cumlaude, sangat memuaskan, dan memuaskan)
Konversi bilangan romawi ke desimal (Bulat)
Konversi dari bilangan ke kalimat
Flowchart pemilihan menuStart
Stop
Input Pilihan
Pilihan = 1 ?
Y
T
Hitung L. Segitiga
Pilihan = 2 ?
Y
T
Hitung L. Segiempat
Pilihan = 3 ?
Y
T
Hitung L. Lingkaran
Flowchart penentuan status kelulusan mahasiswa
Start
Stop
Input IPK
IPK >= 3,5 ?
Y
TIPK >= 2,75 ?
Y
TIPK >= 2 ?
Y
T
Cetak “SangatMemuaskan”
Cetak “Cumlaude” Cetak “Memuaskan”
Flowchart konversi bilangan romawi ke desimal (bulat)
Start
Input Romawi
Huruf_Skr = ‘M’ ?Y
T
Hrf_Skr = ‘D’ ?
Hrf_Skr = ‘C’?
JmlHuruf = Panjang Romawi
Untuk I = 1 to JmlHuruf
Huruf_Skr = Posisi huruf ke I dari Romawi
Angka = 0
Huruf_Stlh = Posisi huruf ke I+1 dari Romawi
1
1
Angka = Angka + 1000
Y Angka = Angka + 500
Y
Hrf_Skr = ‘D’?
Hrf_Stlh = ‘M’?
Angka = Angka + 100
T
T
Y Angka = Angka + 900I = I + 1
Y Angka = Angka + 400I = I + 1
Stop
Cetak Angka
2
2
2
2
Flowchart konversi bilangan bulat ke romawi
Start
Stop
Input Bilangan
Bilangan >= 1000 ?Y
T
Bilangan >= 900 ?
Bilangan = Bilangan - 1000
Y
Cetak “M”
Bilangan = Bilangan - 900 Cetak “CM”
Bilangan >= 500 ?Y
T
Bilangan = Bilangan - 500 Cetak “D”
Flowchart konversi dari bilangan ke kalimatStart
Input Bilangan
Y
T
Bilangan >= 109 ?
Konversi = ‘Trilyun’Nilai = Bilangan div 1012
Bilangan = Bilangan – Nilai * 1012
Y
Cetak Konversi
T
Bilangan >= 1012 ?
Konversi = ‘’Nilai = 0
Konversi Nilai
Konversi = ‘Milyar’Nilai = Bilangan div 109
Bilangan = Bilangan – Nilai * 109
Cetak KonversiKonversi Nilai
Bilangan >= 106 ?Y
T
Konversi = ‘Juta’Nilai = Bilangan div 106
Bilangan = Bilangan – Nilai * 106
Cetak KonversiKonversi Nilai
Contoh lain
Menampilkan 10 bilangan kuadrat yang pertama
Menampilkan bilangan kuadrat yang kurang dari 100
Menjumlahkan bilangan 1 sampai 10
Flowchart menampilkan 10 bilangan kuadrat yang pertama
Start
Stop
Cetak Kuadrat
Untuk I = 1 sampai 10
Kuadrat = I * I
Flowchart menampilkan bilangan kuadrat yang kurang dari 100
Start
Stop
Cetak Kuadrat
Kuadrat = Bil * BilBil = Bil + 1
Bil = 1Kuadrat = 0
Selama Kuadrat < 90
Flowchart menjumlahkan bilangan 1 sampai 10
Start
Stop
Cetak Jumlah
Untuk I = 1 sampai 10
Jumlah = Jumlah + I
Jumlah = 0
Studi Kasus
Mencari rata-rata 10 buah bilangan Menentukan apakah suatu bilangan
termasuk bilangan prima atau bukan Mencari 10 bilangan prima yang pertama Mencari nilai KPK (kelipatan persekutuan
terkecil) dua buah bilangan Mencari nilai FPB (faktor persekutuan
terbesar) dari dua bilangan
Flowchart mencari rata-rata 10 buah bilangan
Start
Stop
Cetak Rata2
Untuk I = 1 sampai 10
Jumlah = Jumlah + Bil
Jumlah = 0Rata2 = 0
Input Bil
Rata2 = Jumlah / 10
Flowchart menentukan apakah suatu bilangan termasuk bilangan prima atau bukan
Start
Stop
Cetak “Bil Prima”
Untuk I = 2 sampai Bil-1
Sisa = Bil Mod I
Sisa = 0
Input Bil
(Atau I = 2 sampai Bil/2)
Cetak “BukanBil Prima”
Sisa = 0 ?Y
T
Flowchart mencari 10 bilangan prima yang pertamaStart
Stop
Cetak Bil
Untuk I = 2 sampai Bil/2-1
Bil = 2, Jml = 1
Bil mod I = 0 ?Y
T
Selama Jml <= 10
Bil = Bil + 1
Jml = Jml + 1
Flowchart mencari nilai KPK (kelipatan persekutuan terkecil) dua buah bilangan
Start
Cetak KPK
KPK = 0, Stop = False
KPK mod Bil2 = 0 ?Y
T
Stop = True
Input Bil1, Bil2
Bil1 < Bil2 ?T
Y
Tukar(Bil1,Bil2)
Selama != Stop
KPK = KPK + Bil1
Flowchart mencari nilai FPB (faktor persekutuan terbesar) dari dua bilangan
Start
FPB = 0
I = J ?Y
Input Bil1, Bil2
Bil1 < Bil2 ?T
Y
Tukar(Bil1,Bil2)
Untuk I = 1 sampai Bil2
Untuk J = 1 sampai Bil1
Bil1 mod J = 0 ?
Bil2 mod I = 0 ?
Y
Y
T
T