Tugas Siswa

 ALGORITMA MENGGUNAKAN BAHASA  NATURAL



Penggunaan bahasa natural dalam algoritma sering dijumpai pada algoritma di kehidupan 
sehari-hari. Bahasa yang digunakan tentunya bahasa yang dipahami oleh pengguna algoritma. Misalkan saja petunjuk perawatan sepeda motor, tentu saja akan disediakan dengan bahasa di mana motor tersebut dijual. Jika Motor tersebut dijual di Indonesia tentu saja akan disediakan petunjuk dalam bahasa Indonesia, jika dijual di bebera negara dengan bahasa yang berbeda-beda biasanya petunjuk akan disajikan dalam banyak bahasa (multi lingual). Karena algoritma yang baik tentu algoritma yang dapat dipahami dan dijalankan oleh penggunanya. 

Penyajian algoritma dalam bahasa natural, menggunakan kalimat deskriptif, yaitu 
menjelaskan secara detail suatu algoritma dengan bahasa atau kata-kata yang mudah dipahami. Penyajian algoritma ini cocok untuk algoritma yang singkat namun sulit untuk algoritma yang besar. Selain itu algoritma ini akan sulit dikonversi ke bahasa Pemrograman. 

Contoh 1 
Berikut ini adalah algoritma untuk menentukan Volume sebuah Balok dengan bahasa sehari-hari 

Algoritma VolumeBalok 
Input berupa panjang, lebar, dan tinggi Balok dalam dalam cm 
Output berupa Volume Balok 
Langkah-langkah:  
1) Baca panjang 
2) Baca lebar 
3) Baca tinggi  
4) Hitung volume balok adalah hasil panjang x lebar x tinggi 
5) Tuliskan Volume Balok

Contoh 2 
Berikut ini algoritma mencari nilai terbesar dari 3 buah bilangan 

Algoritma MencariNilaiMax 
Input: 3 buah bilangan 
Output : bilangan terbesar di antara 3 bilangan 
Langkah-langkah: 
1) Baca bilangan pertama 
2) Baca bilangan kedua 
3) Baca bilangan ketiga 
4) Bandingkan bilangan pertama dengan bilangan kedua, pilih bilangan terbesar, dan 
simpan bilangan terbesar itu dengan nama Nmax 
5) Bandingkan Nmax dengan bilangan ketiga, jika Nmax kurang dari bilangan 3 maka 
ganti nilai Nmax dengan bilangan  ketiga, jika tidak maka nilai Nmax tetap 
6) Tuliskan Nmax sebagai keluaran 


Contoh 3

Algoritma HitungRerata 
Input:  n data berupa bilangan 
Output : nilai rata-rata 
Langkah-langkah: 
1) Baca data ke-1, data ke-2, hingga data ke-n 
2) Jumlahkan data ke-1, data kedua hingga data ke-n, simpan dengan nama JUM 
3) Bagi JUM dengan banyak data, atau n. Simpan dengan nama RERATA 
4) Tuliskan RERATA sebagai keluaran 

Contoh 1 -3 menunjukkan bagaimna menyajikan algoritma dengan bahasa natural, yaitu 
menggunakan kalimat deskriptif. Ciri-cirinya adalah bahwa dalam penyajian ini operasi-operasi maupun langkah-langkah dijelaskan dengan kata-kata dengan sedikit menggunakan simbol-simbol. Namun cara ini terkadang kurang dapat dipahami dengan baik oleh pengguna, dibandingkan dengan menuliskan operasi dan langkah-langkah dengan simbol. Pada prakteknya banyak pembuat algoritma tidak secara penuh menggunakan kata-kata untuk menjelaskan algoritma tapi mencampurnya dengan simbol-simbol. Lihat contoh 2 pada Kegiatan Belajar (KB) mengenai akar persamaan kuadrat. Pada contoh tersebut kata-kata dikombinasi dengan penggunaan simbol simbol atau rumus. 

Penyajian Algoritma yang Baik 

Menurut Donald Ervin Knuth, tang dikenal dengan Bapak  "Analisis Algoritma",  algoritma 
yang baik dan benar harus memiliki kriteria-kriteria berikut ini: 
 Input 
 Output 
 Finite 
 Definite 
 Efisien 
1. Input 
Algoritma memiliki nol input atau lebih dari pengguna. Setiap algoritma pasti memiliki input. 
Yang dimaksud dengan nol input dari pengguna adalah bahwa algoritma tidak mendapatkan masukan dari pengguna, tapi semua data inputan yang digunakan algoritma tidak dari pengguna secara langsung, namun semua data yang akan diproses sudah dideklarasikan oleh algoritma terlebih dahulu.Sebagai contoh sebuah  algoritma menghitung 100 bilangan genap yang pertama tidak memerluakan input dari pengguna karena sudah diketahui bahwa banyaknya bilangan genap 
adalah 100. Berbeda jika algoritm tersebut digunakan untuk menghitung n bilangan genap 
pertama, dengan nilai n dari pengguna. Berarti ada masukan dari pengguna yaitu n. 

2. Output 
Algoritma minimal harus memiliki 1 output. Tujuan dari algoritma adalah memberikan 
penyelesaian dari suatu permasalahan dengan langkah-langkah tertentu. Penyelesaian itulah output dari algoritma yang dimaksud. Output dapat berupa apa saja, teks, file, video, suara, dan lain-lain atau suatu nilai yang disimpan untuk digunakan algoritma lain atau disimpan di basis data. 

