Komputer

Algoritma: Pengertian, Langkah, dan Strukturnya

Algoritma – Tidak asing lagi bagi kalian mahasiswa ilmu komputer maupun jurusan lain yang sering mendengar istilah coding, bagi orang awam ini sedikit tabu sebab hanya mengetikkan sebuah perintah mesin dapat berjalan sesuai keinginan kita.

Tetapi pernahkah kalian berfikir jika tidak ada sebuah pemrograman maka apa yang akan terjadi?

Simple saja maka perusahaan seperti sosial media (facebook, twitter, instagram dll), e-commerce (BukaLapak, Shopee dll) tidak akan pernah hadir menyertai kalian.

Tujuan awalnya adalah membantu manusia untuk memudahkan segala aktivitas, tetapi seiring berjalannya zaman pemrograman diubah menjadi peluang dalam menciptakan startup-startup baru yang memudahkan pengguna dalam menjalankan aktivitasnya maupun sebagai sarana hiburan.

Peluang yang sangat cerah ke depan membuat orang banyak tertarik dengan mempelajari bahasa pemrograman.

Bisa dianalogikan dalam membuat sebuah program layaknya membuat rumah dari nol, membutuhkan material berupa semen, pasir dll seperti halnya pemrograman terdapat aplikasi yang menyuguhkan beberapa tools yang mendukung untuk membuat nya.

Dengan material yang sama tentu dapat diubah sesuai kekreatifan para pemakai.

Lalu sebenarnya apa definisi algoritma?

Apa Itu Algoritma?

Algoritma adalah deretan perintah atau instruksi yang jelas untuk memecahkan suatu masalah, misalnya untuk mendapatkan keluaran atau output yang diinginkan dari suatu masukan pada jumlah waktu yang sudah ditentukan sebelumnya.

Algoritma yang ditulis menggunakan bahasa komputer biasanya disebut dengan algoritma pemrograman. bahasa komputer yang digunakan untuk menulis suatu program disebut dengan bahasa pemrograman.

Sementara orang yang membuat program disebut programmer, sementara kegiatan menulis dan merancang program atau aktivitasnya disebut dengan coding.

Apa Itu Algoritma

Pertimbangan Dalam Algoritma

Algoritma disusun secara sistematis dan logis, dimana setiap langkah dalam algoritma harus mempunyai nilai salah atau benar

Pada konteks tertentu, algoritma menjadi suatu urutan langkah untuk melakukan pekerjaan khusus.

Pertimbangan dalam pengambilan algoritma juga menjadi hal yang penting supaya output yang dihasilkan baik.

1. Benar Tidaknya Algoritma

Pertimbangan algoritma yang pertama adalah benar tidaknya algoritma tersebut, hal ini memiliki arti yaitu apakah algoritma nanti bisa memberikan output yang diinginkan atau tidak.

Oleh sebab itu langkah awal kita harus memastikan kebenaran dari algoritma tersebut apakah sudah pasti bisa menghasilkan output yang diinginkan atau tidak.

2. Perkiraan pencapaian Algoritma

Berikutnya pada pertimbangan algoritma adalah perkiraan terkait pencapaian algoritma. Seperti definisi algoritma secara umum dimana, algoritma adalah langkah yang mempunyai pencapaian baik.

Kita harus tahu seberapa baik hasil yang didapatkan dari algoritma tersebut, jika sudah bisa mencapai tujuan baru algoritma tersebut bisa dikatakan baik.

3. Efisiensi Algoritma

Pertimbangan terakhir dalam membuat algoritma adalah kita harus mengetahui tingkat efisiensi dari algoritma tersebut.

Tingkat efisiensi algoritma bisa dilihat dari efisiensi waktu dan memori. Walaupun algoritma bisa memberikan hasil keluaran yang mendekati kebenaran namun jika harus membutuhkan waktu lama maka algoritma tersebut tidak bisa dikatakan efisien. Untuk itu buatlah algoritma yang bisa mendapatkan kebenaran sekaligus efisien dalam hal memori dan waktu.

