Kamis, 22 Oktober 2026

ALGORITMA DAN STRUKTUR DATA

Algoritma &
Struktur Data

Informatika Kelas 10

Disusun oleh: Abdul Muhid

1. Konsep Dasar Algoritma

  • Definisi: Urutan langkah logis menyelesaikan masalah. Menjadi fondasi dasar pemrograman.
  • Sifat (Donald Knuth): Harus memiliki akhir (Finiteness), Jelas (Definiteness), Punya Input & Output, serta Efektif dikerjakan.
  • Pilar Berpikir Komputasional:
    • Dekomposisi: Memecah masalah besar.
    • Abstraksi: Fokus info relevan saja.
    • Pengenalan Pola: Mencari kesamaan.
    • Algoritma: Menuliskan langkah logisnya.

2. Variabel, Tipe Data & Operator

  • Aturan Variabel: Tidak boleh diawali angka dan tanda hubung (-). Boleh diawali huruf atau garis bawah (_).
  • Tipe Data:
    • Integer: Bilangan bulat (tanpa desimal), cocok untuk menghitung jumlah barang/rakaat.
    • Array (Larik): Kumpulan data sejenis dengan indeks numerik.
  • Operator: Mod (sisa pembagian), Div (hasil bagi bulat), Logika AND (mensyaratkan kedua kondisi wajib benar).

3. Flowchart & Struktur Kontrol

  • Simbol Utama Flowchart:
    Oval (Mulai/Selesai), Jajar Genjang (Input/Output), Persegi Panjang (Proses), Belah Ketupat (Kondisi/Percabangan).
  • Percabangan (Selection): Menggunakan kondisi "Jika-Maka" (If-Then) untuk mengambil keputusan berdasarkan syarat tertentu.
  • Perulangan (Looping): Format for...to...do untuk jumlah perulangan yang sudah pasti. Jika ada perulangan di dalam perulangan, jumlah operasinya menjadi berlipat ganda!

4. Mengenal Struktur Data

  • Queue (Antrean): Menggunakan prinsip FIFO (First In First Out) - Yang pertama masuk adalah yang pertama keluar.
  • Stack (Tumpukan): Menggunakan prinsip LIFO (Last In First Out) - Data yang masuk paling akhir justru akan dikeluarkan pertama.
  • Tree (Pohon): Digunakan untuk menyimpan data hierarki / silsilah.
  • Graph (Graf): Digunakan untuk menyimpan data berbentuk jaringan (contoh: peta rute).

5. Pencarian & Pengurutan

  • Pencarian (Searching):
    • Linear Search: Memeriksa urut satu per satu.
    • Binary Search: Sangat cepat karena membagi dua ruang pencarian, TAPI syarat mutlaknya data harus sudah berurutan.
  • Pengurutan (Sorting):
    • Bubble Sort: Berefek gelembung, menukar data bersebelahan jika belum urut.
    • Selection Sort: Mencari nilai terkecil/terbesar lebih dulu.
    • Insertion Sort: Menyisipkan nilai ke posisi yang tepat.

๐Ÿ’ก Contoh Kehidupan: Algoritma

  • Algoritma: Memasak mi instan atau urutan wudu. Jika langkahnya terbalik atau terlewat, hasilnya tidak akan jadi atau tidak sah.
  • Dekomposisi: Mengurus acara perpisahan sekolah. Masalah besar ini dipecah ke panitia kecil: Seksi Acara, Seksi Konsumsi, dan Seksi Perlengkapan.
  • Abstraksi: Saat melihat peta Google Maps, kita hanya butuh melihat garis rute jalan dan nama tempat, tanpa perlu tahu warna genteng rumah warga.

๐Ÿ’ก Contoh Kehidupan: Struktur Data

  • Queue (Antrean): Beratur beli tiket bioskop atau jajan di kantin. Siapa yang datang awal, dilayani lebih dulu (FIFO).
  • Stack (Tumpukan): Tumpukan piring kotor di dapur. Piring yang ditaruh paling atas (terakhir) adalah yang pertama kali akan dicuci (LIFO).
  • Tree (Pohon): Struktur bagan organisasi sekolah (Kepala Sekolah ➔ Waka ➔ Guru ➔ Siswa).

๐Ÿ’ก Contoh Kehidupan: Cari & Urut

  • Linear Search: Mencari pulpen merah di dalam kotak pensil yang berantakan dengan mengeceknya satu per satu.
  • Binary Search: Mencari arti kata "Sistem" di Kamus Tebal. Buka tengahnya, jika terlihat huruf 'M', kita tahu harus mencari di paruh sebelah kanan. Jauh lebih hemat waktu!
  • Bubble Sort: Baris-berbaris dari pendek ke tinggi. Siswa terus bertukar tempat dengan teman di sebelahnya jika teman tersebut lebih pendek darinya.

