Algoritma (Pengertian,struktur, jenis, istilah dan contoh algoritma bahasa natural, flow chart dan pseudocode)

Di postingan kali ini saya akan menjelaskan mengenai hal-hal yg berkaitan dgn algoritma, dr mulai pengertian algoritma, struktur algoritma, jenis, perumpamaan & contoh algoritma dlm bahasa natural, flow chart maupun pseudocode.

Saya menyuguhkan artikel ini karena kebetulan saya mengajar mata pelajaran bahasa pemrograman dasar di smk jurusan TKJ & MM kelas X kurikulum 2013. selain sebagai materi asuh, apa yg disuguhkan di artikel ini mudah-mudahan berguna untuk anda guru maupun siswa yg kebetulan ingin mengerti ihwal algoritma.
Algoritma benar-benar mesti dipelajari dgn tujuan untuk mengetahui instruksi logika bahasa pemrograman, dikala ini ada banyak sekali bahasa pemrograman mirip Java, Pascal, visual basic, C++ & bahasa pemrograman yang lain.
Instruksi bahasa pemrograman untuk pemula akan sulit sekali dipahami, salah satu pendekatan untuk mengetahui kode logika bahasa pemrograman tersebut yakni dgn mempelajari algoritma.
Dengan belajar algoritma, maka otak kita akan dilatih untuk memahami cara berfikir logika instruksi bahasa pemrograman, sehingga jika algoritma sudah dipahami dgn benar maka anda tak akan kesusahan mengetahui bahasa pemrograman, apapun bahasa pemrogramannya.
Jadi untuk anda yg ingin bisa menciptakan aplikasi komputer seperti ingin membuat game, atau aplikasi komputer yang lain, maka anda mesti menguasai bahasa pemrograman, & untuk menguasai bahasa pemrograman apapun nama bahasa pemrogramannya, maka yg mesti anda pelajari yakni Algoritma.

Pengertian Algoritma?

Jika anda kebetulan gres pertama kali mendengar perumpamaan algoritma, anda mungkin akan mengajukan pertanyaan, sesungguhnya apa itu algoritma? baiklah akan saya jelaskan.
Algoritma ialah urutan langkah-langkah penyelesaian problem dengan-cara sistematis & logis, tindakan penyelesaian problem untuk masalah yg dapat diproses dengan-cara terkomputerisasi, sedangkan menurut wikipedia algoritma yaitu mekanisme langkah-demi-langkah untuk penghitungan. Algoritma digunakan untuk penghitungan, pemrosesan data, & akal sehat otomatis.
Kenapa harus berguru algoritma?, Jika anda ingin menguasai bahasa pemrograman, apapun bahasa pemrogramannya, baik itu pascal, java, android, visual basic maka salah satu yg harus dipelajari sebelum menggeluti ke dunia bahasa pemrograman yakni algoritma, dgn mempelajari algoritma maka anda akan dilatih cara berfikir sorang programmer tatkala memecahkan problem terkomputerisasi.
Walaupun perkara-perkara algoritma pada akhirnya akan mengerucut ke masalah-kasus yg mampu dipecahkan dengan-cara terkomputerisasi, tetapi selaku pendekatan untuk mengetahui algoritma, kasus-perkara yg dipelajari akan bermulai dr kasus-kasus dlm kehidupan sehari-hari walaupun perkara tersebut bahu-membahu tak bisa dipecahkan dgn komputer.

Struktur Dasar Algoritma