Sejarah Singkat Algoritma

sejarah algoritma
Pertama kali ditemukan oleh seorang ilmuwan dari timur tengah di zaman peradaban islam bernama Abu Jafar Muhammad Ibnu Musa Al-Khawarizmi sekitar 780 masehi. Pada awalnya algoritma merujuk kepada aturan-aturan aritmatika untuk menyelesaikan persoalan dengan menggunakan bilangan numerik arab, lalu seiring berkembangnya zaman disebut sebagai algoritma.

Persoalan selanjutnya adalah cara menuangkan konsep tersebut ke bahasa komputer maka terdefinisi lah kata-kata algoritma dengan artian langkah proses sebelum menulis di kertas, sebab dulu masih menggunakan kertas yang di scan.

Jadi kesimpulannya algoritma adalah suatu aturan dan urutan agar nantinya bahasa pemrograman dapat berjalan secara terkomputasi, sebelum mempelajari pemrograman alangkah baiknya kalian mempelajari algoritma.

Karena algoritma berdasarkan logika maka yang diajarkan untuk menguatkan logika adalah mempelajari persoalan secara matematis. Jika kalian sudah paham dengan algoritma maka memakai bahasa pemrograman apapun kalian dapat memahaminya.

Langkah Algoritma Pemrograman

Langkah Algoritma Pemrograman

Masih berhubungan dengan algoritma, untuk membuat sebuah program dibutuhkan algoritma + bahasa pemrograman, tips sederhana carilah referensi software yang menurut kalian cocok atau tipe yang kalian anggap cocok seperti pemrograman artificial intelligence, pemrograman berbasis web dll.

Langkah umumnya agar tidak bingung saat troubleshooting jika terdapat error pada pemrograman maka dari itu terdapat beberapa langkah yang harus dilakukan :

  • Definisi Masalah
  • Requirement yang akan dipakai
  • Buat algoritma dengan struktur yang urut agar mudah diingat dan cara penyelesaiannya
  • Tulis pemrograman sesuai algoritma yang kalian susun agar dapat mudah jika menemukan masalah
  • Selalu testing lalu verifikasi program
  • Implementasikan pemrograman kalian
  • Dokumentasikan program kalian
  • Jika dalam skala besar selalu maintenance secara berkala

Pemrograman kalian dapat dikombinasikan ke dalam bahasa pemrograman seperti (C, C++, Java, Python, PHP, Dsb) tentunya sesuai kebutuhan yang kalian pakai, karena dalam pemrograman kalian bisa uji coba dengan referensi algoritma yang masuk akal.

Struktur Algoritma

Struktur Algoritma

Struktur algoritma adalah urutan mengenai bagaimana pemrosesan instruksi pada algoritma bisa dilakukan dan juga tentang bagaimana struktur instruksi algoritma tersebut terbangun.

Berikut adalah beberapa struktur dasar algoritma.

a) Runtunan

Struktur algoritma yang pertama adalah runtunan atau sequence. Struktur algoritma runtunan disini maksudnya adalah bahwa intruksi-intruksi yang ada pada algoritma diproses secara berurutan mulai dari langkah awal hingga langkah yang terakhir, tidak ada pengulangan atau percabangan.

Anda harus ingat jika runtunan ini juga berlaku pada bahasa pemrograman, saat instruksi bahasa pemrograman yang sudah kita tulis diproses komputer, maka komputer akan langsung menerjemahkan bahasa pemrograman dan memproses bahasa tersebut secara berurutan mulai dari awal sampai akhir dimulai dari intruksi di baris pertama sampai instruksi di baris terakhir.

Dengan menggunakan struktur algoritma runtunan ini, komputer bisa menentukan bagaimana instruksi harus ditulis, komputer juga jadi tahu mana yang harus didahulukan dan mana yang harus diakhirkan.

b) Pemilihan