Terima Kasih!

Mari kita lanjutkan dengan sesi tanya jawab
berdasarkan soal yang telah dikerjakan.

1 / 10

Selasa, 13 Oktober 2026

Kode Lengkap Berangkat Ke Sekolah

Tutorial Scratch: Berangkat Sekolah
Materi Scratch PPT
Slide 1 / 12
๐ŸŽฎ

Panduan Membuat Game Scratch:
"Berangkat Sekolah"

Pelajari langkah demi langkah membuat animasi interaktif perjalanan anak ke sekolah menggunakan blok kode Scratch.

1. Persiapan Aset

Siapkan 3 latar belakang (Backdrops) untuk panggung penceritaan.

๐Ÿ 

1. Rumah

Latar awal permainan saat karakter keluar dari rumah.

๐Ÿ›ฃ️

2. Jalan Raya

Lokasi anak menunggu dan mencegat bus umum.

๐Ÿซ

3. Sekolah

Latar tujuan akhir perjalanan anak turun dari bus.

Sprite: Anak

Tahap 1: Inisialisasi Game

Pengaturan awal saat bendera hijau diklik. Kita harus memastikan anak mulai dari rumah dengan posisi yang tepat.

  • Set latar belakang kembali ke Rumah.
  • Pastikan karakter terlihat (tampilkan).
  • Atur posisi awal (x: -180, y: -80).
ketika ๐Ÿ diklik
ganti latar ke [Rumah ▾]
tampilkan
pergi ke x: (-180) y: (-80)
Sprite: Anak

Tahap 2: Berjalan Keluar Rumah

Membuat animasi berjalan dengan perulangan dan pergantian kostum.

  • Gunakan blok perulangan ulang 20 kali.
  • Majukan karakter (tambah x sebesar 10).
  • Ganti kostum agar terlihat seperti melangkah.
  • Beri jeda agar gerakan tidak terlalu cepat.
ulang (20) kali
tambah x sebesar (10)
berikutnya kostum
tunggu (0.1) detik
Sprite: Anak

Tahap 3: Panggil Bus di Jalan Raya

Anak telah sampai di jalan dan menunggu bus.

  • Ubah latar menjadi Jalan Raya.
  • Set posisi anak untuk menunggu.
  • Berbicara memanggil bus.
  • Siarkan Pesan: "Bus Datang" agar sprite Bus mulai bergerak.
ganti latar ke [Jalan Raya ▾]
pergi ke x: (-160) y: (-80)
katakan [Pak Bus, stop!] selama (2) detik
siarkan [Bus Datang ▾]
Sprite: Anak

Tahap 4: Masuk ke Dalam Bus

Merespons saat bus sudah tiba di depannya.

  • Karakter menunggu pesan "Naik Bus" dari sprite Bus.
  • Ketika menerima pesan tersebut, sembunyikan karakter agar seolah-olah masuk ke dalam kendaraan.
ketika saya menerima [Naik Bus ▾]
sembunyikan
Sprite: Anak

Tahap 5: Turun di Depan Sekolah

Langkah akhir perjalanan anak.

  • Terima pesan "Anak Turun" saat sampai di latar Sekolah.
  • Posisikan anak dan tampilkan kembali.
  • Ucapkan terima kasih.
  • Siarkan perintah agar bus melanjutkan perjalanannya.
ketika saya menerima [Anak Turun ▾]
pergi ke x: (-50) y: (-80)
tampilkan
katakan [Terima kasih, Pak!] selama (2) detik
siarkan [Bus Lanjut Jalan ▾]
Sprite: Bus

Tahap 1: Awal Permainan

Pengaturan untuk sprite Bus saat permainan baru dimulai.

  • Karena di awal adegan berada di Rumah, bus tidak boleh terlihat.
  • Gunakan perintah sembunyikan segera setelah bendera hijau diklik.
ketika ๐Ÿ diklik
sembunyikan
Sprite: Bus

Tahap 2: Menjemput Anak

Bus merespons panggilan anak dari jalan raya.

  • Tunggu pesan "Bus Datang".
  • Posisi awal bus di ujung kanan (x: 240) lalu tampilkan.
  • Meluncur ke arah anak.
  • Setelah sampai, siarkan "Naik Bus" agar anak disembunyikan (masuk bus).
  • Beri jeda 1 detik penumpang naik.
