Contoh algoritma pemrograman adalah rancangan langkah logis sebelum sebuah program ditulis dalam kode. Bentuknya bisa berupa bahasa natural, pseudocode, atau flowchart. Contoh sederhana yang sering dipakai pemula adalah algoritma menentukan bilangan ganjil-genap, menghitung luas segitiga, mencari nilai terbesar, mengurutkan data, dan mencari data dalam daftar.
Kalau Anda hanya membutuhkan contoh aktivitas harian seperti memasak, mencuci, atau menyeberang jalan, baca artikel utama contoh algoritma dalam kehidupan sehari-hari. Artikel ini fokus ke contoh algoritma yang lebih dekat dengan informatika dan pemrograman.
Apa Itu Algoritma Pemrograman?
Algoritma pemrograman adalah urutan instruksi yang disusun untuk menyelesaikan masalah komputasi. Algoritma belum tentu langsung berupa kode. Biasanya, logika ditulis dulu agar alurnya jelas sebelum diterjemahkan ke bahasa pemrograman seperti Python, JavaScript, Java, C++, atau bahasa lain.
Ciri Algoritma Pemrograman yang Baik
- Input jelas: data yang dibutuhkan diketahui.
- Output jelas: hasil akhirnya dapat ditentukan.
- Langkah logis: urutan tidak membingungkan.
- Terbatas: proses memiliki akhir.
- Efektif: setiap langkah bisa dijalankan.
- Efisien: tidak memakai langkah yang terlalu boros.
3 Cara Menulis Algoritma
1. Bahasa Natural
Bahasa natural menjelaskan algoritma dengan kalimat biasa. Cara ini mudah dipahami pemula, tetapi bisa kurang presisi jika masalahnya kompleks.
2. Pseudocode
Pseudocode adalah kode semu. Bentuknya mirip kode program, tetapi tidak terikat sintaks bahasa tertentu. Biasanya memakai kata seperti INPUT, IF, ELSE, FOR, WHILE, dan OUTPUT.
3. Flowchart
Flowchart adalah diagram alir untuk menggambarkan proses. Bentuk ini membantu melihat alur percabangan, perulangan, dan proses secara visual. Jika ingin membuatnya dari awal, baca juga cara membuat flowchart untuk pemula.
Contoh Algoritma Pemrograman untuk Pemula
| Contoh | Konsep | Output |
|---|---|---|
| Ganjil-genap | Percabangan | Ganjil atau genap |
| Luas segitiga | Input, proses, output | Nilai luas |
| Nilai terbesar | Perbandingan | Angka terbesar |
| Faktorial | Perulangan | Hasil perkalian berulang |
| Sorting | Pengurutan | Data terurut |
| Searching | Pencarian | Data ditemukan/tidak |
1. Algoritma Menentukan Bilangan Ganjil atau Genap
Masalah: menentukan apakah sebuah angka termasuk ganjil atau genap.
Mulai
Input angka
Jika angka mod 2 = 0 maka
Tampilkan "Genap"
Jika tidak
Tampilkan "Ganjil"
Selesai
Konsep utama algoritma ini adalah percabangan. Program mengambil keputusan berdasarkan sisa pembagian angka dengan 2.
2. Algoritma Menghitung Luas Segitiga
Masalah: menghitung luas segitiga berdasarkan alas dan tinggi.
Mulai
Input alas
Input tinggi
Luas = alas * tinggi / 2
Tampilkan luas
Selesai
Ini contoh algoritma input-proses-output. Inputnya adalah alas dan tinggi, prosesnya adalah rumus, outputnya adalah luas.
3. Algoritma Menentukan Nilai Terbesar dari Dua Angka
Mulai
Input A
Input B
Jika A > B maka
Tampilkan A sebagai nilai terbesar
Jika tidak
Tampilkan B sebagai nilai terbesar
Selesai
Contoh ini melatih logika perbandingan. Bentuk yang lebih panjang bisa dipakai untuk mencari nilai terbesar dari tiga angka atau lebih.
4. Algoritma Menghitung Faktorial
Faktorial adalah perkalian berurutan dari 1 sampai n. Misalnya, 5! = 5 × 4 × 3 × 2 × 1.
Mulai
Input n
Hasil = 1
Untuk i dari 1 sampai n lakukan
Hasil = Hasil * i
Tampilkan Hasil
Selesai
Konsep utama algoritma ini adalah perulangan atau loop.
5. Algoritma Menghitung Rata-Rata Nilai
Mulai
Input jumlah_data
Total = 0
Untuk setiap data nilai lakukan
Input nilai
Total = Total + nilai
Rata_rata = Total / jumlah_data
Tampilkan Rata_rata
Selesai
Contoh ini sering dipakai untuk mengenalkan variabel, akumulasi, dan perulangan.
6. Algoritma Sorting untuk Mengurutkan Data
Sorting adalah proses mengurutkan data, misalnya dari angka terkecil ke terbesar. Salah satu contoh sederhana adalah bubble sort.
Mulai
Input array angka
Untuk i dari 0 sampai panjang array - 1
Untuk j dari 0 sampai panjang array - i - 2
Jika array[j] > array[j+1] maka
Tukar array[j] dan array[j+1]
Tampilkan array yang sudah terurut
Selesai
Bubble sort mudah dipahami, tetapi tidak selalu efisien untuk data besar. Dalam praktik, ada banyak jenis algoritma sorting lain yang lebih cepat.
7. Algoritma Searching untuk Mencari Data
Searching adalah proses mencari nilai tertentu dalam kumpulan data. Contoh paling mudah adalah linear search.
Mulai
Input array data
Input nilai_dicari
Untuk setiap elemen dalam array
Jika elemen = nilai_dicari maka
Tampilkan "Data ditemukan"
Selesai
Tampilkan "Data tidak ditemukan"
Selesai
Linear search cocok untuk data kecil atau data yang belum terurut. Jika data sudah terurut, pencarian bisa memakai binary search agar lebih cepat.
8. Algoritma Greedy
Algoritma greedy memilih opsi terbaik pada setiap langkah dengan harapan mendapat hasil akhir yang baik. Contoh sederhana adalah menentukan pecahan uang kembalian dengan jumlah keping paling sedikit.
Mulai
Input jumlah_kembalian
Daftar koin = [1000, 500, 200, 100]
Untuk setiap koin dalam daftar
Selama jumlah_kembalian >= koin
Ambil satu koin
jumlah_kembalian = jumlah_kembalian - koin
Selesai
Untuk perbandingan konsep yang lebih detail, baca algoritma Greedy vs Brute Force.
9. Algoritma Brute Force
Brute force mencoba banyak kemungkinan sampai menemukan jawaban. Pendekatan ini mudah dipahami, tetapi bisa sangat lambat jika kemungkinan solusinya terlalu banyak.
Mulai
Input daftar_kemungkinan
Untuk setiap kemungkinan
Uji kemungkinan tersebut
Jika cocok maka
Tampilkan solusi
Selesai
Tampilkan "Solusi tidak ditemukan"
Selesai
Dalam konteks keamanan, brute force sering dibahas sebagai risiko. Karena itu, pengguna sebaiknya memakai kata sandi kuat, autentikasi dua faktor, dan tidak membagikan kode OTP.
10. Algoritma Rekomendasi Konten
Algoritma rekomendasi dipakai untuk menampilkan konten yang dianggap relevan bagi pengguna, misalnya video, produk, atau postingan media sosial.
- Kumpulkan data interaksi pengguna.
- Identifikasi topik atau pola yang sering diminati.
- Bandingkan dengan konten yang tersedia.
- Beri skor pada tiap konten.
- Tampilkan konten dengan skor paling relevan.
Contoh penerapannya bisa dilihat pada cara kerja algoritma media sosial.
Perbedaan Algoritma, Pseudocode, Flowchart, dan Program
| Istilah | Arti Singkat | Contoh Bentuk |
|---|---|---|
| Algoritma | Logika penyelesaian masalah | Langkah-langkah |
| Pseudocode | Kode semu untuk merancang logika | IF, ELSE, FOR |
| Flowchart | Diagram alir proses | Simbol proses dan keputusan |
| Program | Implementasi algoritma dalam bahasa komputer | Python, JavaScript, Java |
Tips Membuat Algoritma agar Mudah Dipahami
- Tentukan masalahnya dulu.
- Tulis input yang dibutuhkan.
- Tentukan output yang diharapkan.
- Pecah proses menjadi langkah kecil.
- Gunakan percabangan jika ada pilihan.
- Gunakan perulangan jika ada proses berulang.
- Uji dengan contoh data sederhana.
- Baru ubah menjadi kode program.
Untuk mengenal jenis-jenis pendekatan dalam dunia coding, lanjutkan ke artikel jenis algoritma pemrograman populer.
FAQ
Apa contoh algoritma pemrograman?
Contohnya algoritma menentukan bilangan ganjil-genap, menghitung luas segitiga, mencari nilai terbesar, menghitung rata-rata, sorting, searching, greedy, dan brute force.
Apa bedanya algoritma dan program?
Algoritma adalah logika atau langkah penyelesaian masalah. Program adalah algoritma yang sudah ditulis dalam bahasa pemrograman agar bisa dijalankan komputer.
Apakah pseudocode sama dengan bahasa pemrograman?
Tidak. Pseudocode hanya kode semu untuk menjelaskan logika. Pseudocode tidak harus mengikuti sintaks bahasa pemrograman tertentu.
Apa contoh algoritma sederhana untuk pemula?
Contoh paling sederhana adalah menentukan bilangan ganjil-genap atau menghitung luas segitiga karena hanya membutuhkan input, proses, dan output yang jelas.
Mengapa algoritma penting sebelum coding?
Algoritma membuat alur program lebih jelas. Dengan algoritma, programmer bisa memahami masalah sebelum menulis kode sehingga risiko salah logika lebih kecil.
Kesimpulan
Contoh algoritma pemrograman membantu pemula memahami cara berpikir logis sebelum menulis kode. Mulailah dari contoh sederhana seperti ganjil-genap, luas segitiga, dan rata-rata. Setelah itu, lanjutkan ke sorting, searching, greedy, dan brute force. Jika algoritma sudah jelas, proses membuat program akan lebih terarah.