Struktut algoritma ialah urutan bagaimana pemrosesan aba-aba dlm algoritma dijalankan & pula bagaimana struktur isyarat algoritma tersebut dibagun.
Struktur dasar algoritma dibagi menjadi 3 bagian selaku berikut:
1. Runtunan (Sequence)
Sequence atau runtunan dlm struktur algoritma ialah bahwa isyarat-insturksi dlm algoritma diproses dengan-cara beruntun langkah demi langkah dr awal sampai selesai dimulai dr langkah awal hingga langkah terakhir.
Harus senantiasa dikenang, bahwa Runtunan ini pula berlaku di dlm bahsa pemrograman, tatkala isyarat bahasa pemrograman yg kita tulis di proses oleh komputer, maka komputer akan memproses & menterjemahkan bahasa pemrograman tersebut dengan-cara beruntun dr awal hingga final dimulai dr aba-aba pada baris pertama hingga baris terakhir.
Dengan struktur runtunan ini, akan menentukan bagaimana insturksi harus ditulis, intruksi mana yg harus didahulukan & intruksi mana yg harus diakhirkan.
b. Pemilihan (Selection)
Pada umumnya aba-aba algoritma setidaknya akan mengandung penyeleksian, atau selection, isyarat ini akan timbul apabila ada kasus yg mempunyai 2 atau lebih alternatif penyelesaian.
Misalkan dlm kehidupan sekali-kali, untuk perkara menyalakan komputer. Langkah-langkah cara menyalakan komputer bahwasanya sangat gampang, tetapi pada prosesnya bisa terjadi 2 atau lebih alternatif solusi.
Contoh:
langkah 1: colokan kabel listrik,
langkah 2: tekan tombol power pada cashing.
langkah 3: bila sehabis power ditekan komputer mati, maka periksa listrik atau periksa kabel dll, bila komputer menyala, teruskan ke langkah berikutnya.
….
….
Langkah 3 di atas merupakan salah satu bentuk pemilihan atau selection, bahwa pada ketika proses menyalakan komputer mampu kemungkinan terjadi 2 keadaan, komputer tatap mati atau hidup, dimana kedua keadaan tersebut akan memiliki alternatif solusi yg berlawanan.
Di dlm struktur algoritma penyeleksian atau selection tersebut akan kerap sekali didapatkan, sehingga struktur algoritma tak lepas dr pemilihan/ selection. penyeleksian atau selection dipelajari di bagian algoritma Selection / Flow Control).
3. Pengulangan (Repitition)
Struktur dasar algoritma yg ketiga adalah pengulangan atau repitition, artinya perkara-masalah pemecahan problem dlm algoritma maupun bahasa pemrograman pada kenyataannya tak akan lepas dr masalah-perkara yg membutuhkan pengulangan.
Di algoritma sendiri untuk mengatasi masalah pengulangan data, memiliki intruksi tersendiri, dgn intruksi tersebut pengulangan akan lebih gampang ditulis dengan-cara singkat & praktis daripada harus di tulis satu-persatu.
Contoh:
Da perkara di algoritma yg menciptakan sebuah data harus diulang berulang kali, misal untuk kasus mencetak angka 1 sampai 5.
Penyelesaian pengulangan bantu-membantu sungguh gampang, 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 dgn menuliskannya satu persatu tentunya bukanlah cara mudah, jika cuma 5 baris mungkin saja bisa dibentuk dengan-cara manual, ditulis satu-satu, tetapi bagaimana kalau yg mesti diulang sebanyak 1.000 (seribu baris contohnya), saya percaya anda akan kewalahan menuliskannya.
Oleh karena itu alasannya adalah kerap sekali pengulangan ditemukan di perkara-perkara pemecahan duduk perkara terkomputerisasi, maka di algoritma dikenal struktur pengulangan yg akan lebih mempermudah & mempercepat penulisan proses pengulangan dengan-cara praktis & cepat. (pengulangan ini biasanya dipelajari di materi algoritma Looping/ pengulangan).

Jenis-jenis bentuk Algoritma

Sebagai pendekatan untuk memahami intruksi bahasa pemrograman, maka algoritma mengenal 3 bentuk yaitu:
1. Algoritma Bahasa Natural
2. Algoritma Flow chart
3. Algoritma Pseudocode

1. Algoritma Bahasa Natural