ketika saya menerima [Bus Datang ▾]
pergi ke x: (240) y: (-60)
tampilkan
luncurkan (2) detik ke x: (-100) y: (-60)
siarkan [Naik Bus ▾]
tunggu (1) detik
Sprite: Bus

Tahap 3: Menuju Sekolah

Kode ini merupakan lanjutan langsung dari tahap menjemput (masih dalam satu blok).

  • Ubah layar belakang ke pemandangan Sekolah.
  • Reset posisi bus ke agak kiri, lalu luncurkan ke tengah layar (x: 0).
  • Siarkan "Anak Turun" agar sprite anak muncul kembali.
ganti latar ke [Sekolah ▾]
pergi ke x: (-100) y: (-60)
luncurkan (2) detik ke x: (0) y: (-60)
siarkan [Anak Turun ▾]
Sprite: Bus

Tahap 4: Menghilang

Akhir dari perjalanan bus setelah anak mengucapkan terima kasih.

  • Terima pesan "Bus Lanjut Jalan" dari anak.
  • Beri jeda sebentar.
  • Luncurkan bus ke tepi kanan layar (x: 280).
  • Gunakan perintah sembunyikan untuk mengakhiri aksi bus.
ketika saya menerima [Bus Lanjut Jalan ▾]
tunggu (1) detik
luncurkan (2) detik ke x: (280) y: (-60)
sembunyikan

๐Ÿ“ก Ringkasan Alur Broadcast

Bus Datang

Dikirim oleh Anak ketika sampai di tepi jalan raya. Memanggil bus untuk muncul dari kanan layar.

Naik Bus

Dikirim oleh Bus saat berhenti di depan anak. Memerintahkan sprite Anak untuk sembunyi (masuk bus).

Anak Turun

Dikirim oleh Bus saat sudah sampai di latar Sekolah. Memerintahkan Anak untuk kembali tampil di layar.

Bus Lanjut Jalan

Dikirim oleh Anak setelah berterima kasih. Memerintahkan bus meluncur keluar layar lalu sembunyi.

Materi Game Berangkat Sekolah

Membuat Game Scratch: Berangkat Sekolah
Tutorial Scratch Interaktif
Slide 1 dari 6
๐Ÿซ

Membuat Game Sederhana:
"Berangkat Sekolah"

Belajar membuat animasi dan game interaktif menggunakan blok pemrograman Scratch langkah demi langkah.

✨ Karakter Bergerak ๐ŸšŒ Naik Bus Umum ๐ŸŽ’ Sampai di Sekolah
๐Ÿ“ฆ

1. Persiapan Aset

Background dan Sprites yang dibutuhkan dalam Scratch

๐Ÿ–ผ️ Latar Belakang (Backdrops)

  • Rumah: Latar awal karakter mulai keluar.
  • Jalan Raya / Halte: Tempat menunggu bus.
  • Sekolah: Latar akhir tujuan akhir perjalanan.

๐Ÿฆธ Karakter & Objek (Sprites)

  • Anak Sekolah: Karakter utama yang berjalan kaki.
  • Bus: Kendaraan umum penjemput ke sekolah.
๐Ÿšถ‍♂️

Langkah 1 & 2: Keluar Rumah & Menunggu Bus

Mulai pergerakan anak menuju jalan raya

Langkah 1

Anak Keluar Rumah

Atur posisi awal anak dengan bendera hijau (when green flag clicked) di dekat rumah. Gunakan blok perulangan move 10 steps untuk berjalan.

Langkah 2

Memanggil Bus

Setelah anak sampai di jalan raya, gunakan broadcast [Bus Datang]. Pada sprite bus, buat event penerima untuk meluncur dengan glide.

๐ŸšŒ

Langkah 3 & 4: Masuk Bus & Perjalanan

Karakter naik ke dalam bus dan meluncur ke sekolah

Langkah 3

Masuk ke Dalam Bus

Ketika bus berhenti, sembunyikan sprite anak menggunakan hide. Tambahkan efek suara klakson atau rem agar lebih menarik.

Langkah 4

Bus Menuju Sekolah

Sprite Bus membawa anak meluncur ke area sekolah dengan glide 2 secs, lalu ubah latar dengan switch backdrop [Sekolah].

๐Ÿ

Langkah 5: Anak Turun & Bus Menghilang

Penyelesaian game dan akhir cerita

  • 1 Munculkan Kembali Anak: Gunakan perintah show di depan pintu bus pada koordinat sekolah.
  • 2 Bus Melanjutkan Perjalanan: Berikan perintah glide agar bus bergerak keluar dari layar.
  • 3 Selesai: Akhiri gerakan bus dengan blok hide, menandakan game selesai atau lanjut ke level berikutnya!
