komputer
KOMPUTER TEKNOLOGI

Konsep Logika dan Algoritma Pemrograman Dasar

Konsep Logika dan Algoritma Pemrograman Dasar. Ditinjau dari asal usul katanya, kata Algoritma mempunyai sejarah yang unik. Orang hanya menemukan kata Algorism yang berarti proses menghitung dengan angka arab.

Anda dikatakan Algorist jika anda menghitung menggunakan angka Arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. akhirnya para ahli sejarah matematika menemukan asal kata
tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al Khuwarizmi.

Al-Khuwarizmi dibaca orang 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). Berdasarkan judul buku itu diperoleh 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. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.

Baca Juga : Memahami Konsep Computational Thinking

Struktur Logika dan Algoritma

Perhatikan algoritma sederhana berikut:

Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus dilakukan adalah:

  • Menyiapkan Peralatan Tulis
  • Menulis surat
  • Surat dimasukkan ke dalam amplop tertutup
  • Amplop ditempeli perangko secukupnya.
  • Pergi ke Kantor Pos terdekat untuk mengirimkannya

Algoritma menghitung luas persegi panjang:

  • Masukkan panjang (P)
  • Masukkan lebar (L)
  • Luas P * L
  • Tulis Luas

Pembuatan algoritma mempunyai banyak keuntungan di antaranya:

  • Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.
  • Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
  • Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

Baca Juga : Memahami Konsep Keamanan Jaringan

Beberapa hal yang perlu diperhatikan dalam membuatLogika dan Algoritma

  • Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.
  • Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi Bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.
  • Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.
  • Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya. Pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya.
  • Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman
  • Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman.

Perhatikan algoritma sederhana berikut:

Algoritma menghitung luas segitiga
1. Start
2. Baca data alas dan tinggi.
3. Luas adalah alas kali tinggi kali 0.5
4. Tampilkan Luas
5. Stop

Penjelasan:

Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah. Pada algoritma ini tidak dijumpai perulangan ataupun pemilihan. Semua langkah dilakukan hanya satu kali. Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma ini mengandung kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untuk alas dan tinggi.

Hasil perbaikan algoritma perhitungan luas segitiga

  • Start
  • Baca data alas dan tinggi.
  • Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol maka lanjutkan ke langkah ke 4 jika tidak maka stop
  • Luas adalah alas kali tinggi kali 0.5
  • Tampilkan Luas
  • Stop

Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma. Pertama, algoritma harus benar. Kedua algoritma harus berhenti, dan setelah berhenti, algoritma memberikan hasil yang benar.

Contoh: Algoritma Berangkat Sekolah

Mulai

Bangun dari tempat tidur
Mandi Pagi Sarapan Pagi Pergi Ke Sekolah Cari Ruang Kelas
Masuk kelas untuk Belajar

Selesai

Beda Algoritma dan Program?

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah
suatu implementasi dari bahasa pemrograman. Program = Algoritma + Bahasa (Struktur Data ).

Baca Juga : Jenis – Jenis Komunikasi Daring

Penerjemah Bahasa Pemrograman

Untuk menterjemahkan bahasa pemrograman yang kita tulis maka diperlukan Compiler dan interpreter. Compiler adalah suatu program yang menterjemahkan bahasa program (Source code) ke dalam bahasa obyek (object code) secara keseluruhan program.

Interpreter berbeda dengan Compiler, interpreter menganalisis dan mengeksekusi setiap baris dari program secara
keseluruhan. Keuntungan dari interpreter adalah dalam eksekusi yang bisa dilakukan dengan segera. Tanpa melalui tahap kompilasi, untuk alas an ini interpreter digunakan pada saat pembuatan program berskala besar.

inilah perbedaan antara Compiler dan Intrepeter.

Compiler

  • Menterjemahkan secara keseluruhan
  • Bila terjadi kesalahan kompilasi maka source program harus diperbaiki dan dikompilasi ulang.
  • Dihasilkan Object program.
  • Dihasilkan Executable program.
  • Proses pekerjaan program lebih cepat.
  • Source program tidak dipergunakan hanya bila untuk perbaikan saja.
  • Keamanan dari program lebih terjamin.

Interpreter

  • Menterjemahkan Instruksi perinstruksi
  • Bila terjadi kesalahan interprestasi dapat diperbaiki.
  • Tidak dihasilkan obyek program.
  • Tidak dihasilkan Executable program.
  • Proses pekerjaan program lebih lambat.
  • Source program terus dipergunakan.
  • Keamanan dari program kurang terjamin.

Cara penulisan algortima

Ada beberapa cara penulisan algoritma, yaitu:

Structured English (SE)

SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma. Dasar dari SE adalah Bahasa Inggris, namun kita dapat memodifikasi dengan Bahasa Indonesia sehingga kita boleh menyebutnya sebagai Structured Indonesian (SI). ”SE atau SI lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemakai perangkat lunak”

Pseudocode

Pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya. cara ini  didasarkan pada bahasa pemrograman yang sesungguhnya seperti BASIC, FORTRAN atau PASCAL. Penulisan program ini berbasis bahasa PASCAL yang sering digunakan. “Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode program”

Contoh Pseudocode:
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5. Stop

Pada Contoh diatastampak bahwa algoritma sudah sangat mirip dengan bahasa BASIC. Pernyataan seperti READ dan PRINT merupakan keyword yang ada pada bahasa BASIC yang masing-masing menggantikan kata “baca data” dan “tampilkan”. Dengan menggunakan pseudocode seperti di atas maka proses penterjemahan dari algoritma ke kode program menjadi lebih mudah.