Pembuatan algoritma dengan menggunakan bahasa yang menjelaskan dikenal dengan algoritma


Cara penulisan algoritma - Seperti yang sudah dipelajari, logika adalah cara berfikir atau konsep penalaran (seperti komputer), maka algoritma adalah sebuah aksi atau langkah-langkah yang akan dikerjakan sesuai logika (komputer) Halo siswa-siswi SMK yang budiman. Minggu lalu kita sudah belajar tentang logika pemrograman komputer dimana kalian belajar menyeleaikan permasalahan menggunakan logika berfikir (seperti) komputer.

Kali ini kita akan melanjutkan pembahasan pendekatan logika pemrograman komputer dengan cara penulisan algoritma pemrograman komputer.

Penulisan algoritma pemrograman adalah teknik dan cara menyelesaikan masalah secara sistematis, dan efisien menggunakan kata-kata yang terbatas.

Kompetensi Dasar

  • 3.1. menerapkan alur logika pemrograman komputer
  • 4.1. membuat alur logika pemrograman komputer
Indikator pencapaian kompetensi dasar 3.1 Menerapkan alur logika pemrograman komputer Materi-materi cara penulisan algoritma pemrograman Tujuan saya belajar Setelah mempelajari materi cara penulisan algoritma pemrograman, saya mampu:
  1. Memahami Pengertian Algoritma
  2. Memahami Sejarah Algoritm
  3. Mengerti Sifat-sifat algoritma
  4. Mengerti Struktur algoritma
  5. Cara penulisan algoritma pemrograman komputer
Media dan sumber belajar
  1. Media:Powerpoint dan Google slide
  2. Sumber belajar: Buku, Modul dan LKS pemrograman dasar

Algoritma pemrograman komputer adalah ilmu yang mempelajari cara menyelesaikan masalah atau persoalan menggunakan komputer dengan langkah yang sistematis, masuk di akal, dan efisien (seperti komputer).

Algoritma adalah teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata yang terbatas tetapi tersusun secara logis dan sistematis (Suarga,2003:1)

Algoritma adalah urutan langkah logis yang digunakan untuk menyelesaikan suatu masalah. Singkatnya, sebuah masalah harus diselesaikan dengan beberapa langkah yang logis. Contoh algoritma dalam kehidupan sehari-hari: Salah satu contohnya adalah aktivitas memasak nasi. Algoritma tentu saja berhubungan dengan aktivitas dalam memasak nasi.

Contoh cara penulisan algoritma memasak nasi

mulai, ambil beras 2 canting, masukan kewadah, cuci bersih. Siapkan magic com, isi air sebanyak petunjuk, masukkan beras yang telah dicuci, hidupkan magic com, tunggu sampai lampu indikator berwarna kuning tanda nasi sudah matang.Selesai

Deretan langkah tersebut merupakan algoritma dari akitivitas memasak nasi. Urutan langkahnya jelas, maka dianggap proses yang logis.

Sementara itu, di dalam sistem komputer dan matematika, definisi algoritma adalah prosedur atau langkah penghitungan, pemrosesan dan hasil akhir berupa data.

Algoritma juga diartikan sebagai metode yang diekspresikan lewat rangkaian dan instruksi yang dijabarkan untuk menghitung.
Secara garis besar, algoritma dimulai dengan imput dan kondisi awal, deskripsi, eksekusi, dan menghasilkan output. Jika kita merujuk pada sejarah,kata Algoritma pertama kali dikenal karena kesulitan orang barat menyebut nama cendikiawan Arab Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi.

Al-Khuwarizmi ketika dilafalkan oleh bangsa barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction).

Dari judul buku itu kita juga memperoleh akar kata "Aljabar" (Algebra).

Perubahan kata dari algorism menjadi algorithm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.

Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma.


Menurut Donald E. Knuth , algoritma pemrograman komputer mempunyai 5 sifat penting yang meliputi:
  1. Finiteness (keterbatasan), algoritma harus berakhir setelah mengerjakan sejumlah langkah proses.
  2. Definiteness (kepastian), setiap langkah harus didefinisikan secara tepat dan tidak berarti ganda.
  3. Input (masukan), algoritma memiliki nol atau lebih data masukan (input).
  4. Output (keluaran), algoritma mempunyai nol atau lebih hasil keluaran (output).
  5. Effectiveness (efektivitas), algoritma harus sangkil (efektif), langkah-langkah algoritma dikerjakan dalam waktu yang wajar.

