Dasar suatu algoritma adalah pernyataan dan aksi, yang dimaksud dengan pernyataan adalah

Pernyataan

Sebuah algoritma merupakan deskripsi langkah-langkah pelaksanaan suatu proses.

Setiap langkah di dalam algoritma dinyatakan dalam sebuah pernyataan (statement) atau istilah lainnya instruksi. Sebuah pernyataan berisi aksi (action) yang dilakukan.

Contoh:

Pernyataan: Tulis “Halo mahasiswa”

Maka pernyataan tersebut menggambarkan aksi menulis pesan “Halo mahasiswa”.

Kontruksi Dasar

Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan aksi.

Ketiga langkah tersebut membentuk konstruksi suatu algoritma, jadi sebuah algoritma dapat dibangun dari ketiga buah konstruksi dasar yaitu:

  1. runtunan (sequence),
  2. pemilihan (selection), dan
  3. pengulangan (repetitin)

Terdiri dari satu atau lebih pernyataan, setiap pernyataan ditulis dalam satu baris atau dipisahkan dengan tanda titik koma.

Tiap pernyataan dikerjakan secara berurutan (sekuensial) sesuai dengan urutannya di dalam teks algoritma yaitu sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksanakan.

Urutan instruksi menentukan keadaan akhir algoritma, bila urutannya diubah, maka hasil akhirnya mungkin juga berubah.Runtunan satu atau lebih pernyataan dinamakan pernyataan gabungan (compound statements)

Contoh : kasus ember 1.

Terdapat kondisi yang harus dipenuhi sebelum instruksi dapat dikerjakan. Jawaban terhadap kondisi hanya dua yaitu : benar dan salah. Disebut juga selection statements.

Notasi:

aksi 1

else

       aksi 2

contoh: trafic light

Pemilihan bersarang (nested-if) jika pilihan aksi yang dilakukan lebih dari dua buah.

Notasi:

if kondisi 1 then

aksi 1

else

if kondisi 2 then

aksi 2

else

aksi 3

Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan pekerjaan yang sama berulang kali tanpa kenal lelah.

Contoh: tuliskan kalimat “Algoritma dan Pemrograman” sebanyak 100 kali.

Untuk dapat mengulang pernyataan beberapa kali maka gunakan notasi pengulangan : repeat N times, for, repeat-until, while.

a.Repeat N times

Repeat N times artinya ulangi sebanyak N kali

Algoritma tulis “Algoritma dan Pemrograman” sebanyak 100 kali:

    Repeat 100 times

    Tulis “Algoritma dan Pemrograman”

Bentuk umum:

 repeat N times

        aksi

b.for

Bentuk umum struktur pengulangan dengan for:

for  pencacah pengulangan dari 1 sampai N do

aksi

Contoh:

For 1 to 100 do

Tulis “Algoritma dan Pemrograman”

i merupakan pencacah pengulangan yang mencacah pengulangan dari 1 samapai 100

c.repeat-until

Bentuk umum struktur pengulangan dengan repeat-until (repeat = ulangi, until=hingga):

repeat

        aksi

    until kondisi

Artinya pengulangan aksi dilakukan hingga kondisi (persyaratan) berhenti terpenuhi.

Contoh algoritma :

repeat

Tulis “Hello World”

until sudah 500 kali

d. while

Bentuk umum struktur pengulangan dengan while (while artinya “selagi”atau “selama”) :

while kondisi do

        aksi

Artinya selama kondisi (persyaratan) pengulangan masih benar, maka aksi dikerjakan. Perbedaanya dengan repeat-until jika pada repeat-until kondisi pengulangan dievaluasi di akhir, maka pada while-do kondisi pengulangan dievaluasi di awal pengulangan.

Contoh :

while belum 500 kali do

Tulis “Hello World”

Halo, teman-teman apa kabar? Semoga teman-teman dalam keadaan baik-baik saja ya.

Sudah tahukah kamu ciri-ciri algoritma pemrograman? Sudah tahu, namun belum tahu secara komplit? Baik, pada artikel ini kita akan membahas 6 ciri algoritma pemrograman secara detail dan tuntas. Yuk simak!

