Yang terjadi jika sebuah algoritma tidak memiliki akhir yang terbatas adalah dan mengapa

Yang terjadi jika sebuah algoritma tidak memiliki akhir yang terbatas adalah dan mengapa

Algoritma merupakan fondasi yang harus dikuasai oleh setiap orang yang ingin menyelesaikan suatu masalah secara terstruktur, efektif, dan efisien, teristimewa lagi bagi programmer yang ingin menyusun program komputer untuk menyelesaikan suatu perosalan. Konsep dasar algoritma dalam pemrograman akan kita bahas di artikel ini.

Definisi

Beberapa definisi tentang Algoritma:

  1. Teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dalam jumlah kata terbatas tetapi tersusun secara logis dan sistematis.
  2. Suatu prosedur yang jelas untuk menyelesaikan suatu perosalan dengan mengguanakan langkah-langkah tertentu dan terbatas jumlahnya.
  3. Sususan langkah yang pasti, yang bila diikuti maka akan mentrasformasi data input menjadi output yang berupa informasi.

Catatan Sejarah

Abu Ja’far Muhammad Ibnu Musa Al-Kwarizmi, ahli matematika dan astronomi Persia, penulis buku “Aljabar wal muqabala” beberapa abad yang lalu (diperkirakan wafat pada tahun 850 M), dianggap sebagai pencetus pertama algoritma karena di dalam buku tersebut Abu Ja’far menjelaskan langkah-langkah dalam menyelesaikan berbagai persoalan aritmatika (aljabar). Kemungkinan besar kata algoritma diambil dari kata al-kwarizmi yang kemudian berubah menjadi algorism, selanjutnya menjadi algorithm.

Ciri Algoritma

Donal E. Knuth, penulis beberapa buku algoritma Abad XX, menyatakan bahwa ada beberapa ciri algoritma, yaitu:

  1. Algoritma mempunyai awal dan akhir, suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma memiliki langkah yang terbatas.
  2. Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda, tidak membingungkan.
  3. Memiliki masukan (input) atau kondisi awal.
  4. Memiliki keluaran (output) atau kondisi akhir.
  5. Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan persoalan.

Sifat Algoritma

Berdasarkan ciri algoritma yang dipaparkan Donal E. Knuth dan definisi algoritma, dapat disimpulkan bahwa sifat utama suatu algoritma adalah sebagai berikut:

  1. Input: Suatu algoritma memiliki input atu kondisi awal sebelum dilaksanakan, bisa berupa nilai-nilai perubahan yang diambil dari himpunan khusus.
  2. Output: Suatu algoritma akan menghasilkan output setelah dilaksanakan, atau algoritma akan mengubah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma.
  3. Definiteness: Langkah-langkah yang ditulisakan dalam algoritma terdefinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.
  4. Finiteness: Suatu algoritma harus memberi kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap setiap kondisi awal atau input yang diberikan.
  5. Effectiveness: Setiap langkah dalam algoritma bisa dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai yang diharapkan
  6. Generality: Langkah-langkah algoritma berkalu untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu.

Struktur Algoritma

Agar algoritma dapat ditulis lebih teratur maka struktur algoritma sebaiknya dibagi ke dalam beberapa bagian. Salah satu struktur yang sering dijadikan patokan adalah sebagai berikut:

  1. Bagian Kepala (Header): memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis.
  2. Bagian Deklarasi (Definisi Variabel): membuat definisi nama variabel, nama tetapan, nama prosedur, nama fungsi, tipe data yang akan digunakan dalam algoritma.
  3. Bagian Deskripsi (Rincian Langkah): memuat langkah-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi output, dsb.

Referensi artikel  ‘Konsep Dasar Algoritma Dalam Pemrograman‘ ini diambil dari buku Algoritma dan Pemrograman karya Dr. Suarga, M.Sc., M.Math., Ph.D. Penerbit ANDI.

Yang terjadi jika sebuah algoritma tidak memiliki akhir yang terbatas adalah dan mengapa

Definisi
• Algoritma adalah sekumpulan langkah-langkah terbatas untuk mencari solusi suatu masalah.
• Berasal dari kata algoris dan ritmis. Diperkenalkan oleh Abu Ja’far Muhammad MusaAl-Khowarizmi(780-850) dalam bukunya yang berjudul KitabAl Jabr Waal Muqobala(Rules of Restoration and Reduction).
• Pada pemrograman, algoritma didefinisikan sebagai metode yang terdiri dari langkah-langkah terstuktur untuk mencari solusi suatu masalah dengan bantuan komputer.

