STRUKTUR ALGORITMA PEMROGRAMAN
PENGERTIAN ALGORITMA
Algoritma
adalah
urutan langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis. Logis dalam hal ini dapat menghasilkan nilai benar atau salah.
Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah, ada syarat
kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Konsep
algoritma sering kali disetarakan dengan sebuah resep.
Sebuah resep biasanya memiliki daftar bahan atau
bumbu yang akan digunakan, urutan pengerjaan dan bagaimana hasil dari urutan
pengerjaan tersebut. Apabila bahan yang digunakan tidak tertera (tidak
tersedia) maka resep tersebut tidak akan dapat dikerjakan. Demikian juga jika
urutan pengerjaannya tidak beraturan, maka hasil yang diharapkan tidak akan
dapat diperoleh.
Algoritma yang berbeda dapat diterapkan pada
suatu masalah dengan syarat yang sama. Tingkat kerumitan dari suatu algoritma
merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut
untuk menyelesaikan masalah. Umumnya, algoritma yang dapat menyelesaikan suatu
permasalahan dalam waktu yang singkat memiliki tingkat kerumitan yang rendah,
sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan suatu
masalah membutuhkan tingkat kerumitan yang tinggi.
Perhatikan algoritma sederhana berikut.
Contoh 1.1. Algoritma membuat teh manis.
1.
Start
2.
Sediakan gelas
3.
Tuangkan air panas
4.
Berilah gula
5.
Diaduk sampai rata
6.
Masukkan teh celup sampai larut
7.
Siap disajikan
Contoh 1.2. Algoritma
menghitung luas segitiga.
1.
Start
2.
Baca data alas dan tinggi
3.
Luas adalah alas kali tinggi kali 0.5
4.
Tampilkan Luas
5.
Stop
Contoh 1.3. Algoritma
menghitung luas persegi panjang.
1.
Start
2.
Baca data panjang dan lebar
3.
Luas adalah panjang kali lebar
4.
Tampilkan Luas
5.
Stop
Contoh 1.4. Algoritma
menghitung volume balok.
1.
Start
2.
Baca data panjang, lebar dan tinggi.
3.
Volume adalah panjang kali lebar kali tinggi
4.
Tampilkan Volume
5.
Stop
Dalam menyusun suatu program, langkah pertama yang harus
dilakukan adalah membuat Algoritma. Tahapan dalam menyelesaikan suatu masalah
adalah Masalah – Algoritma – Flowchart – Program – Eksekusi – Hasil. Dalam
menerapkan algoritma, dapat dipergunakan berbagai macam software bahasa
pemrograman diantaranya Pascal, Delphi, Visual Basic, HTML dan lain-lain.
Algoritma di atas adalah algoritma yang sangat
sederhana, hanya ada lima langkah. Pada algoritma ini tidak dijumpai perulangan
ataupun pemilihan. Semua langkah dilakukan hanya satu kali. Tapi tidak ada
pembatasan pada nilai data untuk alas dan tinggi. Bagaimana jika nilai data
alas atau tinggi adalah bilangan 0 atau bilangan negatif ? Tentunya hasil yang
keluar menjadi tidak sesuai dengan yang diharapkan.
Dalam kasus seperti ini kita perlu mevalidasi
input nilai nya. Apabila input nilai alas dan tinggi kurang dari 0 maka program
tidak akan dijalankan. Sehingga algoritma di atas dapat dirubah menjadi seperti
contoh berikut.
Contoh 1.5. hasil
perbaikan algoritma perhitungan luas segitiga.
1.
Start
2.
Baca data alas dan tinggi.
3.
Periksa data alas dan tinggi, jika nilai data
alas dan tinggi lebih besar dari nol maka lanjutkan ke langkah ke 4 jika tidak
maka stop (langkah 6)
4.
Luas adalah alas kali tinggi kali 0.5
5.
Tampilkan Luas
6.
Stop
Dari penjelasan di atas
dapat diambil kesimpulan pokok tentang algoritma.
Pertama, algoritma harus benar.
Kedua algoritma harus berhenti, dan
setelah berhenti, algoritma memberikan hasil yang benar.
Contoh
Soal :
1.
Diketahui bahwa kantong P kosong. Kantong Q
berisi 10 buah kelereng dan kantong R berisi 15 kelereng. Apabila yang terbawa
hanya sebuah kantong dan di katakan BUKAN kantong P yang terbawa, Maka jumlah
kelereng yang terbawa adalah.....
A. 10
B. 15
C. 10 atau 15
D. 10 dan 15
E. Kosong
2.
Diketahui algoritma : Jika siswa memperoleh
nilai <80 maka remidial dan >=80 maka tuntas. jika siswa tadi memperoleh
nilai = 78 maka....
A. Remidial
B. Tuntas
C. 80
D. Tidak ada keterangan
E. 100
3.
Diketahui algoritma : gelas A diberi air
berwarna merah, gelas B diberi air berwarna hijau, gelas C kosong. Kemudian
gelas C dituangkan air dari gelas A, air di gelas B dituangkan ke gelas A. Dan
air di gelas B dituangkan dari gelas C. Maka....
A. Gelas A berwarna hijau,
gelas B berwarna merah
B. Gelas A berwarna merah,
gelas B berwarna hijau
C. Gelas A berwarna merah,
gelas B berwarna merah
D. Gelas A berwarna hijau,
gelas B berwarna hijau
E. Gelas A kosong, gelas B
berwarna merah
4.
Diberikan algoritma : Apabila input warna merah
maka jadi hijau. Apabila inputwarna hijau maka jadi putih, selain input warna
merah dan hijau maka jadi ungu. Jika kondisi input warna adalah hitam, maka
warna jadi.....
A. Merah
B. Ungu
C. Hijau
D. Putih
E. Abu-abu
No comments:
Post a Comment