Contoh algoritma dalam kehidupan sehari-hari: seperti algoritma untuk menghitung luas lingkaran, gini cara penulisan algoritmanya...

  1. Mulai
  2. Masukan data nilai jari-jari (r) lingkaran.
  3. Masukan data nilai phi.
  4. Proses hitung luas lingkaran = jari-jari (r) x jari-jari(r) x nilai phi
  5. Tampilkan hasil perhitungan luas lingkaran.
  6. Selesai.

Suatu Algoritma dapat terdiri dari beberapa struktur dasar,umumnya ada 3 yaitu;
  1. runtunan,
  2. pemilihan
  3. dan pengulangan
Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Runtutan (sequence) adalah instruksi kode program komputer akan dikerjakan secara berurutan sesuai dengan urutan penulisannya atau eksekusinya. Dengan kata lain, sebuah kode instruksi dilaksanakan setelah instruksi sebelumnya selesai dikerjakan. Urutan dari instruksi menentukan hasil akhir dari suatu algoritma. Bila urutan penulisan berubah maka mungkin juga hasil akhirnya akan berubah.

Contoh soal algoritma runtutan menukar isi gelas kopi ke dalam gelas teh, cara penulisan algoritma:


  1. Mulai
  2. Siapkan gelas X.
  3. Tuang gelas berisi teh kedalam gelas X.
  4. Tuang gelas berisi kopi kedalam gelas teh yang telah kosong
  5. Tuang gelas X kedalam gelas kopi yang telah kosong
  6. Selesai.


Pemilihan (seleksi) adalah menjalankan instruksi kode program yang akan dikerjakan sesuai kondisi yang telah ditentukan. Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Satu atau beberapa instruksi kode program hanya dijalankan apabila kondisi bernilai TRUE, sebaliknya apabila FALSE maka instruksi kode program tidak akan dijalankan atau dialihkan pada kondisi berikutnya.

Contoh soal algoritma pemilihan menentukan bilangan ganjil atau genap, cara penulisan algoritma:

  1. Mulai
  2. Siapkan penampungan sisa untuk menyimpan sementara sisa hasil bagi.
  3. Masukan data bilangan bulat.
  4. Proses: bagi bilangan dengan 2, simpan hasil bagi ke penampungan sisa
  5. Jika: nilai sisa=0, kerjakan langkah 6
  6. Tampilkan GENAP.
  7. Jika: nilai sisa !=0 (tidak sama dengan 0), kerjakan langkah 8
  8. Tampilkan GANJIL.
  9. Selesai.


Kita tidak perlu menulis instruksi yang sama berulang kali untuk hasil yang sama, tetapi cukup melakukan pengulangan dengan instruksi yang tersedia. Pengulangan merupakan kegiatan mengerjakan sebuah atau sejumlah aksi yang sama sebanyak jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan.

Contoh soal algoritma perulangan menampilkan kata AKU CINTA KAMU sebanyak 10 kali, cara penulisan algoritma:

  1. Mulai
  2. Siapkan penampungan kata untuk menyimpan kata.
  3. Siapkan penampungan ulang untuk menyimpan nilai perulangan
  4. Siapkan penampungan counter untuk menyimpan nilai perulangan yang telah dilakukan
  5. Masukan data AKU CINTA KAMU ke penampungan kata.
  6. Masukan data perulangan ke penampungan ulang=10
  7. Set counter dimulai dari 0.
  8. Tampilkan kata.
  9. Lakukan penambahan counter dengan 1
  10. Jika: nilai counter<=ulang, kerjakan langkah 8
  11. Jika: nilai counter =ulang,selesai
  12. Selesai.

Pemrograman berarti menulis instruksi atau kode untuk memerintahkan komputer atau perangkat lain melakukan tugas tertentu secara otomatis. Tapi....untuk membuat program yang baik, tidak semudah membalikkan tangan. Kalian harus belajar bagaimana sebuah program bekerja.

Nah, disinilah algoritma berperan dalam membuat langkah-langkah sistematis agar program dapat bekerja dengan baik dan benar. Tapi didalam dunia pemrograman, menulis algoritma ternyata juga ada syarat dan ketentuannya.