Syarat Algoritma
Menurut Donald E.Knuth sebuah algoritma harus memenuhi persyaratan :
• Finiteness.
Algoritma harus berakhir (terminate) setelah melakukan sejumlah langkah proses.
• Definiteness.
Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda(ambiguous).
• Input.
Setiap algoritma memerlukan data sebagai masukan untuk diolah.
• Output.
Setiap algoritma memberikan satu atau lebih hasil keluaran.
•Effectiveness.
Langka-langkah algoritma dikerjakan dalam batas waktu yang wajar.

Jenis Proses Algoritma
Langkah-langkah yang membentuk suatu algoritma dapat dibagi menjadi tiga kelompok proses :
•Sequence process.
Sederetan instruksi dijalankan secara berurutan dari awal hingga akhir.
•Selection process.
Instruksi atau sederetan instruksi dijalankan jika kondisi tertentu terpenuhi.Contohnya adalah siswa dinyatakan lulus mata kuliah jika nilainya minimal 60.
•Iteration process.
Instruksi atau sederetan instruksi dijalankan secra berulang jika kondisi tertentu terpenuhi. Contohnya adalah siswa harus mengambil mata kuliah selama nilainya di bawah 60.

Tahap Pengembangan Algoritma

Penulisan (penyajian) Algoritma
• Tulisan, seperti :Structure English,Pseudocode.
Contoh Algoritma “Penggunaan Kalkulator”
Mulai
…..Nyalakan kalkulator
…..Kosongkan Kalkulator
…..Ulangi
……….Input harga
……….Tekan tombol Plus (+)
……….Sampai semua harga diinput
…..Tampilkan total harga
…..Matikan kalkulator
Selesai

  • Gambar, seperti :Flow Chart.
    Contoh Algoritma “Penggunaan Kalkulator”

Referensi :
Paul J. Deitel. (2016). C how to program : with an introduction to C++. 08. Pearson Education. Hoboken. ISBN: 9780133976892

Ngoen. Th. S. (2004). Pengantar Algoritma dengan Bahasa C. Penerbit Salemba Teknika.

Pengertian Algoritma – Berbicara tentang algoritma, Kanca IT mungkin langsung mengarah pada pemrograman. Sebagian besar orang mengenal algoritma sebagai salah satu bagian pemrograman komputer. Sebenarnya, algoritma memiliki cakupan yang lebih kompleks jika dibandingkan dengan yang difikirkan oleh sebagian orang.

Algoritma dapat dikatakan sebagai susunan yang logis dan sistematis dimana susunan tersebut digunakan untuk memecahkan suatu masalah. Algoritma akan diurutkan berdasarkan susunan yang sistematis. Dalam dunia komputer, algoritma adalah sistem kerja komputer yang terdiri dari sekumpulan perintah yang saling terintegrasi pada hardware, software, dan brainware.

Pada dunia pemrograman, algoritma digunakan dalam pembagungan berbagai perangkat lunak yang akan dijalankan pada perangkat komputer. Algoritma yang digunakan dalam pembuatan software biasaya diimplementasikan menggunakan beberapa Bahasa pemrograman seperti C#, PHP, Visual Basic, Java, dan berbagai bahasa pemrograman lainnya.

Tanpa adanya algoritma, suatu baris kode bahasa pemrograman tidak dapat diselesaikan dengan baik. Seluruh baris kode yang dibuat biasanya diatur oleh algoritma yang digunakan. Pengaturan tersebut dimulai dari aktivitas saat membuka perangkat lunak, pengoperasian, dan berabgai aktifitas lainnya.

Biasanya algoritma memiliki struktur tertentu sehingga langkah yang digunakan telah tersusun sedemikan rupa. Langkah yang tersusun dengan baik ditujukan agar proses penyelesaian suatu masalah dapat dilakukan dengan baik untuk menghindari proses yang berbelit dan memastikan proses hanya membutuhkan waktu yang singkat.

Ciri-ciri Algoritma