Struktur algoritma berikutnya adalah pemilihan. pada umumnya instruksi algoritma paling tidak harus mengandung selection atau pemilihan. Instruksi pemilihan ini akan muncul jika ada kasus yang mempunyai 2 atau lebih keputusan alternatif dalam menyelesaikan algoritma tersebut.

Misalnya saja dalam kehidupan kita sehari-hari untuk algoritma menyalakan komputer tentu saja langkah menyalakan komputer ini sebenarnya sangat mudah, namun dalam langkah-langkahnya dapat memiliki 2 atau lebih pilihan alternatif dalam menyelesaikannya.

Contoh struktur algoritma yang mengandung pemilihan :

Langkah 1 : Tancapkan kabel listrik,

Langkah 2 : Anda tekan tombol power pada casing.

Langkah 3 : Jika sesudah tombol power ditekan komputer masih mati, maka periksa terlebih dahulu listrik atau kabel. Jika komputer menyala lanjutkan pada langkah berikutnya.

dari ketiga langkah di atas manakah yang menunjukan pemilihan? tentu saja pada langkah ketiga dimana kita harus mengecek apakah komputer sudah menyala atau tidak. Jika komputer tidak menyala kita memiliki 2 pilihan yaitu mengecek listrik dan yang kedua adalah memeriksa kabel komputer.

c) Pengulangan

Struktur algoritma yang terakhir adalah pengulangan. Maksudnya pengulangan disini adalah kasus pemecahan masalah pada algoritma atau bahasa pemrograman memerlukan kasus perulangan untuk menyelesaikan masalah yang sudah ditentukan pada awal pembuatan algoritma tersebut.

Pada algoritma sendiri yang mengatasi kasus pengulangan mempunyai instruksi tersendiri. Dengan adanya instruksi tersebut pengulangan bisa menjadi lebih mudah ditulis singkat dibandingkan harus menulis satu persatu.

Contoh :

Langkah 1 : Tulis huruf A

Langkah 2 : Tulis huruf B

Langkah 3 : Tulis huruf C

….

….

Langkah 5 : Tulis huruf E

Untuk membuat instruksi pengulangan kita bisa menulisnya satu persatu, namun tentu saja akan membutuhkan waktu yang lama kan? untuk itu dibutuhkan struktur algoritma pengulangan yang bisa menghasilkan output sama namun dengan cara yang lebih singkat.

Ciri-ciri Algoritma

Ciri-ciri Algoritma

Algoritma juga memiliki ciri khas tersendiri yang membedakan dengan teknik penyelesaian masalah lainnya.

Untuk anda yang ingin tahu ciri-ciri algoritma, berikut adalah beberapa ciri-ciri yang dimiliki oleh algoritma:

  • Jika algoritma sedang melakukan suatu pekerjaan suatu langkah yang memiliki sifat terbatas maka algoritma tersebut harus menghentikan apa yang sedang ia kerjakan.
  • Memiliki nilai 0 atau lebih.
  • Harus memiliki sifat efektif, dalam artian algoritma harus sederhana supaya nantinya dapat langsung dikerjakan dalam waktu yang singkat.
  • Beberapa langkah yang disusun harus bisa diartikan dengan tepat dan tidak harus menimbulkan ambitu.
  • Memiliki kelebihan dan juga kekurangan.
  • Memiliki awalan dan akhiran.

algoritma pemrograman

 

Syarat dan Sifat Algoritma

Setelah anda memahami mengenai apa itu algoritma, ciri-ciri algoritma dan definisi algoritma. Selanjutnya kita akan membahas tentang syarat dan sifat dari algoritma tersebut.

Suatu algoritma bisa dikatakan baik jika memenuhi beberapa syarat-syarat dan sifat algoritma dibawah ini:

a) Definiteness

Maksudnya definiteness disini adalah setiap langkah yang ada pada algoritma harus bisa didefinisikan dengan tepat. Jangan sampai anda menggunakan makna ganda yang bisa menimbulkan ambiguitas.