Ada 3 cara penulisan algoritma yang perlu kalian ketahui...
Notasi penulisan algoritma dengan menggunakan bahasa deskriptif biasa juga disebut dengan notasi alami. Dasar dari Penulisan algoritma kalimat deskriptif adalah Bahasa Inggris, namun dapat dimodifikasi dengan bahasa sehari-hari termasuk Bahasa Indonesia. Agar penulisan algoritma mudah ditranslasi ke dalam bahasa pemrograman, maka sebaiknya Penulisan algoritma tersebut berkoresponden dengan bahasa pemrograman pada umumnya.

Contoh soal algoritma menggunakan kalimat deskriftif menghitung luas lingkaran: cara penulisan algoritmanya...

  1. Mulai
  2. Masukan data nilai jari-jari (r) lingkaran ke variabel(wadah) dengan nama r.
  3. Masukan data nilai phi ke variabel (wadah) dengan nama phi.
  4. Proses: Hitung luas lingkaran = r x r x phi. Hasilnya masukan ke variabel luas
  5. Tampilkan isi variabel luas.
  6. Selesai.

Bandingkan dengan contoh penulisan algoritma sebelumnya...lihat perbedaannya 'kan?
Pseudocode adalah notasi penulisan algoritma yang menyerupai bahasa pemrograman tingkat tinggi atau mendekati aslinya.

Disarankan untuk menggunakan keyword yang umum digunakan dalam pemrograman untuk mengerjakan atau memerintah, pseudocode yang digunakan pada penulisan algoritma berupa : if, then, else, while, do, repeat, for, input,output, print,write dan lainnya.

Keuntungan menggunakan notasi penulisan algoritma pseudocode adalah kemudahan mentranslasi ke dalam bahasa pemrograman yang sesungguhnya. Menggunakan penulisan algoritma pseudocode dengan pendekatan menggunakan bahasa pemrograman tertentu (misal python), jelas akan mempermudah saat membuat program yang sesungguhnya.

Oleh sebab itu, pada pembuatan program komputer, algoritma dibuat biasanya sebelum program jadi. Ya iyalah!! Programmer akan berkumpul dulu untuk membuat gambaran program dalam bentuk algoritma sekaligus menentukan bahasa program yang akan dipakai nanti.

Pada umumnya struktur algoritma Pseudocode terdiri dari 3 bagian besar, yaitu:

  1. Judul {Berisi Judul Algoritma}
  2. Deskripsi {Berisi Deklarasi Variabel atau Konstantan}
  3. Implementasi {Berisi Inti Algoritma}


Contoh soal algoritma menggunakan penulisan pseudo-code menghitung luas lingkaran

  1. PROGRAM Menghitung_luaslingkaran
  2. DEKLARASI {var luas, r, phi=3,14. Type: bilangan float dan integer (int)}
  3. IMPLEMENTASI:
  4. input r
  5. luas = r * r * phi
  6. print luas

Catatan: * = kali (x) / = bagi (:)r = jari-jari phi = konstanta 3,14

var = variabel (wadah)


Flowchart adalah untaian simbol gambar (chart) yang menunjukkan aliran (flow) dari proses terhadap data (Suarga, 2003:6).

Flowchart membantu analis dan programmer untuk memecahkan masalah ke dalam segmen-segmen yang lebih kecil dan membantu dalam menganalisis alternatif alternatif lain dalam penyelesaian pemrograman.

Flowchart digunakan untuk menggambarkan prosedur sistem,baik sistem berjalan ataupun sistem yang akan diusulkan.

Flowchart dapat digunakan sebagai alat bantu komunikasi dan untuk dokumentasi

Pada dasarnya terdapat berbagai macam flowchart, diantaranya yaitu:
  1. Flowchart Sistem (System Flowchart),
  2. Flowchart Paperwork / Flowchart Dokumen (Document Flowchart),
  3. Flowchart Skematik (Schematic Flowchart),
  4. Flowchart Program (Program Flowchart),
  5. Flowchart Proses (Process Flowchart).

Untuk keperluan pembuatan program maka digunakan Flowchart Program. Simbol-simbol flowchart program yang biasanya dipakai adalah simbol-simbol flowchart standar yang dikeluarkan oleh ANSI dan ISO.


Dibawah adalah contoh penulisan algoritma flowchart mencari luas lingkaran

Catatan: float adalah tipe data untuk bilangan pecahan. Int atau integer adalah tipe data untuk angka bulat

Nah, gimana? Masih bingung? Pegangan... Oke, kita tutup dulu materi 3 cara penulisan algoritma dalam kalimat deskriptip,pseudo-code dan flowchart. Semoga bermanfaat.