Struktur penulisan algoritma terdiri dari tiga bagian yaitu

Jakarta -

Pernahkah kamu mendengar tentang algoritma? Mungkin terdengar asing untukmu, tetapi algoritma merupakan fondasi penting untuk menyelesaikan masalah dengan sistem komputer, lho.

Secara sederhana, algoritma adalah susunan langkah penyelesaian atau metode untuk menyelesaikan suatu masalah secara sistematis dan logis.

Untuk bisa mengenalinya, algoritma memiliki ciri-ciri sebagai berikut:

1. Memiliki masukan atau input,2. Memiliki keluaran atau output,3. Menjabarkan langkah yang pasti, jelas, dan tidak ambigu,4. Langkah yang digunakan sederhana,

5. Memiliki batasan waktu.

Simak penjelasan mengenai prinsip kerja, struktur, dan cara penyajian algoritma dalam pemrograman computer yang dikutip dari buku Algoritma dan Pemrograman karya Lamhot Sitorus, yuk.

Prinsip Kerja Algoritma

Pada dasarnya, algoritma merupakan deskripsi proses untuk mengerjakan sesuatu yang disusun dalam sederet aksi. Secara sederhana, prinsip kerja algoritma terbagi menjadi, masukan (input), proses, dan keluaran (output).

Dalam kehidupan sehari-hari, prinsip kerja algoritma dapat dipahami ketika kita ingin membuat telur dadar. Sebelum membuat algoritma, hal yang perlu kita lakukan adalah mendefinisikan masukan (input) dan keluaran (output).

Berdasarkan contoh di atas, maka yang menjadi masukan adalah telur mentah dan yang menjadi keluaran adalah telur dadar matang. Dengan demikian, susunan algoritmanya menjadi sebagai berikut:

1. Nyalakan api kompor,2. Tuangkan minyak ke dalam wajan,3. Pecahkan telur ayam ke dalam mangkuk,4. Tuangkan garam secukupnya,5. Kocok campuran telur dan garam,6. Tuang adonan telur ke dalam wajan,

7. Masak telur hingga matang.

Struktur Dasar Algoritma

Secara umum, struktur dasar algoritma terdiri dari sekuensial (sequential), test kondisi atau percabangan (branching), dan perulangan (looping).

1. Algoritma Sekuensial

Algoritma sekuensial adalah langkah-langkah yang dilakukan secara berurutan sesuai dengan urutan penulisannya. Struktur ini merupakan struktur yang paling sering dilakukan.

Contoh:
Algoritma memiliki empat baris aksi, yaitu t1, t2, t3, dan t4, maka semua aksi akan dilakukan secara berurutan mulai dari aksi t1 sampai t4.

2. Algoritma Percabangan (Branching)

Dalam kehidupan sehari-hari ada kalanya suatu kegiatan akan dilakukan dan tidak dilakukan tergantung situasi tertentu. Begitu pun dengan algoritma, ada kalanya satu atau beberapa aksi akan dikerjakan dan tidak dikerjakan tergantung situasi tertentu.

Nah, struktur algoritma percabangan ini digunakan untuk mengerjakan satu aksi dari beberapa pilihan yang diberikan.

3. Algoritma Perulangan (Looping)

Sama halnya dengan manusia, algoritma juga mengenal kegiatan pengulangan, yakni melakukan satu atau beberapa kegiatan secara berulang-ulang. Namun, berbeda dengan manusia, komputer tidak mengenal istilah lelah atau bosan dalam melakukan kegiatan yang sama secara berulang.

Dengan demikian, struktur perulangan atau looping digunakan untuk menjalankan kegiatan yang dilakukan berulang-ulang.

Cara Penyajian Algoritma

Penyajian algoritma akan lebih baik jika ditulis secara sistematis. Ada tiga cara yang bisa kamu gunakan untuk menyajikan algoritma, yakni secara naratif, flowchart atau diagram/bagan alir, dan pseudocode.

1. Naratif

Penyajian algoritma secara naratif dituliskan dengan menggunakan cerita seperti dalam bahasa sehari-hari.

Contoh: Menghitung luas segitiga menggunakan naratifLangkah-1 : MulaiLangkah-2 : Baca nilai AlasLangkah-3 : Baca nilai TinggiLangkah-4 : Hitung Luas = (Alas x Tinggi) / 2Langkah-5 : Cetak Hasil Luas

Langkah-6 : Selesai

2. Flowchart

Dengan flowchart, cara penyajian algoritma dibuat dalam urutan simbol-simbol khusus. Urutan simbol digambarkan sesuai dengan arah tanda panah.
Contoh:

Struktur penulisan algoritma terdiri dari tiga bagian yaitu
Contoh flowchart Foto: Ist

Sumber gambar: Algoritma dan Pemrograman (Sitorus, 2015)

3. Pseudocode

Langkah-langkah penyelesaian masalah ini ditulis dengan cara yang mirip atau menyerupai program. Pseudocode tidak spesifik terhadap salah satu bahasa pemrograman sehingga algoritma ini dapat diterjemahkan menyesuaikan bahasa pemrograman yang ada dalam suatu program.

Contoh: Menghitung luas segitiga menggunakan pseudocode