Sebelumnya mari kita flashback apa yang dimaksud dengan algoritma baik itu pengertian dan juga contohnya.

Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.

Daftar Sekarang

Algoritma merupakan urutan aksi untuk menyelesaikan masalah yang disusun secara sistematis dan logis. Algoritma juga dapat diartikan urutan langkah logis yang digunakan untuk menyelesaikan suatu masalah. Singkatnya, sebuah masalah dapat diselesaikan dengan beberapa langkah yang logis.

Kenapa perlu algoritma? Komputer itu kan pintar? Perlu kamu tahu bahwa komputer hanya akan menerima perintah dari kita. Jadi kita bisa menginstruksikan komputer dengan bahasa komputer.

“Komputer itu tidak berguna. Mereka hanya bisa memberikan jawaban.” 

(Pablo Picasso)

Contohnya ketika kamu mau makan. Kamu memerlukan beberapa tindakan untuk makan. Dari mulai mencuci tangan; menyiapkan piring, nasi, dan lauk pauk; hingga makan. Itulah beberapa contoh proses atau urutan langkah algoritma dalam kehidupan sehari-hari.

Setiap orang mempunyai urutan langkah yang berbeda karena setiap orang mempunyai algoritmanya masing-masing. Itulah yang menjadi ciri khas algoritma di kehidupan sehari-hari.

Adapun manfaat dari algoritma yaitu untuk membantu seseorang dalam menyelesaikan masalah berdasarkan pada pola pikirnya masing-masing. Selain itu, algoritma juga memiliki fungsi di antaranya:

  • Memecahkan program yang rumit sehingga memungkinan adanya perhitungan tingkat tinggi.
  • Membuat sebuah program yang rumit menjadi sederhana.
  • Menggunakannya secara berulang atau lebih dari satu kali penggunaan.
  • Memudahkan dalam membuat suatu program.
  • Mengatasi permasalah yang ada secara terurut.
  • Memudahkanmu dalam mencari kesalahan. Sebab algoritma bisa mendapatkan alur dengan jelas (definiteness).
  • Memudahkanmu dalam memodifikasi program tanpa harus merubah dan mengganggu modul lainnya.

Algoritma pemrograman mempunyai ciri tersendiri yang dapat membedakannya dengan teknik pemrograman lain dalam menyelesaikan suatu masalah, berikut di antaranya sebagai:

1. Finiteness (Keterbatasan)

Finiteness atau keterbatasan berarti algoritma harus berakhir setelah mengerjakan sejumlah langkah proses. Algoritma yang sedang mengerjakan sebuah proses atau langkah mempunyai sifat terbatas, maka ia harus menghentikan apa yang sedang ia kerjakan. Program yang tidak pernah berhenti atau tidak ada batasnya merupakan program dengan berisi algoritma yang salah. Itulah mengapa algoritma harus mempunyai ciri finiteness.

Algoritma pemrograman harus memiliki output yang sesuai dengan harapan pengguna. Oleh karena itu, finiteness membantu pengguna agar algoritma sesuai dengan yang diharapkannya.

2. Input (Masukan)

Algoritma dapat memiliki  nol atau lebih masukan (input). Masukan adalah besaran nilai yang diberikan kepada algoritma sebelum ia mulai bekerja. Misal Algoritma Z mempunyai dua buah masukan “A” dan “B, algoritma Y memiliki masukan dari algoritma “C“, atau algoritma X yang tidak memiliki input sama sekali.

3. Output (Keluaran)

Perlu kamu tahu juga bahwa algoritma juga dapat mempunyai nol atau lebih keluaran (output). Keluaran adalah besaran nilai yang memiliki hubungan dengan masukan (input). Keluaran tersebut tentunya harus berupa solusi atau penyelesaian dari suatu masalah. Contohnya sebuah algoritma berfungsi untuk menghitung sebuah luas persegi. Saat ia diberi input 4 maka harusnya outputnya adalah 16.

4. Definiteness (Kepastian)

