French, C.S. (1984) menyatakan bahwa algoritma adalah seperangkat konsep yang berkaitan dengan masalah desain program: keterampilan komputasi, kesulitan, dan akurasi. Penerapan konsep ini biasanya digunakan dalam desain algoritma. Ketika mengembangkan algoritma, Fletcher (1991) menyediakan beberapa metode atau metode: perintah, ekspresi, tabel perintah, program komputer, pseudocode, dan flowchart, dan Knuth (1973) menyediakan algoritma dasar. Metode yang banyak digunakan untuk tujuan pemrograman matematika dan komputer adalah diagram alir, kodesemu, dan algoritma dasar.
Berikut ini adalah ciri-ciri suatu algoritma, yaitu:
- Â Kepastian
- Langkah-langkahnya harus jelas dan lugas.
- Keterbatasan
- Menggunakan kendala menyebabkan algoritme berhenti setelah menjalankan beberapa proses dan langkah.
- Efektif
- Efektif di sini berarti suatu instruksi yang dijalankan secara efektif.
- Masukan
- Algoritma tidak harus hanya memiliki satu input, tetapi algoritma dapat memiliki nol atau lebih input.
- Keluaran
- Output yang dimiliki menghasilkan setidaknya satu output.
Algoritma memiliki sifat-sifat berikut:
- Simbol dan tanda baca tidak boleh standar juga tidak boleh diperoleh dari bahasa pemrograman tertentu
- Tidak tergantung pada bahasa pemrograman tertentu
- Urutan dan simbolnya dapat digunakan untuk menerjemahkan ke dalam bahasa pemrograman apapun, dan
- Algoritma berlaku untuk setiap peristiwa setiap hari dan dapat digunakan untuk merepresentasikan peristiwa secara logis.
Struktur dasar dari algoritma adalah sebagai berikut
- Sekuensial (urutan)
- Dalam struktur sekuensial ini, langkah yang dicoba oleh algoritma diproses secara berentetan. Mulailah dengan langkah awal. Pada dasarnya, program melaksanakan proses bersumber pada struktur ini.
- Struktur Seleksia
- Â Â Â Struktur seleksi menetapkan pilihan berdasarkan kondisi atau keputusan. Struktur ini selalu disertai dengan flowchart decision (diamond-shaped flowchart). Ketika sampai pada keputusan, ada banyak contoh yang dapat diterapkan pada jenis struktur ini, termasuk diskon yang berbeda tergantung pada jumlah produk yang akan dibeli.
- Struktur pengulangan
- Â Â Â Struktur ini menunjukkan tugas atau tindakan yang dieksekusi berkali-kali. Misalnya, seorang teman Anda ingin menulis kata "belajar" sebanyak 10 kali. Lebih efektif bagi seorang teman untuk menggunakan struktur ini daripada menulis 10 kali berturutan.
      Pertimbangan dalam memilih suatu algortima adalah pertama, ketika memilih suatu algoritma adalah bahwa algoritma tersebut harus valid. Ini berarti bahwa algoritma menghasilkan hasil yang diinginkan dari sejumlah input tertentu. Bukan masalah seberapa bagus algoritmanya, apabila didapatkan hasil yang keliru, itu jelas bukan algoritma yang bagus. Kedua, algoritma yang bagus adalah dapat menghasilkan hasil yang sedekat mungkin dengan nilai sebenarnya. Kita perlu tahu seberapa bagus algoritmanya. Hal ini sangat penting bagi algoritma untuk menyelesaikan masalah yang membutuhkan hasil perkiraan (hasil hanya perkiraan). Ketiga, efisiensi algoritma sama benarnya (mendekati kebenaran) dengan algoritma, tetapi membutuhkan waktu. Apakah Anda menjalankan algoritma dengan benar? Untuk apa? Inti dari algoritma yang baik adalah mendapatkan jawaban yang benar (mendekati kebenaran) dengan cepat.
