Konsep Dasar Algoritma
Kata algoritma pasti sudah sering kamu dengar, terlebih lagi jika kamu tertarik dengan dunia teknologi dan pemrograman. Algoritma adalah urutan langkah-langkah logis dan sistematis untuk menyelesaikan suatu masalah. Seperti resep masakan: ada bahan (input), langkah-langkah (proses), dan hasil akhir yang diharapkan (output).
Pengertian Algoritma
Secara formal, algoritma adalah prosedur atau rumus yang terdiri dari serangkaian instruksi terdefinisi dengan baik, yang jika diikuti akan menghasilkan solusi untuk suatu masalah tertentu dalam waktu yang terbatas.
Istilah "algoritma" berasal dari nama seorang matematikawan Persia, Abu Ja'far Muhammad ibn Musa al-Khwarizmi (abad ke-9), yang karyanya menjadi fondasi matematika dan komputasi modern.
5 Karakteristik Algoritma yang Baik
- Input: Memiliki nol atau lebih data masukan yang diterima dari luar.
- Proses: Langkah-langkah harus jelas, terurut, dan tidak ambigu.
- Output: Menghasilkan minimal satu keluaran yang merupakan solusi masalah.
- Definiteness: Setiap instruksi harus tepat dan tidak membingungkan.
- Finiteness: Algoritma harus berakhir setelah sejumlah langkah terbatas.
Contoh Algoritma Sederhana
Masalah: Menentukan apakah sebuah bilangan genap atau ganjil
Penjelasan Langkah demi Langkah:
- Program dimulai (
START). - Pengguna memasukkan sebuah angka (
INPUT angka). - Program memeriksa: apakah angka tersebut jika dibagi 2 sisanya 0? (
angka MOD 2 = 0). - Jika YA → cetak "Genap". Jika TIDAK → cetak "Ganjil".
- Program selesai (
END).
Kuis Modul 1: Konsep Dasar Algoritma
Flowchart & Diagram Alir
Kata flowchart pasti sudah sering kamu dengar, terlebih lagi jika kamu sering membangun sebuah program. Flowchart adalah sebuah diagram yang menjelaskan alur proses dari sebuah program. Dalam membangun sebuah program, flowchart berperan penting untuk menerjemahkan proses berjalannya sebuah program agar lebih mudah untuk dipahami. Nah, apa fungsinya, simbol yang sering digunakan, dan bagaimana contohnya? Berikut ini adalah penjelasannya.
Pengertian Flowchart
Flowchart atau bagan alur adalah diagram yang menampilkan langkah-langkah dan keputusan untuk melakukan sebuah proses dari suatu program. Setiap langkah digambarkan dalam bentuk simbol diagram dan dihubungkan dengan garis atau arah panah yang menunjukkan urutan eksekusi.
Flowchart berperan penting dalam memutuskan sebuah langkah atau fungsionalitas dari sebuah proyek pembuatan program yang melibatkan banyak orang sekaligus. Selain itu, dengan menggunakan bagan alur, proses dari sebuah program akan lebih jelas, ringkas, dan mengurangi kemungkinan untuk salah penafsiran.
Fungsi Flowchart
- Visualisasi Alur Program: Memberi gambaran jalannya sebuah program dari satu proses ke proses lainnya.
- Penyederhanaan Prosedur: Menyederhanakan rangkaian prosedur agar memudahkan pemahaman.
- Alat Komunikasi: Menjadi jembatan komunikasi antara tim teknis dan non-teknis.
- Dokumentasi: Sebagai dokumentasi resmi yang menjelaskan logika program.
- Deteksi Kesalahan: Membantu mengidentifikasi kesalahan logika sebelum kode ditulis.
Jenis-Jenis Flowchart
📄 Flowchart Dokumen
Menelusuri alur form/laporan dari satu bagian ke bagian lain.
💻 Flowchart Program
Menggambarkan secara rinci prosedur proses program.
⚙️ Flowchart Proses
Menganalisis langkah-langkah dalam suatu prosedur.
🌐 Flowchart Sistem
Menampilkan tahapan proses kerja dalam sistem secara menyeluruh.
🎨 Flowchart Skematik
Menggunakan gambar komputer untuk mempermudah pembacaan.
Simbol-Simbol Flowchart
🔵 Terminal (Mulai/Selesai)
Menunjukkan awal dan akhir dari suatu proses.
⬜ Proses (Process)
Menunjukkan operasi atau proses perhitungan.
🔶 Keputusan (Decision)
Menunjukkan titik percabangan YA/TIDAK.
⬛ Input/Output
Menunjukkan proses memasukkan atau menampilkan data.
Contoh: Cek Bilangan Genap/Ganjil
Pembahasan:
- Input: Pengguna menginput bilangan bulat.
- Proses: Nilai diproses dengan operator modulus (
%). - Keputusan: Jika sisa bagi = 0 → genap, jika tidak → ganjil.
- Output: Hasil ditampilkan sesuai kondisi.
- Selesai: Program berakhir.
Kuis Modul 2: Flowchart
Pseudocode Dasar
Jawabannya adalah Pseudocode — cara menuliskan algoritma menggunakan bahasa yang mirip kode program, tetapi lebih mudah dibaca manusia dan tidak terikat sintaks bahasa pemrograman tertentu.
Pengertian Pseudocode
Pseudocode adalah representasi teks dari algoritma yang menggunakan kombinasi bahasa alami dan struktur pemrograman. Pseudocode tidak dapat dieksekusi oleh komputer secara langsung, tetapi sangat berguna untuk merancang logika program sebelum implementasi.
Keunggulan pseudocode: mudah dipahami, bebas dari sintaks bahasa tertentu, dan fokus pada logika bukan detail teknis.
Aturan Penulisan Pseudocode
- Judul Algoritma – Nama algoritma dan penjelasan singkat tentang algoritma.
- Deklarasi – Berisi definisi variabel, konstanta, fungsi, atau prosedur yang digunakan.
- Deskripsi – Langkah-langkah penyelesaian masalah.
| Deskripsi Tingkat Tinggi | Pseudocode |
|---|---|
|
1. Baca nilai sisi. 2. Hitung luas bujur sangkar dengan mengalikan sisi dengan sisi. 3. Cetak luas. |
Algoritma Menghitung_Luas_Bujur_Sangkar Deklarasi sisi : integer luas : integer Deskripsi read(sisi) luas ← sisi * sisi print(luas) |
Struktur Dasar Pseudocode
Contoh: Menghitung Luas Persegi Panjang
Penjelasan:
- Deklarasi tiga variabel:
panjang,lebar, danluas. - Input nilai panjang dan lebar dari pengguna.
- Hitung luas dengan rumus:
panjang × lebar. - Tampilkan hasil perhitungan.
- Program selesai.
INPUT, PRINT, IF-THEN-ELSE,
FOR, WHILE. Indentasi membantu membaca struktur logika!
Kuis Modul 3: Pseudocode
Pengenalan Variabel
Variabel adalah "wadah" atau "tempat penyimpanan" untuk menyimpan data dalam program. Seperti kotak berlabel yang bisa kita isi, ubah, dan ambil nilainya kapan saja selama program berjalan.
Pengertian Variabel
Dalam pemrograman, variabel adalah nama yang merepresentasikan lokasi memori untuk menyimpan suatu nilai. Nilai dalam variabel dapat berubah (bervariasi) selama eksekusi program.
Analogi sederhana: Bayangkan variabel seperti lemari dengan label. Labelnya adalah nama variabel, dan isinya adalah nilai/data yang disimpan.
Aturan Penamaan Variabel
- ✅ Harus dimulai dengan huruf atau underscore (
_) - ✅ Boleh mengandung huruf, angka, dan underscore
- ✅ Case-sensitive:
nama≠Nama≠NAMA - ❌ Tidak boleh pakai spasi atau simbol khusus (
@,#,$) - ❌ Tidak boleh menggunakan reserved words seperti
if,for,while
Tipe Data Dasar
🔢 Integer
Angka bulat: umur = 17, jumlah = -5
📐 Float/Double
Angka desimal: tinggi = 165.5, phi = 3.14
🔤 String
Teks/kata: nama = "Budi", pesan = "Hello"
✅ Boolean
Nilai logika: lulus = true, aktif = false
Contoh: Deklarasi dan Penggunaan Variabel
#include <stdio.h>
int main() {
// Deklarasi variabel
char nama[50];
int umur;
float tinggi;
// Input data
printf("Masukkan nama: ");
scanf("%s", nama);
printf("Masukkan umur: ");
scanf("%d", &umur);
printf("Masukkan tinggi: ");
scanf("%f", &tinggi);
// Output
printf("\nData Siswa\n");
printf("Nama : %s\n", nama);
printf("Umur : %d tahun\n", umur);
printf("Tinggi : %.2f cm\n", tinggi);
return 0;
}
total_nilai lebih baik daripada x.
Gunakan snake_case (garis bawah) atau camelCase sesuai konsistensi proyek.
Kuis Modul 4: Variabel
Logika Dasar Komputer
Komputer bekerja dengan logika biner: hanya mengenal dua keadaan, yaitu TRUE (1) atau FALSE (0). Operator logika membantu menggabungkan kondisi untuk pengambilan keputusan dalam program.
Pengertian Logika Boolean
Logika Boolean adalah sistem logika yang dikembangkan oleh matematikawan George Boole, yang menjadi fondasi operasi komputer modern. Dalam logika ini, setiap pernyataan hanya memiliki dua nilai: Benar (True/1) atau Salah (False/0).
Semua operasi komputer, dari kalkulasi sederhana hingga kecerdasan buatan, pada dasarnya dibangun dari kombinasi operasi logika Boolean ini.
Operator Logika Utama
| Operator | Simbol | Contoh | Hasil |
|---|---|---|---|
| AND | && |
nilai >= 75 AND hadir = true |
True jika keduanya benar |
| OR | || |
tugas_selesai OR ujian_lulus |
True jika salah satu benar |
| NOT | ! |
NOT (nilai < 60) |
Membalik nilai (True → False) |
Struktur Percabangan: IF-ELSE
Struktur Percabangan IF–ELSE
Struktur IF–ELSE adalah struktur kontrol dalam pemrograman yang digunakan untuk mengambil keputusan berdasarkan suatu kondisi.
Program akan memeriksa kondisi terlebih dahulu:
- Jika kondisi benar (TRUE) maka program menjalankan perintah tertentu.
- Jika kondisi salah (FALSE) maka program menjalankan perintah lainnya.
1. Bentuk Dasar IF–ELSE
Penulisan dalam pseudocode:
IF kondisi THEN
perintah jika kondisi benar
ELSE
perintah jika kondisi salah
END IF
Penjelasan:
- IF : memulai pengecekan kondisi
- kondisi : syarat yang diperiksa
- THEN : perintah jika kondisi benar
- ELSE : perintah jika kondisi salah
- END IF : menutup percabangan
2. Contoh Pseudocode
Program untuk menentukan lulus atau tidak lulus.
DECLARE nilai AS integer
SET nilai = 80
IF nilai >= 75 THEN
PRINT "Anda Lulus"
ELSE
PRINT "Anda Tidak Lulus"
END IF
3. Contoh dalam Bahasa C
#include <stdio.h>
int main() {
int nilai = 80;
if (nilai >= 75) {
printf("Anda Lulus\n");
}
else {
printf("Anda Tidak Lulus\n");
}
return 0;
}
4. Contoh Logika Sehari-hari
IF hujan THEN
bawa payung
ELSE
tidak perlu payung
END IF
Kesimpulan
Struktur IF–ELSE digunakan untuk:
- Mengambil keputusan dalam program
- Memilih dua kemungkinan tindakan
- Menjalankan perintah berdasarkan kondisi
Alur kerja:
Periksa kondisi
↓
TRUE ? → Jalankan perintah IF
↓
FALSE → Jalankan perintah ELSE
AND butuh semua benar, OR cukup satu benar,
NOT membalik nilai. Gunakan tanda kurung () untuk prioritas!
Kuis Modul 5: Logika
🎉 Selamat!
Anda telah menyelesaikan semua modul Kelas X dengan total skor 0/500