STRUKTUR DASAR ALGORITMA ALGORITMA PEMROGRAMAN
Struktur algoritma Dalam sebuah algoritma langkah-langkah penyelesaian masalahnya dapat berupa struktur urut (sequence), struktur pemilihan (selection), dan struktur pengulangan (repetition).
Struktur Urut (sequence) Struktur urut adalah suatu struktur program dimana setiap baris program akan dikerjakan secara urut dari atas ke bawah sesuai dengan urutan penulisannya.
Gambar Flowchart struktur urut
Dari flowchart diatas mula-mula pemroses akan melaksanakan instruksi baris program 1, instruksi baris program 2 akan dikerjakan jika instruksi baris program 1 telah selesai dikerjakan. Selanjutnya instruksi baris program 3 dikerjakan setelah instruksi baris program 2 selesai dikerjakan. Setelah instruksi baris program 3 selesai dilaksanakan maka algoritma berhenti.
Contoh Algoritma Luas_Pesegi_Panjang Diketahui sebuah pesegi panjang yang memiliki panjang dan lebar. Deskripsi : mulai Baca panjang Baca lebar Hitung luas = panjang * lebar Tampilkan luas selesai
Struktur Pemilihan (selection) atau Penyeleksian Kondisi Pada struktur pemilihan tidak setiap baris program akan dikerjakan. Baris prorgam yang dikerjakan hanya yang memenuhi syarat saja. Struktur pemilihan adalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. Pengujian kondisi ini dilakukan untuk memilih salah satu dari beberapa alternatif yang tersedia.
Pada pemrograman penyeleksian dilakukan pada suatu pernyataan boolean, yang dapat menghasilkan nilai benar (true) atau nilai salah (false). Biasanya sebuah pernyataan pemilihan terdiri dari operand-operand yang dihubungkan dengan operator relasi dan digabungkan dengan operator logika.
Contoh 7 = 7 (Benilai benar, sebab 7 sama dengan 7) 5 = 9 (Bernilai salah, sebab 5 tidak sama dengan 9) 4 > 2 (Bernilai benar, sebab 4 lebih besar dari pada 2) 3 <> 8 (Bernilai benar, sebab 3 tidak sama dengan 8) X = 10 (Dapat benilai benar atau salah, tergantung isi variabel X) (X > 3) And (Y < 12) (Dapat benilai benar atau salah, tergantung isi variabel X dan Y)
Macam-macam struktuf IF IF sederhana IF … THEN … ELSE … IF Bersarang (Nested IF)
IF sederhana Bentuk IF sederhana adalah : IF <syarat> THEN <instruksi> Bentuk flowchart :
Contoh Dibuat aturan untuk menentukan kelulusan seorang siswa yang diketahui dari hasil nilainya. Seorang siswa dikatakan lulus jika nilai lebih besar atau sama dengan 60. Algoritma Kelulusan_Siswa Seorang siswa dikatakan lulus jika nilainya >= 60. Deskripsi : mulai Baca nilai_siswa Jika nilai_siswa >= 60 maka kerjakan langkah 6 Cetak “Siswa tersebut lulus” selesai
Flowchart Kelulusan_Siswa :
IF … THEN … ELSE … Bentuk : IF <syarat> THEN <instruksi1>
Contoh Algoritma Kelulusan_Siswa Diketahui seorang siswa dikatakan lulus jika nilainya >= 60, dan jika nilainya < 60 maka siswa tidak lulus. Deskripsi : mulai Baca nilai_siswa Jika nilai_siswa >= 60 maka kerjakan langkah 4, selain itu kerjakan langkah 5 Cetak “Siswa tersebut lulus” Cetak “Siswa tidak lulus” selesai
Flowchart Kelulusan_Siswa :
IF Bersarang (Nested IF) Bentuk : IF <syarat1> THEN <instruksi1> ELSE IF <syarat2> THEN <instruksi2> ELSE IF <syarat3> THEN <instruksi3> ELSE IF <syaratm> THEN <instruksim> ELSE <Instruksin>
Contoh Buatlah algoritma dan flowchart untuk menghitung konfersi nilai siswa, input berupa nama siswa dan nilai berupa nilai angka. Hasilnya akhir adalah berupa nilai huruf hasil konfersi dengan aturan : Jika nilai_angka >= 80 maka nilai huruf sama dengan A Jika nilai_angka >= 70 maka nilai huruf sama dengan B Jika nilai_angka >= 60 maka nilai huruf sama dengan C Jika nilai_angka >= 50 maka nilai huruf sama dengan D Jika nilai_angka < 50 maka nilai huruf sama dengan E
Algoritma Konfersi_Nilai Diketahui nilai angka seorang siswa yang akan dikonfersikan ke nilai huruf. Deskripsi : mulai Baca nama_siswa Baca nilai_angka Jika nilai_angka >= 80 maka nilai_huruf = “A”, selain itu jika nilai_angka >= 70 maka nilai_huruf = “B”, selain itu jika nilai_angka >= 60 maka nilai_huruf = “C”, selain itu jika nilai_angka >= 50 maka nilai_huruf = “D” selain itu nilai_huruf = “E” Cetak nama_siswa dan nilai_huruf selesai