ARTIKEL INI SAYA KOPAS DARI
WEB : ]
https://www.dosenpendidikan.co.id/contoh-algoritma/
3.1 Menerapkan alur logika
pemrograman komputer
4.1 Membuat alur logika
pemrograman komputer
Pengertian Algoritma
Algoritma adalah logika, metode dan
tahapan “urutan” sistematis yang digunakan untuk memecahkan suatu permasalahan.
Algoritma dapat juga diartikan sebagai urutan langkag secara sistematis dan
logis. Dalam perkembangannya, algoritma banyak dipakai di bidang komputer.
Secara spesifik, pengertian algoritma
ialah suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang
terstruktur dan dituliskan secara matematis yang akan dikerjakan untuk
menyelesaikan suatu masalah dengan bantuan komputer.
Jadi berdasarkan definisi ini, dapat dikatakan algoritma merupakan langkah
penyelesaian suatu masalah yang menghasilkan solusi dalam bentuk program
komputer. Namun penting diketahui bahwa algoritma tidaklah tergantung oleh
suatu bahasa pemrograman tertentu, artinya suatu algoritma harus dapat
diwujudkan oleh bahasa pemrograman komputer apapun.
Algoritma dapat disajikan dalam dua bentuk
yaitu dalam bentuk tulisan/bahasa dan dalam bentuk gambar. Penyajian algoritma
dalam bentuk tulisan haruslah menggunakan bahasa yang dapat dimengerti manusia
dalam menyajikan langkah-langkah algoritma. Penyajian algoritma dalam bentuk
tulisan juga dapat dilakukan menggunakan pseudocode.
Pseudocode berasal dari kata pseudo yang
berarti “mirip atau menyerupai” dan code yang berarti “kode program”. Contoh
bahasa pemrograman yang digunakan untuk menyatakan pseudocode ialah BASIC,
Pascal, C, dan lain-lain. Sedangkan, penyajian algoritma dalam bentuk gambar
sering disebut flow chart.
Sejarah Algoritma
Kata algoritma berasal dari latinisasi
nama seorang ahli matematika dari Uzbekistan Al Khawārizmi (hidup sekitar abad
ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari
abad ke-12 “Algorithmi de numero Indorum”.
Pada awalnya kata algorisma adalah istilah
yang merujuk kepada aturan-aturan aritmetis untuk menyelesaikan persoalan
dengan menggunakan bilangan numerik arab (sebenarnya dari India, seperti
tertulis pada judul di atas). Pada abad ke-18, istilah ini berkembang menjadi
algoritma, yang mencakup semua prosedur atau urutan langkah yang jelas dan
diperlukan untuk menyelesaikan suatu permasalahan.
Masalah timbul pada saat akan menuangkan
bagaimana proses yang harus dilalui dalam suatu/sebuah sistem (program) bagi
komputer sehingga pada saat eksekusinya, komputer dapat bekerja seperti yang
diharapkan. Programer komputer akan lebih nyaman menuangkan prosedur
komputasinya atau urutan langkah proses dengan terlebih dahulu membuat gambaran
(diagram alur) diatas kertas.
Ciri
Algoritma
Adapun ciri algoritma sebagai berikut:
1.
Ada Input
2.
Ada proses
3.
Ada Output
4.
Memiliki Instruksi-Instruksi yang jelas dan tidak Ambigu
5.
Harus mempunyai Stoping Role
Fungsi
Algoritma
Berikut ini terdapat beberapa fungsi algoritma, terdiri atas:
- Menggunakan fungsi algoritma bisa
digunakan untuk memecahkan program yang rumit.
- Menggunakan fungsi algoritma bisa
menjadikan program yang besar menjadi program yang lebih sederhana.
- Fungsi algoritma bisa digunakan
secara berulang atau lebih dari satu kali penggunaan.
- Memudahkan dalam pembuatan program.
- Bisa mengatasi segala masalah dengan
logika dan urut.
- Menggunakan fungsi algoritma bisa
melakukan pendekatan top-down dan juga devide and conguer.
- Meminimalisir penulisan program yang
berulang-ulang.
- Program yang ada menjadi lebih
terstruktur dengan rapi sehingga dapat lebih mudah untuk dipahami ataupun
dikembangkan.
- Ketika terjadi kesalahan bisa dicari
dengan mudah karena dengan fungsi algoritma bisa mendapatkan alur yang
jelas.
- Ketika ingin melakukan modifikasi
pada program bisa dilakukan hanya pada satu modul saja tanpa harus merubah
dan mengganggu modul yang lain.
- Dokumentasi yang lebih mudah.
Jenis-Jenis Algoritma
Berikut ini terdapat beberapa jenis-jenis algoritma, terdiri atas:
1. Divide
and Conquer
Paradigma untuk membagi suatu permasalahan besar menjadi
permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini dilakukan
terus menerus sampai ditemukan bagian masalah kecil yang mudah untuk
dipecahkan. Singkatnya menyelesaikan keseluruhan masalah dengan membagi masalah
besar dan kemudian memecahkanpermasalahan-permasalahan kecil yang terbentuk.
2. Dynamic
programming
Paradigma pemrograman dinamik akan sesuai jika digunakan pada
suatu masalah yang mengandung sub-struktur yang optimal (, dan mengandung
beberapa bagian permasalahan yang tumpang tindih. Paradigma ini sekilas
terlihat mirip dengan paradigma Divide and Conquer, sama-sama mencoba untuk
membagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara
intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.
3. Metode
serakah
Sebuah algoritma serakah mirip dengan sebuah Pemrograman dinamik,
bedanya jawaban dari submasalah tidak perlu diketahui dalam setiap tahap; dan
menggunakan pilihan “serakah” apa yang dilihat terbaik pada saat itu.
Sistem
Flowchart

Sistem flowchart merupakan diagram alir yang menggambarkan suatu
sistem peralatan komputer yang digunakan dalam proses pengolahan data serta
hubungan antar peralatan tersebut. Sistem flow chart tidak digunakan untuk
menggambarkan urutan langkah untuk memecahkan masalah, tetapi hanya untuk
menggambarkan prosedur dalam sistem yang dibentuk.
5. Pseudo Code (Kode Semu)
Pseudo Code (kode semu) merupakan metode yang cukup efisien untuk
menggambarkan suatu algoritma . Pseudo Code dituliskan dengan menggunakan
bahasa yang mudah dipahami (boleh menggunakan bahasa Indonesia) agar alur
logika yang digambarkan dapat dimengeti oleh orang awam sekalipun.
Flowchart Pseudo Code (kode semu) disusun dengan tujuan untuk
menggambarkan tahap-tahap penyelesaian suatu masalah dengan
kata-kata (teks). Metode ini mempunyai kelemahan, dimana penyusunan
algoritma dengan kode semu sangat dipengaruhi oleh tata bahasa
pembuatnya, sehingga kadang-kdang sulit dipahami oleh orang lain.
Oleh karena itu kemudian dikembangkan suatu metode lain yang
dapat menggambarkan suatu algoritma program secara lebih mudah dan sederhana
yaitu dengan menggunakan flowchart (diagram alir).
Manfaat Algoritma
Adapun manfaat algoritma sendiri yaitu untuk membantu seseorang
dalam menyelesaikan suatu masalah berdasarkan pada pola pikirnya masing-masing.
Sifat Algoritma
Adapun sifat algoritma sebagai berikut:
- Tidak menggunakan syimbol atau
syintaks dari suatu bahasa pemograman.
- Tidak tergantung pada suatu bahasa
pemograman.
- Notasi-notasinya dapat digunakan
untuk seluruh bahasa pemograman.
Struktur Dasar Algoritma
Struktut algoritma adalah urutan bagaimana pemrosesan instruksi
dalam algoritma dilakukan dan juga bagaimana struktur instruksi algoritma
tersebut dibagun.
Struktur dasar algoritma dibagi menjadi 3 bagian sebagai berikut:
1. Runtunan (Sequence)
Sequence atau runtunan dalam struktur algoritma adalah bahwa
instruksi-insturksi dalam algoritma diproses secara beruntun langkah demi
langkah dari awal sampai akhir dimulai dari langkah pertama hingga langkah
terakhir.
Harus selalu diingat, bahwa Runtunan ini juga berlaku di dalam
bahsa pemrograman, ketika instruksi bahasa pemrograman yang kita tulis di
proses oleh komputer, maka komputer akan memproses dan menterjemahkan bahasa
pemrograman tersebut secara beruntun dari awal hingga akhir dimulai dari
instruksi pada baris pertama hingga baris terakhir.
Dengan struktur runtunan ini,
akan menentukan bagaimana insturksi harus ditulis, intruksi mana yang harus
didahulukan dan intruksi mana yang harus diakhirkan.
2. Pemilihan (Selection)
Pada umumnya instruksi algoritma setidaknya akan mengandung
pemilihan, atau selection, instruksi ini akan muncul apabila ada kasus yang
memiliki 2 atau lebih alternatif penyelesaian.
Misalkan dalam kehidupan sekali-kali, untuk kasus menyalakan
komputer. Langkah-langkah cara menyalakan komputer sebenarnya sangat mudah,
namun pada prosesnya bisa terjadi 2 atau lebih alternatif penyelesaian.
Contoh:
langkah 1: colokan kabel listrik,
langkah 2: tekan tombol power pada cashing.
langkah 3: jika setelah power ditekan komputer mati, maka periksa
listrik atau periksa kabel dll, jika komputer menyala, lanjutkan ke langkah
berikutnya.
….
….
Langkah 3 di atas merupakan salah satu bentuk pemilihan atau
selection, bahwa pada saat proses menyalakan komputer bisa kemungkinan terjadi
2 kondisi, komputer tatap mati atau hidup, dimana kedua kondisi tersebut akan
memiliki alternatif penyelesaian yang berbeda.
Di dalam struktur algoritma pemilihan atau selection tersebut akan
kerap sekali ditemukan, sehingga struktur algoritma tidak lepas dari pemilihan/
selection. pemilihan atau selection dipelajari di bab algoritma Selection
/ Flow Control).
3. Pengulangan (Repitition)
Struktur dasar algoritma yang ketiga adalah pengulangan atau
repitition, artinya kasus-kasus pemecahan masalah dalam algoritma maupun bahasa
pemrograman pada kenyataannya tidak akan lepas dari kasus-kasus yang
membutuhkan pengulangan.
Di algoritma sendiri untuk mengatasi kasus pengulangan data,
memiliki intruksi tersendiri, dengan intruksi tersebut pengulangan akan lebih
mudah ditulis secara singkat dan praktis daripada harus di tulis satu-persatu.
Contoh:
Da kasus di algoritma yang membuat sebuah data harus diulang
beberapa kali, misal untuk kasus mencetak angka 1 sampai 5.
Penyelesaian pengulangan sebenarnya sangat mudah, bisa saja kita tulis
satu persatu misal;
langkah 1: tulis angka 1
langkah 2: tulis angka 2
langkah 3: tulis angka 3
…
…
langkah 5: tulis angka 5.
Membuat
intruksi pengulangan dengan menuliskannya satu persatu tentunya bukanlah cara
praktis, jika hanya 5 baris mungkin saja bisa dibuat secara manual, ditulis
satu-satu, namun bagaimana jika yang harus diulang sebanyak 1.000 (seribu baris
misalnya), saya yakin anda akan kerepotan menuliskannya.
Oleh
karena itu karena kerap sekali pengulangan ditemukan di kasus-kasus pemecahan
masalah terkomputerisasi, maka di algoritma dikenal struktur pengulangan yang
akan lebih memudahkan dan mempercepat penulisan proses pengulangan secara
praktis dan cepat. (pengulangan ini biasanya dipelajari di materi algoritma Looping/
pengulangan).
Contoh Algoritma
Berikut ini terdapat beberapa contoh algoritma, terdiri atas:
·
Menentukan Bilangan Ganjil atau Genap
Bilangan bulat yaitu 0, 1, -1, 2, dst, sedangkan bilangan asli 1,
2, 3, 4, 5, dst. Bilangan bulat dan bilangan asli sering dipakai dalam
berhitung. Himpunan bilangan bulat dalam buku teks aljabar biasanya dinyatakan
dengan lambang “Z” serta himpunan bilangan asli dinyatakan dengan lambang “N”.
Algoritma yang digunakan untuk menentukan apakah bilangan tersebut ganjil atau
genap disajikan dengan flowchart seperti dibawah ini :

Bilangan genap adalah bilangan bulat yang dapat habis jika dibagi
2 (dua). Bilangan ganjil adalah bilangan bulat yang tidak habis jika dibagi 2
(dua).
- Menghitung Keliling dan Luas
Lingkaran
Lingkaran adalah himpunan dari semua titik-titik yang ada pada
bidang dalam jarak tertentu dan disebut dengan jari-jari dari titik tertentu
yang disebut dengan titik pusat. Lingkaran adalah contoh dari kurva tertutup
sederhana, lingkaran membagi bidang menjadi dua bagian yaitu bagian luar dan
dalam. Adapaun algoritma untuk menghitung keliling dan luas lingkaran disajikan
dengan flowchart seperti dibawah ini :

·
Menampilkan Bilangan Ganjil Diantara 10 sampai 30
Bilangan ganjil yang terletak diantara 10 dan 30 adalah bilangan
11,13,15, dan seterusnya. Namun yang akan ditampilkan kecuali bilangan 21 dan
27. Sehingga output/keluaran yang diharapkan dari algoritma tersebut yaitu
bilangan ganjil antara 10 sampai 30 kecuali bilangan 21 dan 27. Algoritma yang
digunakan untuk menampilkan bilangan ganjil antara 10 hingga 30 kecuali
bilangan 21 dan 27 dapat disajikan dengan flowchart seperti dibawah ini :

·
Algoritma tahun Kabisat
Tahun kabisat adalah tahun yang mempunyai tambahan 1 hari yang
bertujuan supaya kalender dapat sinkron dengan musim tahunan serta keadaan
astronomi. Bulan Februari mempunyai 29 hari saat tahun kabisat. Adapun tahun
kabisat adalah tahun yang dapat dibagi dengan 4. Algoritma yang digunakan untuk
menentukan tahun kabisat dapat disajikan dengan flowchart dibawah ini :

·
Menampilkan Bilangan Genap Mulai Angka 2 sampai n, Kecuali
Bilangan Genap Kelipatan 4
Bilangan genap adalah bilangan bulat dapat habis dibagi 2 (dua).
Deret yang akan ditampilkan dari algoritma ini adalah deret dari bilangan genap
dari 2 sampai ke n, kecuali bilangan genap kelipatan 4. Algoritma tersebut
dapat disajikan dengan flowchart seperti dibawah ini :

Demikianlah pembahasan mengenai Contoh
Algoritma – Pengertian, Sejarah, Ciri, Fungsi, Jenis, Manfaat, Sifat &
Struktur semoga dengan adanya ulasan tersebut dapat menambah wawasan
dan pengetahuan kalian semua, terima kasih banyak atas kunjungannya.
ARTIKEL INI SAYA KOPAS DARI
WEB : ]
https://www.dosenpendidikan.co.id/contoh-algoritma/
|