π BAB 3 β ALGORITMA & STRUKTUR DATA
Dasar Berpikir Logis dalam Pemrograman dan Pemecahan Masalah
Dalam informatika, algoritma dan struktur data adalah fondasi utama dalam membuat program komputer. Setiap aplikasi β dari game, media sosial, hingga sistem perbankan β berjalan berdasarkan algoritma yang dirancang secara sistematis.
Bab ini membantu siswa memahami cara berpikir logis, menyusun langkah penyelesaian masalah, memahami algoritma, dan mengenal struktur data dasar.
π§ Subbab 1 β Apa Itu Algoritma?
Algoritma adalah urutan langkah-langkah logis dan sistematis untuk menyelesaikan suatu masalah.
Ciri-ciri algoritma yang baik:
β Jelas
β Terstruktur
β Efisien
β Berhingga (ada akhir)
Contoh algoritma sederhana:
Algoritma membuat mie instan:
- Didihkan air
- Masukkan mie
- Tunggu 3 menit
- Tambahkan bumbu
- Sajikan
π‘ Ini menunjukkan bahwa algoritma tidak hanya digunakan dalam komputer, tetapi juga dalam kehidupan sehari-hari.
π» Subbab 2 β Algoritma dalam Pemrograman
Dalam pemrograman, algoritma digunakan untuk:
β Menghitung nilai
β Menyortir data
β Mencari data
β Mengontrol alur program
Contoh masalah:
Menghitung rata-rata nilai siswa.
Langkah algoritma:
- Masukkan nilai
- Jumlahkan semua nilai
- Bagi dengan jumlah siswa
- Tampilkan hasil
π Subbab 3 β Representasi Algoritma
Flowchart & Pseudocode
πΉ Flowchart (Diagram Alir)
Digunakan untuk menggambarkan alur algoritma secara visual.
Simbol utama:
- Oval β Mulai/Selesai
- Persegi panjang β Proses
- Jajar genjang β Input/Output
- Belah ketupat β Keputusan
πΉ Pseudocode
Penulisan algoritma dalam bahasa sederhana.
Contoh pseudocode menghitung rata-rata:
Mulai
Input nilai1, nilai2, nilai3
rata = (nilai1 + nilai2 + nilai3) / 3
Tampilkan rata
Selesai
π Subbab 4 β Struktur Kontrol Algoritma
(Percabangan & Perulangan)
1οΈβ£ Percabangan (IfβElse)
Digunakan untuk pengambilan keputusan.
Contoh:
Jika nilai β₯ 75 β Lulus
Jika nilai < 75 β Tidak Lulus
2οΈβ£ Perulangan (Looping)
Digunakan untuk mengulang proses.
Jenis perulangan:
- For
- While
- Repeat
Contoh:
Menghitung angka 1 sampai 5.
π¦ Subbab 5 β Struktur Data Dasar
Struktur data adalah cara menyimpan dan mengelola data agar mudah digunakan.
Jenis struktur data dasar:
- Array β kumpulan data sejenis
- String β kumpulan karakter
- List β daftar data
- Stack β LIFO (Last In First Out)
- Queue β FIFO (First In First Out)
Contoh array:
Nilai = [80, 85, 90, 95]
π Subbab 6 β Algoritma Sorting (Pengurutan Data)
Sorting digunakan untuk mengurutkan data dari kecil ke besar atau sebaliknya.
Contoh algoritma Bubble Sort:
Mengurutkan: 5, 2, 4, 1
Hasil: 1, 2, 4, 5
π‘ Sorting digunakan dalam ranking nilai, daftar nama, dan sistem pencarian.
π Subbab 7 β Algoritma Searching (Pencarian Data)
1οΈβ£ Linear Search
Mencari data satu per satu.
2οΈβ£ Binary Search
Mencari data lebih cepat pada data terurut.
π‘ Digunakan dalam Google Search, pencarian kontak, dan database.
π§ Subbab 8 β Algoritma Rekursi
Rekursi adalah fungsi yang memanggil dirinya sendiri.
Contoh:
Menghitung faktorial:
faktorial(n) = n Γ faktorial(n-1)
β‘ Subbab 9 β Algoritma Greedy
Algoritma Greedy memilih solusi terbaik pada setiap langkah.
Contoh:
Menukar uang dengan jumlah koin paling sedikit.
π§© Subbab 10 β Pemrograman Dinamis
Digunakan untuk masalah kompleks dengan submasalah yang berulang.
Contoh:
Perhitungan deret Fibonacci secara efisien.
π§ͺ Subbab 11 β Implementasi Algoritma dalam Python (Contoh)
Program menghitung rata-rata nilai:
nilai = [80, 85, 90]
rata = sum(nilai) / len(nilai)
print("Rata-rata:", rata)
Program percabangan nilai lulus:
nilai = int(input("Masukkan nilai: "))
if nilai >= 75:
print("Lulus")
else:
print("Tidak Lulus")
π CONTOH SOAL BAB 3
A. Pilihan Ganda
- Algoritma adalahβ¦
- Flowchart digunakan untukβ¦
- Struktur data FIFO adalahβ¦
- Sorting berartiβ¦
- Binary Search bekerja pada dataβ¦
B. Essay
- Jelaskan fungsi algoritma dalam pemrograman.
- Apa perbedaan stack dan queue?
- Berikan contoh algoritma dalam kehidupan sehari-hari.
- Mengapa sorting penting dalam pengolahan data?
βοΈ LATIHAN PRAKTIK BAB 3
π» Tugas Mini Coding
Buat program sederhana untuk:
- Menentukan bilangan ganjil/genap
- Mengurutkan 5 angka
- Menghitung faktorial angka
π― KESIMPULAN BAB 3
Bab ini mengajarkan bahwa algoritma adalah dasar berpikir logis dalam dunia digital. Dengan memahami algoritma dan struktur data, siswa dapat menciptakan program, menyelesaikan masalah kompleks, dan membangun solusi teknologi masa depan.