- Penyajian Algortima
Algoritma tidak tergantung pada bahasa pemrograman tertentu. Susunan algoritma tidak terikat pada suatu kondisi tertentu, tetapi maknanya harus jelas untuk setiap tahapan algoritma.
Secara umum ada tiga jenis algoritma, yaitu:
- Algoritma dengan struktur bahasa Indonesia
- Karakteristik umum
- Jangan gunakan simbol atau sintaks dari bahasa pemrograman
- Terlepas dari bahasa pemrograman, dan
- Simbol seperti ini dapat digunakan dalam bahasa apa pun.
Contoh : Hitung rata-rata dari tiga kumpulan data
Struktur algoritma dalam bahasa Indonesia :
- Membaca angka  danÂ
- Menambahkan tiga angka
- Membagi angka dengan tiga, dan
- Menulis hasilnya.
- Algoritma dengan Pseudocode
- Menyajikan algoritma dalam pseudocode mirip dengan menulis kode pemrograman yang sebenarnya. Ide yang diungkapkan dalam pseudocode lebih detail daripada ide yang diungkapkan dalam struktur bahasa Inggris/Indonesia.
- Contoh: hitung rata-rata dari tiga data
- Algoritma dengan struktur pseudocode :
- MasukanÂ
- Jumlah =Â
- Rata-rata = Jumlah/
- Keluaran (Rata-rata).
- Algortima dengan Flowchart
- Flowchart adalah representasi gambar bagaimana langkah-langkah program komputer dijalankan. Flowchart membantu analis dan pemrogram memecah masalah menjadi bagian-bagian yang lebih kecil dan menganalisis alternatif untuk operasi.
- Kegunaan:
- Desain program
- Presentasi program.
- Dengan demikian, diagram alur dapat mewakili komponen dalam bahasa pemrograman.
- Pemrograman
      Program adalah seperangkat instruksi individu yang dibuat oleh seorang programmer, biasanya disebut kode sumber.
Menurut ahli definisi program:
- Amikom Yogyakarta
- Program adalah sekumpulan instruksi komputer, dan metode serta langkah-langkah sistem dalam program adalah algoritma.
- Uta Ema
- Program tersebut merupakan bahasa pemrograman.
- Sukrisno
- Program merupakan serangkaian langkah yang disusun dan dirangkai menjadi kata, ekspresi atau kalimat dari suatu kesatuan proses untuk memecahkan masalah yang diimplementasikan dalam bahasa pemrograman sehingga dapat dieksekusi oleh komputer.
- Anwar Harjono
- Program adalah serangkaian instruksi untuk melakukan perhitungan.
- Saifuddin Anshari
- Rencana ialah daftar rinci kegiatan serta upaya yang akan dilakukan.
- Sunarto, S.Kom
- Program, yaitu instruksi yang diwujudkan dalam bahasa, kode skema, atau bentuk lain, yang bila digabungkan dengan media yang dapat dibaca oleh komputer, bekerja untuk melakukan fungsi-fungsi tertentu, termasuk persiapan untuk merancangnya. instruksi.
- Wiryanto Dewobroto
- Program merupakan hasil dari langkah-langkah rinci algoritma yang disusun.
- Binanto
Menurut Binanto, istilah program dan programming dapat diartikan sebagai berikut: - Tulis instruksi individu, biasanya disebut kode sumber, dibuat oleh programmer.
- Menjelaskan seluruh perangkat lunak yang dapat dieksekusi.
- Program adalah kumpulan instruksi tertulis atau tertulis yang dibuat oleh programmer atau bagian yang dapat dieksekusi dari perangkat lunak.
- Pemrograman berarti membuat program komputer.
- Pemrograman adalah sekumpulan perintah kepada komputer untuk melakukan sesuatu. Perintah ini memerlukan bahasa lain yang dapat dimengerti oleh komputer Anda.
- Perbedaan Algortima dan Pemrograman