Kepastian (definiteness) adalah urutan langkah yang dibuat harus jelas dan sesuai dengan tujuan. Setiap urutan harus didefinisikan secara tepat dan tidak berarti ganda (ambiguous). Dengan kata lain, pembaca harus mengerti apa tujuan yang dimaksud. Contohnya ketika kamu membuat algoritma penghitung segitiga, pembaca harus tahu kalau yang diinputkan adalah angka bukan teks.

Contoh lain pada algoritma menghitung orang di dalam suatu ruangan berikut:

“Buatlah variabel nilai bernama value”
“Untuk menghitung total orang dalam ruangan tersebut lakukan dengan cara value + 1″

Dengan begitu, pengguna algoritma dapat dengan mudah mengerjakan dan menyelesaikannya secara pasti.

5. Effectiveness (Keefektivitasan)

Algoritma tentu harus sangkil (efektif), jadi urutan algoritma dikerjakan dalam waktu yang wajar. Dalam kata lain, algoritma efektif dan efisien. Setiap urutan atau langkah harus sesederhana mungkin, sehingga dapat dikerjakan dalam sejumlah waktu yang relatif efisien dan masuk akal. Suatu algoritma dapat dikatakan efisien jika waktu proses dari algoritma relatif lebih singkat dan penggunaan memorinya lebih sedikit.

Algoritma juga harus tepat guna lo. Walaupun terbilang sederhana, algoritma yang kamu buat harus sesuai dengan masalah yang dihadapi. Selain itu, suatu algoritma dikatakan efektif apabila ia mempunyai solusi dari permasalahan yang diselesaikan.

Jadi, jangan ada instruksi yang tidak mungkin dikerjakan oleh algoritma ya.

6. Structured (Terstruktur)

Algoritma harus terstruktur. Urutan baris langkah yang digunakan harus disusun secara sistematis. Disusun sedemikian rupa agar proses penyelesaiannya tidak kemana-mana atau berbelit-belit, sehingga memungkinkan prosesnya jadi relatif lebih singkat.

Hal ini memperlihatkan bahwa bagian dari proses tersebut dapat dibedakan dengan jelas, seperti input, proses, dan output. Dengan demikian, memudahkan kita dalam melakukan pemeriksaan ulang. 

Suatu algoritma harus menghasilkan keluaran yang tepat guna (efektif). Ia juga harus diproses dalam waktu yang relatif singkat dengan penggunaan memori yang relatif rendah (efisien). Berikut ini adalah sifat-sifat dari sebuah algoritma:

  1. Tidak menggunakan simbol berupa sintaks dari suatu bahasa pemrograman tertentu.
  2. Tidak mesti selalu bergantung pada bahasa pemrograman tertentu.
  3. Notasinya bersifat umum dan dapat digunakan untuk seluruh bahasa pemrograman manapun.
  4. Algoritma dapat digunakan untuk mempresentasikan kehidupan sehari-hari, seperti tindakan yang sering kamu lakukan berupa suatu pekerjaan.
  5. Tidak cukup menyelesaikan masalah dengan satu cara saja, namun harus ada pengkondisian yang masuk akal. 

Kesimpulannya, algoritma adalah metode efektif yang diekspresikan sebagai rangkaian yang terbatas. Algoritma juga merupakan kumpulan instruksi untuk menyelesaikan suatu masalah. Instruksi–instruksi ini dapat diterjemahkan secara bertahap dari awal hingga akhir.

“Program harus ditulis agar orang dapat membaca, dan hanya sesekali dijalankan oleh mesin.”

(Harold Abelson)

Setelah membaca artikel ini kamu jadi tahu “Apa saja ciri-ciri algoritma pemrograman? Beserta penjelasannya.” Terutama kamu yang ingin jago pemrograman harus memnguasai algoritma terlebih dahulu ya. Apabila ada komentar dan saran silahkan isi di kolom komentar. Terima kasih.

Simak juga yuk artikel lainnya di blog Dicoding. Inilah beberapa artikel yang berkaitan tentang algoritma, di antaranya:

6 Ciri Algoritma Pemrograman – karya Rendi Juliarto, Intern Junior Content Writer di Dicoding

Video yang berhubungan

Postingan terbaru

LIHAT SEMUA