{Pertemuan 2} ANALISIS DAN DESAIN ALGORITMA (PG157) Outline Penulisan Algoritma menggunakan Flowchart Contoh-contoh Penggunaan Flowchart Simbol-simbol Flowchart Aturan Dasar Flowchart Flowchart umumnya digambarkan dari atas ke bawah. Semua simbol Flowchart harus terhubung dengan panah (control flow) Flowchart diawali dan diakhiri dengan sebuah simbol terminal. Semua simbol flowchart memiliki 1 (satu) panah keluar, kecuali DECISION yang memiliki 2 (dua) keluaran yaitu TRUE dan FALSE. Contoh #1 Hitung dan tampilkan luas dari lingkaran yang memiliki jarijari R (dientry). Buatlah flowchart-nya! Contoh #1 Hitung dan tampilkan luas dari lingkaran yang memiliki jari-jari R (dientry). Buatlah flowchart-nya! Inisialisasi Luas dan R Input jari-jari R Hitung Luas dengan rumus Luas = 3.14 * R2 Tampilkan Luas Contoh #1 Hitung dan tampilkan luas dari lingkaran yang memiliki jari-jari R (dientry). Buatlah flowchart-nya! Inisialisasi Luas dan R {PROSES} Input jari-jari R {I/O} Hitung Luas dengan rumus Luas = 3.14 * R2 {PROSES} Tampilkan Luas {I/O} Contoh #1 MULAI Hitung dan tampilkan luas dari lingkaran yang memiliki jari-jari R (dientry). Buatlah flowchart-nya! LUAS = 0 R=0 Inisialisasi Luas dan R {PROSES} Input jari-jari R {I/O} input R Hitung Luas dengan rumus Luas = 3.14 * R2 {PROSES} Tampilkan Luas {I/O} LUAS = 3.14 * R * R cetak LUAS SELESAI Latihan di Kelas 1. Diketahui sebuah segitiga memiliki panjang alas = 8 cm dan tinggi = 5 cm. Buatlah algoritma dalam bentuk flowchart untuk menghitung dan menampilkan luas dari segitiga tersebut! 2. Diketahui sebuah bangun ruang berbentuk bola dan memiliki diameter 15 cm. Buatlah algoritma dalam bentuk flowchart untuk menghitung dan menampilkan isi (volume) dari bangun ruang bola tersebut! 3. Diketahui sebuah segitiga siku-siku dengan panjang sisi alas 4 cm dan sisi tinggi 5 cm. Dengan menggunakan rumus Phitagoras, buatlah algoritma dalam bentuk flowchart untuk menghitung sisi miring segitiga tersebut dan menampilkannya di layar! Contoh #2 Inputkan 2 buah bilangan bulat dan tampilkan bilangan terbesar diantara keduanya (dianggap kedua bilangan nilainya berbeda). Contoh #2 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). Inisialisasi A dan B Input A Input B Jika A > B, maka Cetak A Jika tidak, maka Cetak B Contoh #2 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). Inisialisasi A dan B Input A Input B Jika A > B, maka Cetak A Jika tidak, maka Cetak B MULAI A=0 B=0 input A input B MULAI Contoh #2 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). A=0 B=0 input A Inisialisasi A dan B Input A input B Input B Jika A > B, maka Cetak A Jika tidak, maka Cetak B A>B [BENAR] Cetak A MULAI Contoh #2 A=0 B=0 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). input A Inisialisasi A dan B Input A input B Input B Jika A > B, maka Cetak A Jika tidak, maka Cetak B [SALAH] A>B Cetak B [BENAR] Cetak A MULAI Contoh #2 A=0 B=0 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). input A Inisialisasi A dan B Input A input B Input B Jika A > B, maka Cetak A Jika tidak, maka Cetak B [SALAH] A>B Cetak B [BENAR] Cetak A SELESAI MULAI Contoh #2 A=0 B=0 Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara keduanya (dianggap kedua bilangan nilainya berbeda). input A Inisialisasi A dan B Input A input B Input B F Jika A > B, maka Cetak A Jika tidak, maka Cetak B A>B Cetak B T Cetak A SELESAI Contoh #3 Inputkan sebuah bilangan bulat dan tampilkan perkataan GANJIL jika bilangan tersebut merupakan bilangan ganjil. Contoh #3 Inputkan sebuah bilangan bulat dan tampilkan perkataan GANJIL jika bilangan tersebut merupakan bilangan ganjil. Inisialisasi N (bilangan) Input N Jika N Ganjil, Cetak “GANJIL” Contoh #3 Inputkan sebuah bilangan bulat dan tampilkan perkataan GANJIL jika bilangan tersebut merupakan bilangan ganjil. Inisialisasi N (bilangan) Input N Jika N Ganjil, Cetak “GANJIL” Definisikan GANJIL! Komputer tidak mengetahui bilangan GANJIL atau GENAP. Jadi Bagaimana? Modulus (Sisa Pembagian) Budi memiliki 20 buah kelereng. Dia ingin membagi seluruh kelereng ke 4 orang temannya secara merata. Berapa kelereng akan didapat oleh masing-masing teman Budi? Berapa sisa kelereng yang dimiliki oleh Budi setelah dibagikan? Modulus (Sisa Pembagian) Badu memiliki 20 buah kelereng. Dia ingin membagi seluruh kelereng ke 3 orang temannya secara merata. Berapa kelereng akan didapat oleh masing-masing teman Badu ? Berapa sisa kelereng yang dimiliki oleh Badu setelah dibagikan? Modulus (Sisa Pembagian) Badu memiliki 20 buah kelereng. Dia ingin membagi seluruh kelereng ke 3 orang temannya secara merata. Berapa kelereng akan didapat oleh masing-masing teman Badu ? – HASIL BAGI Berapa sisa kelereng yang dimiliki oleh Badu setelah dibagikan? – SISA PEMBAGIAN Modulus (Sisa Pembagian) 20 modulus 4 = ? 10 % 8 = … 20 modulus 3 = ? 10 % 10 = … 10 % 20 = … % = operator (simbol) modulus 10 % 2 = … 10 % 3 = … 10 % 4 = … 10 % 5 = … Kembali ke Masalah Bilangan GANJIL 1 % 2 = … 8 % 2 = … 2 % 2 = … 9 % 2 = … 3 % 2 = … 10 % 2 = … 4 % 2 = … 5 % 2 = … 6 % 2 = … 7 % 2 = … Apa sudah menemukan IDE menentukan Bilangan GANJIL? Contoh #3 Inputkan sebuah bilangan bulat dan tampilkan perkataan GANJIL jika bilangan tersebut merupakan bilangan ganjil. Inisialisasi N (bilangan) Input N Jika N mod 2 == 1, Cetak “GANJIL” MULAI Contoh #3 Inputkan sebuah bilangan bulat dan tampilkan perkataan GANJIL jika bilangan tersebut merupakan bilangan ganjil. N=0 input N Inisialisasi N (bilangan) Input N T N % 2 == 1 Jika N mod 2 == 1, Cetak “GANJIL” Cetak “GANJIL” SELESAI Latihan di Kelas 1. Inputkan 2 buah bilangan bulat dan tampilkan bilangan TERKECIL diantara keduanya (dianggap kedua bilangan nilainya berbeda). 2. Inputkan 3 buah bilangan bulat yang mewakili sisi-sisi dari sebuah segitiga. Cetak perkataan “SAMA KAKI” jika terdapat 2 sisi yang sama. 3. Inputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara ketiganya (dianggap ketiga bilangan nilainya berbeda). Terima kasih…