Algoritma bahasa natural ialah jenis algoritma dimana penulisan tindakan intruksi menggunakan bahasa yg paling dipahami (bahasa inggris, bahasa indonesia) atau bahasa apapun yg paling dipahami.
Algoritma jenis ini merupakan pendekatan awal untuk memahami algoritma, masalah-perkara atau permasalahan yg bisa dipakai untuk dapat dipecahkan memakai algoritma bahasa natural tak mesti kasus-perkara yg dapat diatasi dengan-cara terkomputerisasi.
Algoritma bahasa natural hampir mampu menyelesaikan banyak sekali masalah, perkara-masalah dlm kehidupan sehari-hari, kasus matematika & perkiraan & perkara apapun mampu dipecahkan dgn memakai algoritma bahasa natural.
Untuk lebih mengetahui algoritma bahasa natural, anda bisa baca: Contoh algoritma bahasa natural dlm kehidupan sehari-hari

2. Algoritma Flow Chart

Algoritma flow chart merupakan salah satu bentuk penyajian algoritma yg memakai bentuk gambar & simbol yg dapat dibaca & dipahami dengan-cara logis.
Untuk dapat menghidangkan pemecahan problem dlm bentuk algoritma flowchart maka anda dituntut harus mengetahui apalagi dahulu simbol-simbol flow chart yg digunakan. mirip yg terlihat pada gambar di bawah ini:
Untuk lebih mengetahui bagaimana pemecahan persoalan memakai algoritma flowchart anda bisa baca :
  # Fungsi dalam algoritama : (Definisi, deklarasi, parameter, nilai balik, rekursif dan contoh fungsi)

3. Algoritma Pseudocode

Penyajian algoritma yg ke tiga yaitu algoritma pesudocode, apa itu algoritma pseudocode ?
Secara sederhana algoritma pseudocode yaitu penulisan tindakan penyelesaian masalah menggunakan  pendekatan isyarat bahasa pemrograman, dgn tujuan biar lebih gampang dipahami tatkala instruksi tersebut ditulis atau dikonversi kedalam bahasa pemrograman sebetulnya.
Penulisan algoritma pseudocode bergotong-royong tak mengenal hukum syntax (cara penulisan intruksi/kode) khusus, tetapi syntax atau aba-aba yg digunakan biasanya disesuaikan dgn bahasa pemorgraman yg nanti akan digunakan.
Seperti misalnya bila algoritma nanti akan dikonvesi ke bahasa pemrograman pascal, maka aba-aba algoritma pseudocode akan menggunakan syntax yg nyaris menyerupai dgn kode bahasa pemrograman pascal, begitu juga tatkala bahasa pemrograman yg akan dipakai menggunakan bahasa C, maka isyarat algoritma peudocode akan memakai pendekatan bahasa C, begitu juga untuk bahasa pemrograman yang lain.
Aturan penulisan algoritma pseudocode
Berikut yakni aturan penulisan algoritma pseudocode dgn pendekatan bahasa pemrograman pascal:
1. Struktur Algoritma pseudocode
Tatkala membuat algoritma pseudocode memakai pendekatan bahasa pemrograman pascal maka langkah-langkah penulisannya dibagi menjadi 3 penggalan sebagai berikut:
a. Bagian Judul
Judul harus dimulai dgn kata ALGORITMA disertai dgn nama judul.
Aturan penulisan nama judul:
Tidak boleh mengandung spasi, spasi mampu diganti dgn karakter _ (underscore)
Tidak boleh diawali dgn angka
Tidak boleh memakai ungkapan-ungkapan yg sudah digunakan selaku keyword di bahasa pemrograman.
Bisa memakai huruf besar aksara kecil & kombinasinya selama tak menyalahi aturan diatas.
b. Bagian Deklarasi
Bagian deklarasi ialah cuilan dlm algoritma yg dipakai untuk mendefinisikan jenis-jenis variable yg akan digunakan dlm proses algoritma. bagian ini dimulai dgn tulisan Deklarasi:
Jika anda pemula & sulit mengerti apa itu variable, seharusnya anda membaca dulu mengenai konsep dasar algoritma yg sudah saya tulis sebeumnya.
c. Bagian Deskripsi
Bagian deskripsi yakni belahan yg berisi proses algoritma, pada serpihan ini ditulis proses penyelesaian dilema. pada kepingan ini diawali dgn goresan pena Deskripsi:
d. Komentar
Komentar sifatnya opsional boleh dicantumkana tau tidak, komentar isinya untuk memberi klarifikasi atau informasi mengenai kode didalam algoritma penulisan komentar bisa diletakan dibaris mana saja didalam struktur algoritma, namun penulisan komentar harus di dlm tanda kurung kurawal ….
acuan penulisan komentar:
Ini komentar