Walaupun algoritma identik dengan langkah-langkah logis dan sistematis, namun tidak semua penyelesaian masalah yang logis dapat disebut algoritma. Terdapat lima ciri penting dari algoritma yang dikemukakan oleh Donald E. Knuth dalam The Art of Computer Programming. Lima ciri tersebut diantaranya:

Algoritma harus memiliki akhir setelah mengerjakan sejumlah langkah proses untuk menyelesaikan masalah. Walaupun suatu Langkah untuk penyelesaian tak terbatas namun sebuah algoritma tetap harus berhenti. Instruksi yang dibuat dalam urutan tertentu tentunya dimaksudkan agar masalah dapat selesai. Walaupun demikian, banyaknya langkah atau instruksi yang digunakan harus berhingga. Jika tidak, proses penyelesaian masalah akan memerlukan waktu yang lama.

Suatu program yang tidak pernah berhenti terindikasi memiliki algoritma yang salah. Prosedur yang diterapkan harusnya mampu untuk menghasilkan solusi. Baik dalam kondisi ada atau tidak adanya solusi, proses harus tetap berhenti. Jika terdapat suatu algoritma yang hanya berhenti saat menghasilkan atau memiliki solusi maka dapat disebut dengan semi algoritma.

Maksud dari kepastian adalah setiap langkah yang ada harus dapat didefinisikan dengan tepat dan tidak memiliki arti ganda (ambiguous). Langkah yang pasti tentu akan memudahkan pembaca untuk memahami setiap langkah yang terdapat pada suatu algoritma. Ketika langkah diterapkan dalam sebuah Bahasa pemrogramn tentu kepastian menjadi sangat penting agar program dapat dijalankan sesuai dengan kebutuhan.

Input menjadi salah satu ciri yang ada pada sebuah algoritma. Biasanya, algoritma memiliki nol atau lebih data masukan (input). Masukan merupakan besaran yang diberikan pada algoritma sebelum dijalankan. Data yang menjadi masukan akan digunakan untuk diproses oleh suatu algoritma.

Setalah ada input, maka akan ada output dari suatu proses yang dijalankan. Algoritma dapat memiliki nol atau lebih output yang merupakan besaran yang memiliki hubungan dengan input. Output seharunya adalah solusi dari masalah yang penyelesaiannya menggunakan algoritma.

Algoritma haruslah efektif dan langkah pengerjaan algoritma harus dapat dikerjakan dalam waktu yang semestinya. Setiap langkah yang ada harus sederhana sehingga dapat dikerjakan dalam rentang waktu tertentu.

Algoritma dapat dikatakan efektif ketika algoritma tersebut telah menghasilkan solusi yang sesuai dengan permasalahan yang terjadi atau tepat guna. Algortima dapat dikatakan efisien saat waktu yang dibutuhkan untuk menyelesaikan proses singkat dan tidak banyak menggunakan memori.

Sifat-sifat Algoritma

Pada intinya suatu algoritma diharuskan dapat menghasilkan keluaran dalam waktu yang realtif singkat dan penggunaan memori yang sedikit serta langkah yang berhingga sehinga prosesnya dapat berakhir dengan baik. Oleh karena itu, terdapat beberapa hal yang menjadi sifat algoritma sebagai berikut.

  • Suatu algoritma tidak menggunakan simbol dari bahasa pemrograman tertenu sehingga dapat diterapkan dalam bahasa pemrograman apa saja yang nantinya akan digunakan oleh pengembang program.
  • Suatu algoritma tidak bergantung pada bahasa pemrograman tertentu sehingga sifatnya umum namun dapat digunakan untuk menyelesaikan suatu masalah.
  • Notasi yang terdapat pada algoritma dapat dimanfaatkan untuk seluruh bahasa pemrograman apa saja.
  • Algoritma dapat dimanfaatkan untuk representasi dari aturan kejadian dengan logis dan dapat diterapkan untuk semua permasalahan atau kejadian yang ditemui dalam kehidupan sehari-hari.

Kanca IT, sekarang sudah tahu ya tentang pengertian algoritma, ciri dan sifatnya. Khusus untuk Kanca IT yang terjun di dunia pemrograman tentu sudah tidak asing lagi dengan penggunaan algoritma untuk pembuatan program. Tapi paling tidak artikel tentang pengertian algoritma di atas dapat menjadi referensi buat Kanca IT semua.