Input (Alas)Input (Tinggi)Luas ← (Alas x Tinggi) / 2

Output (Luas)

Meskipun ada tiga cara penyajian yang berbeda, hasil algoritma yang diberikan tetap sama. Maka dari itu, tidak ada aturan yang menyatakan harus menggunakan penyajian tertentu. Kamu bebas memilih bentuk penyajian sesuai keinginan dan pemahaman.

Meski begitu, algoritma yang dibuat dengan kalimat memiliki kelemahan, yaitu hanya bisa dimengerti oleh praktisi yang mengerti bahasanya.

Simak Video "Sistem Transportasi di New York Dihack, Negara-negara Ini Dicurigai"


[Gambas:Video 20detik]
(pal/pal)

KOMPAS.com - Pada pagi hari apa yang kamu lakukan sebelum berangkan ke suatu tempat? Pertama kali kamu akan bangun, berjalan ke kamar mandi, menganggalkan pakaian, mandi, menggunakan pakaian kembali, sarapan, lalu pergi.

Hal tersebut adalah urutan lengkap sebelum pergi, karena tidak mungkin kita mandi dulu padahal belum bangun tidur ataupun mandi tanpa menganggalkan pakaian terlebih dulu. Urutan tersebut adalah algoritma rutinitas pagi.

Definisi algoritma dalam program komputer adalah daftar langkah atau instruksi untuk menyelesaikan masalah atau pekerjaan tertentu. Dengan adanya algoritma, akan lebih mudah untuk membuat program computer yang rumit sekalipun.

Ciri-ciri algoritma, yaitu: 

  • Ada input atau masukan
  • Ada output atau keluaran
  • Langkahnya pasti, jelas, dan tidak ambigu
  • Langkahnya sederhana
  • Ada batasan waktu (stoping role)

Baca juga: Sistem Operasi Komputer: Pengertian, Fungsi, Jenis, Cara Kerja, dan Contohnya

Jenis algoritma

Algoritma memiliki beberapa jenis, sebagai berikut: 

  • Algoritma Divide and Conquer

Algoritma divide and conquer adalah algoritma pemecahan suatu masalah dengan membaginya ke dalam dua masalah yang lebih kecil.

Pertama-tama masalah dibagi menjadi dua sub masalah, lalu masing-masing sub masalah tersebut diselesaikan. Setelah kedua submasalah terselesaikan, solusinya digabungkan kembali menjadi satu.

Algoritma divide and conquer sangat sering digunakan karena dinilai stabil dan sederhana.

Struktur penulisan algoritma terdiri dari tiga bagian yaitu
khanacademy.org Contoh algoritma divide and conquer yang kompleks

Dilansir dari Analytic Step, algoritma rekursif memecah masalah menajadi submasalah dan memanggil dirinya sendiri berulang-ulang sampai masalah terurai atau sebuah kondisi dasar yang ditentukan terpenuhi.

Baca juga: Jaringan Komputer: Pengertian dan Manfaatnya

  • Algoritma Pemrograman Dinamis

Algoritma pemrograman dinamis adalah perwujudan dari kalimat “melihat masa lalu dan membenarkan masa depan”.

Algoritma pemrograman dinamis memecahkan submasalah dengan hasil pemecahan submasalah sebelumnya.

Karena hasil pemecahan submasalah sebelumnya bisa apa saja, inilah mengapa algoritma ini disebut dinamis atau tidak tetap.

Algoritma greedy atau algoritma serakah adalah algoritma yang menyelesaikan masalah dalam submasalah dengan mencari solusi yang paling jelas secara global.

Algoritma greedy tidak mempertimbangkan hasil sebelumnya maupun konsekuensi kedepannya dan hanya memiliki hasil terbaik, sehingga disebut serakah.

Algoritma brute force adalah algoritma paling mendasar dengan mencoba semua peluang sampai hasil yang diinginkan tercapai. Algoritma brute force adalah algoritma logis yang mempertimbangkan banyak opsi dengan optimal namun waktu pemecahannya tergolong lama.

Baca juga: Hal-hal yang Perlu Diperhatikan dalam Penggunaan Komputer

Algoritma backtracking atau algoritma mundur adalah algoritma yang menyelesaikan masalah secara rekursif atau memanggil dirinya sendiri berulang-ulang.

Bedanya, saat suatu opsi tidak memecahkan masalah, algoritma akan menghapus opsi tersebut dan mundur ke belakang untuk mengulang pencarian solusi kembali.

Algoritma memiliki tiga struktur dasar yaitu sequence, selection, dan repetition. Sequence atau urutan adalah struktur yang menadung runtutan langkah-langkah algoritma dari awal hingga akhir secara berurutan.

Selection adalah proses seleksi atau pemilihan solusi masalah yang paling tepat. Sedangkan repetition atau pengulangan struktur algoritma yang memungkinkan suatu fungsi untuk diulang atau digunakan berulang kali hingga didapat kondisi atau solusi yang diinginkan.

Contoh algoritma

Dapatkan update berita pilihan dan breaking news setiap hari dari Kompas.com. Mari bergabung di Grup Telegram "Kompas.com News Update", caranya klik link https://t.me/kompascomupdate, kemudian join. Anda harus install aplikasi Telegram terlebih dulu di ponsel.