2. Instuksi / Syntax penulisan algoritma psedeocode

Selain mengerti belahan penulisan algoritma di atas pula mesti mengerti arahan atau syntax penulisan.
Untuk isyarat atau syntax  dlm penulisan algoritma pseudocode biasanya akan menyesuaikan dgn pendekatan bahasa pemrograman yg akan dipakai.
Seperti misalnya bila bahasa pemrograman yg akan dipakai untuk mengkonversi algoritma tersebut yaitu pascal, maka syntax algoritma pseudocode akan mengandung kode & aturan penulisan yg digunalan dlm bahasa pemrograman pascal. begitu juga tatkala memakai bahasa pemrograman yg lainnya.
Berikut beberapa syntax algoritma pseudocode bahasa pemrograman pascal yg sering dipakai untuk memahami algoritma tahap awal.
a. Penulisan variable
Penulisan variable ada dibagian deklarasi, aturan penulisannya kurang lebih seperti di bawah ini:
var1:var2,var3 : tipe_data
Untuk tipe_data, ada banyak sekali jenis nama tipe data yg bisa dipakai mirip integer, string, char, byte dll silahkan pelajari di artikel internet..
b. Masukan
untuk menulis kode masukan dr pengguna maka ditulis dgn isyarat:
read(variable_masukan)
c. Keluaran
untuk mencetak keluaran maka penulisannya yaitu sebagai berikut:
write(variable_keluaran)
d. Instruksi yang lain menyesuaikan dgn aba-aba bahasa pemrograman yg digunakan, akan diterangkan lebih lanjut sesuai dgn kasus algoritma yg ingin dipecahkan.
Contoh:
Berikut yakni acuan algoritma pseudocode dgn pendekatan bahasa pemrograman pascal untuk perkara mengkalkulasikan luas segitiga dgn ketentuan.
Luas & alas diinput oleh pengguna & hasil dr perhitungan disimpan dlm variable hasil kemudian hasilnya ditampilkan selaku output.
ALGORITMA hitung_luas_segitiga
Algorima pseudocode untuk menghitung luas segitiga
Deklarasi:
Deklarasi variable yg dipakai diproses perhitungan
hasil,alas,tinggi : Integer
Deskripsi :
Input dr pengguna disimpan divariable alas & tinggi
read(ganjal,tinggi
perhitungan luas (1/2 bantalan x tinggi ) disimpan di variable hasil
hasil <- 1/2 * alas * tinggi
Menampilkan hasil perkiraan
write(hasil)

Konsep memahami algoritma?

Untuk lebih gampang mengerti algoritma maka anda mampu mengerti konsep dasarnya terlebih dahulu, desain dasar yg banyak dijadikan pola untuk memahami algoritma yaitu pada perkara menukarkan 2 buah isi gelas.
jadi ada 2 gelas, gelas A berisi Air Susu & gelas B berisi Air Kopi. bagaimana langkahnya agar Gelas A isinya menjadi Kopi & gelas B isinya menjadi air susu.
Tatkala kita dihadapkan pada contoh perkara di atas, otak kita akan mencoba untuk mendapatkan cara/ logikanya.
memiliki arti kita harus menawarkan 1 gelas Lagi yaitu gelas kosong sebut saja gelas C. dgn adanya gelas kosong tersebut, maka kita bisa menukarkan kedua isi gelas tersebut.
Konsep untuk mengetahui algoritma dengan-cara rincian dapat anda baca di artikel berikut
Semoga apa yg saya uraikan di atas menolong anda dlm mengerti algoritma, strukturnya & pula bisa memecahkan permasalahan memakai algoritma bahasa natural, algoritma flowchart & algoritma pseudocode.