Oleh sebab itu langkah yang benar saat kita menulis suatu algoritma kita harus menulisnya dengan bahasa komputer.

b) Finiteness

Maksud finiteness dalam algoritma adalah algoritma harus benar-benar selesai saat sudah menjalankan semua langkah proses dalam algoritma tersebut.

c) Input

Maksudnya input dalam algoritma adalah algoritma harus memiliki nilai atau data masukan yang nantinya akan diolah lagi.

d) Output

Selain input tentu saja algoritma juga harus memiliki output atau keluaran. Output adalah hasil akhir dari proses input atau data masukan yang sudah diolah tersebut.

e) Effectiveness

Setiap langkah yang diambil pada algoritma harus wajar dan harus sebisa mungkin bisa dijalankan secara efektif.

Jenis-Jenis Algoritma

Jenis-Jenis Algoritma
Terakhir kita akan mengetahui jenis-jenis dari algoritma. Untuk anda yang penasaran tentang apa saja jenis-jenis algoritma, berikut adalah beberapa jenis-jenis algoritma.

a) Algoritma Bahasa Natural

Algoritma bahasa natural merupakan jenis algoritma dimana dalam penulisan langkah-langkah ditulis menggunakan bahasa yang paling mudah dipahami seperti bahasa Indonesia atau bahasa Inggris, atau bahasa lainnya yang paling mudah dipahami.

Jenis algoritma bahasa natural ini adalah pendekatan awal bagi anda yang ingin memahami algoritma yang pertama ini biasanya juga dapat dipecahkan menggunakan penyelesaian yang tidak harus terkomputerisasi.

Algoritma bahasa natural ini hampir bisa menyelesaikan berbagai kasus yang ada dalam kehidupan sehari-hari. Misalnya adalah kasus matematika dan juga perhitungan dari kasus yang dapat dipecahkan memakai algoritma bahasa natural.

b) Algoritma Flowchart

Jenis algoritma yang berikutnya adalah algoritma flowchart. Algoritma flowchart adalah algoritma yang disajikan menggunakan bentuk gambar atau simbol yang bisa dibaca dan juga dipahami secara logis.

Untuk bisa menyajikan pemecahan masalah pada bentuk algoritma flowchart maka kita harus memahami dulu simbol-simbol dari flowchart beserta kegunaan dari simbol-simbol tersebut.

c) Algoritma Pseudocode

Terakhir ada algoritma pseudocode yang jika didefinisikan secara sederhana algoritma pseudocode merupakan bentuk penulisan langkah-langkah dalam menyelesaikan masalah.

Langkah-langkah penyelesaian masalah ini menggunakan pendekatan pada instruksi bahasa pemrograman, tujuan dari algoritma pseudocode ini adalah agar bisa lebih mudah dipahami saat instruksi tersebut dikonversi atau ditulis menggunakan bahasa pemrograman yang sebenarnya.

Penulisan algoritma pseudocode ini sebenarnya juga tidak mengenal aturan syntax atau cara penulisan kode khusus, namun instruksi atau syntax yang ditulis biasanya akan disesuaikan dengan bahasa pemrograman yang nanti akan digunakan.

Anton Wahyu

Anton adalah seorang penulis blog yang berasal dari Solo, Indonesia. Ia merupakan lulusan jurusan teknik informatika dari Universitas AMIKOM, telah menyukai dunia tulis sejak masih duduk di bangku sekolah menengah atas. Ia pernah menulis selama 3 tahun di perusahaan teknologi dan juga copywriting untuk berbagai project freelance untuk berbagai produk. Kini, Anton fokus pada penulisan konten SEO dengan gaya penulisan yang nyaman dibaca. Ia memiliki spesialisasi topik tentang dunia teknologi, seperti gadget, handphone, tutorial hingga tips dan saat ini aktif sebagai bekerja sebagai salah satu team penulis di salah satu website niche teknologi dan informasi.

Artikel Lainnya

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button