26
Solusi-solusi Mata Kuliah Algoritma Pertemuan 2

Solusi Soal Soal Algoritma

Embed Size (px)

DESCRIPTION

Sharing pengetahuan

Citation preview

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