๐ŸŽ‰

Selamat Mencoba!

Kamu telah mempelajari logika dasar pembuatan game interaktif cerita pendek di Scratch. Kembangkan kreativitasmu dengan menambahkan fitur suara atau level baru!

Sabtu, 19 September 2026

KUIS & REFLEXI INFORMATIKA - ANALISIS DATA

Kuis & Refleksi Informatika
Logo Sekolah

Asesmen Informatika:
ANALISIS DATA

MA ALFATICH

Guru Pengampu: ABDUL MUHID

Jurnal Refleksi Siswa

Selasa, 08 September 2026

ANALISIS DATA

Analisis Data - Presentasi Pembelajaran

Analisis Data

Mata Pelajaran Informatika • Kelas 11 (Fase F)

Pengajar Abdul Muhid
Institusi MA Alfatich
Pengantar

Mengapa Analisis Data Penting?

Di era digital, data sering disebut sebagai "The New Oil". Data yang diolah dengan benar dapat memberikan wawasan berharga untuk pengambilan keputusan yang tepa.

Definisi: Proses inspeksi, pembersihan, transformasi, dan pemodelan data untuk menemukan informasi berguna serta mendukung kesimpulan.
Struktur Materi

Peta Konsep Analisis Data

1. Pengumpulan Data

Metode perolehan data melalui Survey, Web Scraping, dan Sensor IoT.

2. Pemrosesan Data

Tahap pembersihan (Cleaning) dan transformasi agar data siap dianalisis.

3. Visualisasi & Pengambilan Keputusan

Menyajikan informasi visual berbentuk grafik untuk mengambil aksi strategis.

Tahapan Teknis

Siklus Analisis Data (Data Life Cycle)

  • Data Discovery: Menentukan tujuan analisis dan kebutuhan informasi.
  • Data Preparation: Mengumpulkan data dari berbagai sumber (database, file CSV).
  • Data Processing (Cleaning): Membuang data rusak/duplikat. Tahap krusial karena "Garbage In, Garbage Out".
  • Data Analysis & Communication: Menerapkan teknik statistik dan menyajikan hasil akhir.
Alat Profesional

Analisis dengan Python (Library Pandas)

Di Kelas 11 (Fase F), siswa dikenalkan pada bahasa pemrograman Python menggunakan library Pandas untuk data terstruktur:

import pandas as pd
data = pd.read_csv('data_penjualan.csv')
print(data.head())
rata_rata = data['total_harga'].mean()
Penyajian Informasi

Jenis-Jenis Visualisasi Data

๐Ÿ“Š Bar Chart

Cocok untuk membandingkan kategori data (misal: jumlah siswa per jurusan).

๐Ÿ“ˆ Line Chart

Cocok untuk melihat tren perkembangan data dari waktu ke waktu.

๐Ÿฅง Pie Chart

Melihat persentase kontribusi bagian terhadap keseluruhan.

๐Ÿ“ Scatter Plot

Mengetahui korelasi atau hubungan antara dua variabe.

Studi Kasus

Contoh Analisis: Pentingnya Data Cleaning

Pertanyaan: Mengapa tahap Data Cleaning sangat menyita waktu namun menjadi penentu utama kualitas hasil analisis?

Jawaban Konseptual: Data dunia nyata sering kali kotor (nilai kosong/salah ketik). Jika data kotor dianalisis, kesimpulan yang dihasilkan pasti keliru karena prinsip Garbage In, Garbage Out.
Evaluasi Pembelajaran

Latihan Soal Pilihan Ganda

  • 1. Proses merapikan data mentah disebut: Data Transformation.
  • 2. Istilah data ekstrem/jauh berbeda: Outlier (Pencilan).
  • 3. Format file dataset umum: .CSV (Comma Separated Values).
  • 4. Library Python khusus grafik: Matplotlib.
  • 5. Arti Mean dalam statistik: Rata-rata hitung.
Kesimpulan

Rangkuman Materi

  • ๐Ÿš€ Analisis data mengubah angka mentah menjadi informasi bermakna.
  • ๐Ÿงน Data Cleaning adalah fondasi mutlak untuk menjaga akurasi.
  • ๐Ÿ Python (Pandas & Matplotlib) adalah standar industri modern.
  • ๐Ÿ’ก Selalu junjung tinggi etika dan privasi dalam mengelola data.

Terima Kasih

"Analisis data yang akurat membimbing kita menemukan kebenaran objektif untuk kemaslahatan bersama."

Abdul Muhid • Informatika MA Alfatich