3. Finite (Terbatas)  
Algoritma yang baik haruslah mempunyai langkah-langkah terbatas, yang berakhir pada 
suatu titik di mana algoritma itu akan berhenti dan menghasilkan suatu output. Algoritma tidak boleh berjalan terus –menerus tanpa titik henti, hingga menyebabkan hang atau not responding jika diterapkan pada komputer. Ketika sebuah algoritma berjalan terus menerus (infinite), maka ini mengindikasikan ada kesalahan yang dibuat oleh programmer dalam mengembangkan algoritma. 

4. Define (Pasti) 
Makna dari langkah logis pada definisi algoritma terdahulu tercermin dari langkah-langkah 
yang pasti, tidak ambigu atau bermakna ganda. Suatu program harus mempunyai arah dan tujuan yang jelas ,kapan mulai dan kapan berakhir.  Dalam menyusun langkah-langkah dalam algoritma perlu dihindari kata-kata seperti secukupnya, beberapa, sesuatu, sebentar, lama, atau kata lain yang tidak terukur dengan pasti. Pemberian nomor pada algoritma dapat membantu pengguna mengikuti setiap langkah dengan pasti hingga mencapai akhir dari algoritma, yaitu solusi dari permasalahan.  

5. Efisien 
Program menghasilkan output yang benar, itu wajib. Tapi bagaimna jika output yang benar 
itu dilakukan dengan waktu yang lama padahal ada algoritma lain yang lebih cepat? Hal ini 
menunjukkan bahwa setiap algoritma, khususnya jika sudah diterapkan pada pemrograman, mempunyai waktu eksekusi (running time). Algoritma disebut efisien jika untuk mendapatkan suatu solusi tidak memerlukan memori yang banyak, proses yang berbelit-belit dan tidak perlu. Jika algoritma terlalu banyak melakukan hal-hal yang tidak perlu akan menyebabkan waktu eksekusi menjadi lebih lama.
===================================================================

Kerjakan DI Catatan :

1. Berikut ini adalah pernyataan yang benar mengenai algoritma, kecuali .... 
a. Algoritma merupakan prosedur pemecahan masalah 
b. Algoritma berisi rangkaian langkah-langkah kerja 
c. Algoritma tidak harus  menghasilkan output 
d. Algoritma pasti memberikan hasil yang sama untuk inputan yang sama 
e. Algoritma harus terbatas langkahnya 

2. Dalam sebuah algoritma, langkah-langkah tidak boleh ambigu. Manakah di antara langkah-langkah dalam sebuah algoritma berikut yang ambigu? 
a. “Masukkan satu gelas air putih” 
b. “Tuangkan adonan puding ke dalam cetakan” 
c. “Jika kue sudah matang, keluarkan kue dari oven” 
d. “Kukus adonan selama 20 menit” 
e. “Sajikan selagi panas”  

3. Bagian persiapan dari sebuah algoritma disebut dengan bagian .... 
a. Deskripsi 
b. Deklarasi 
c. Header 
d. Preparation 
e. Prosedur 

4. Istilah-istilah yang biasanya muncul pada bagian deskripsi algoritma yang berkenaan installasi software adalah sebagai berikut, kecuali ......... 

a. Tunggu hingga proses installasi selesai 
b.  Tekan Tombol Next 
c. Masukkan Serial Number 
d. Klik ganda ikon 
e. Matikan komputer 

5. Berikut ini alasan mengapa langkah-langkah algoritma tidak boleh ambigu? 
1. Agar algoritma memberikan output  yang sama untuk  input yang sama 
2. Agar algoritma dapat dimengerti oleh pengguna 
3. Agar langkah-langkah algoritma menjadi terbatas atau mempunyai titik henti.

Manakah di antara pernyataan diatas yang benar? 
a. 1 saja 
b. 1 dan 2 saja 
c. Semua benar 
d. 1 dan 3 saja 
e. Tidak ada yang benar 


6. Berikut ini pertanyaan yang benar mengenai penyajian algoritma dengan bahasa natural, 
kecuali..... 
a. Penyajiannya singkat dan efisien 
b. Mengunakan bahasa sehari-hari pembuat program atau pengguna 
c. Kurang universal 
d. Menyatakan langkah-langkah dengan kalimat deskriptif 
e. Dapat dimengerti oleh pengguna algoritma 

7. Berikut ini pernyataan yang benar mengenai input dan output dalam algoritma, kecuali ... 
a. Algoritma harus memiliki minimal 1 output 
b. Algoritma bisa memiliki nol input dari pengguna 
c. Algoritma bisa memiliki input dari algoritma itu sendiri 

d. Algoritma boleh tidak memiliki output 
e. Algoritma mengolah input menjadi output

8. Sebuah algoritma dijalankan melalui sekian langkah dengan kriteria-kriteria tertentu. Namun ketika ditelusuri, algoritma itu akan berulang ke satu langkah secara terus menerus sehingga tidak ada jaminan algoritma tersebut berhenti. Ini artinya algoritma tidak memenuhi sifat... 
a. define 
b. finite 
c. efisien 
d. efektif 

e. solutif 

Perhatikan algoritma berikut ini untuk soal nomor 9 dan 10. 
Algoritma Hitung 
1) Baca masukkan a 
2) Baca masukan b 
3) Jika a lebih besar b maka lanjut ke langkah 4, jika tidak lanjut ke langkah 5 
4) Ubah nilai a menjadi a dikurangi b, ulangi lagi langkah 3 
5) Tuliskan a 

6) Selesai 


B. Essay 

1.Penyajian algoritma dengan bahasa natural adalah 
2.Buatlah algoritma mengenai cara menghapus software dalam Sistem Operasi Windows 7! 

Posting Komentar

[disqus][blogger][facebook]

MKRdezign

Formulir Kontak

Nama

Email *

Pesan *

Diberdayakan oleh Blogger.
Javascript DisablePlease Enable Javascript To See All Widget