PJJ BAB: ALGORITMA DAN PEMROGRAMAN


MATERI INFORMATIKA KELAS X SMK

BAB: ALGORITMA DAN PEMROGRAMAN

A. Tujuan Pembelajaran

Setelah mempelajari materi ini, peserta didik diharapkan mampu:

  1. Menjelaskan pengertian algoritma.

  2. Menjelaskan karakteristik algoritma yang baik.

  3. Mengidentifikasi masalah yang dapat diselesaikan menggunakan algoritma.

  4. Menyusun langkah-langkah penyelesaian masalah secara sistematis.

  5. Membuat algoritma menggunakan bahasa natural.

  6. Membuat algoritma menggunakan pseudocode.

  7. Membuat algoritma dalam bentuk flowchart.

  8. Menerapkan algoritma sederhana dalam kehidupan sehari-hari dan pemrograman.


B. Pengertian Algoritma

Algoritma adalah urutan langkah-langkah yang logis, sistematis, dan terstruktur untuk menyelesaikan suatu masalah atau mencapai tujuan tertentu.

Sederhananya:

Masalah → Algoritma → Solusi

Contoh sederhana:

Masalah: Bagaimana cara menyalakan lampu?

Algoritmanya:

  1. Siapkan sumber listrik.

  2. Hubungkan rangkaian listrik.

  3. Tekan saklar.

  4. Lampu menyala.

Dalam pemrograman, algoritma menjadi dasar sebelum seseorang membuat program.


C. Contoh Algoritma dalam Kehidupan Sehari-hari

Algoritma tidak hanya digunakan dalam komputer.

Contohnya:

1. Algoritma Membuat Mi Instan

  1. Siapkan mi dan peralatan.

  2. Masukkan air ke dalam panci.

  3. Panaskan air.

  4. Tunggu hingga air mendidih.

  5. Masukkan mi.

  6. Tunggu beberapa menit.

  7. Masukkan bumbu.

  8. Aduk mi.

  9. Mi siap disajikan.

2. Algoritma Menghidupkan Sepeda Motor

  1. Pastikan kunci kontak tersedia.

  2. Masukkan kunci.

  3. Putar kunci ke posisi ON.

  4. Pastikan kondisi aman.

  5. Tekan tombol starter.

  6. Mesin menyala.

3. Algoritma Menghitung Luas Persegi Panjang

Diketahui:

  • Panjang = P

  • Lebar = L

Langkah:

  1. Masukkan nilai panjang.

  2. Masukkan nilai lebar.

  3. Hitung Luas = Panjang × Lebar.

  4. Tampilkan luas.


D. Ciri-Ciri Algoritma yang Baik

Algoritma yang baik memiliki beberapa karakteristik:

1. Memiliki Input

Algoritma dapat menerima data masukan.

Contoh:

Masukkan nilai panjang dan lebar.

2. Memiliki Output

Algoritma menghasilkan keluaran.

Contoh:

Menampilkan luas persegi panjang.

3. Langkah-Langkah Jelas

Setiap langkah harus mudah dipahami dan tidak membingungkan.

4. Logis

Langkah yang dibuat harus masuk akal.

5. Terbatas

Algoritma harus memiliki akhir atau berhenti setelah sejumlah langkah tertentu.

6. Efektif

Setiap langkah harus dapat dilaksanakan untuk mendapatkan solusi.


E. Struktur Dasar Algoritma

Secara umum terdapat tiga struktur dasar algoritma:

1. Sequence / Urutan

Instruksi dilakukan secara berurutan.

Contoh:

1. Masukkan nilai A
2. Masukkan nilai B
3. Hitung A + B
4. Tampilkan hasil

2. Selection / Percabangan

Digunakan ketika terdapat kondisi tertentu.

Contoh:

Jika nilai >= 75
    maka "LULUS"
Jika tidak
    maka "TIDAK LULUS"

Contoh dalam kehidupan:

Jika hujan, membawa payung.
Jika tidak hujan, tidak membawa payung.


3. Looping / Perulangan

Digunakan ketika suatu proses harus dilakukan berulang kali.

Contoh:

Ulangi sebanyak 5 kali:
    Tampilkan "Halo"

Hasil:

Halo
Halo
Halo
Halo
Halo

F. Cara Menyusun Algoritma

Untuk membuat algoritma, gunakan langkah berikut:

Langkah 1 — Tentukan masalah

Contoh:

Menghitung nilai rata-rata siswa.

Langkah 2 — Tentukan input

Input:

  • Nilai Bahasa Indonesia

  • Nilai Matematika

  • Nilai Informatika

Langkah 3 — Tentukan proses

Rata-rata = (Nilai1 + Nilai2 + Nilai3) / 3

Langkah 4 — Tentukan output

Output:

Nilai rata-rata siswa.


G. Algoritma dengan Bahasa Natural

Bahasa natural adalah algoritma yang ditulis menggunakan bahasa sehari-hari.

Contoh:

Masalah: Menentukan apakah siswa lulus.

1. Masukkan nilai siswa.
2. Jika nilai lebih besar atau sama dengan 75,
   tampilkan "LULUS".
3. Jika nilai kurang dari 75,
   tampilkan "TIDAK LULUS".
4. Selesai.

H. Pseudocode

Pseudocode adalah penulisan algoritma menggunakan struktur yang menyerupai bahasa pemrograman tetapi mudah dipahami manusia.

Contoh:

ALGORITMA MenentukanKelulusan

INPUT nilai

IF nilai >= 75 THEN
    OUTPUT "LULUS"
ELSE
    OUTPUT "TIDAK LULUS"
ENDIF

Contoh lain:

ALGORITMA LuasPersegiPanjang

INPUT panjang
INPUT lebar

luas ← panjang × lebar

OUTPUT luas

I. Flowchart

Flowchart adalah diagram yang digunakan untuk menggambarkan alur atau langkah-langkah algoritma.

Simbol dasar:

SimbolNamaFungsi
OvalTerminatorMulai/selesai
Jajar genjangInput/OutputInput atau output
Persegi panjangProcessProses
Belah ketupatDecisionPercabangan/kondisi
PanahFlowlineMenunjukkan arah alur

Contoh algoritma menentukan kelulusan:

      MULAI
        ↓
   Input nilai
        ↓
   Nilai >= 75?
      ↙       ↘
    YA         TIDAK
     ↓           ↓
  "LULUS"   "TIDAK LULUS"
      ↘       ↙
        ↓
      SELESAI

J. Contoh Algoritma pada Projek Arduino

Karena siswa SMK juga dapat belajar melalui projek, algoritma dapat dikaitkan dengan Arduino.

Contoh: Lampu Otomatis

Masalah: Lampu menyala ketika tombol ditekan.

Algoritma:

1. Mulai.
2. Siapkan tombol dan LED.
3. Baca kondisi tombol.
4. Jika tombol ditekan:
      LED menyala.
5. Jika tombol tidak ditekan:
      LED mati.
6. Kembali membaca tombol.

Pseudocode:

MULAI

Baca tombol

JIKA tombol ditekan
    LED = ON
JIKA tidak
    LED = OFF

ULANGI

SELESAI

Dengan cara ini siswa dapat memahami bahwa coding sebenarnya adalah penerapan algoritma ke dalam bahasa pemrograman.


K. Ringkasan Materi

Algoritma adalah langkah-langkah sistematis untuk menyelesaikan masalah.

Tiga struktur utama algoritma:

  1. Sequence → urutan.

  2. Selection → percabangan.

  3. Looping → perulangan.

Algoritma dapat ditulis menggunakan:

  • Bahasa natural

  • Pseudocode

  • Flowchart


KERJAKAN SOAL ESSAY

Soal 1

Jelaskan pengertian algoritma dengan menggunakan bahasa kalian sendiri!

Soal 2

Sebutkan dan jelaskan 3 karakteristik algoritma yang baik!

Soal 3

Jelaskan perbedaan antara sequence, selection, dan looping!

Soal 4

Buatlah algoritma menggunakan bahasa natural untuk menghitung luas persegi!

Soal 5

Buatlah pseudocode untuk menentukan apakah seorang siswa lulus atau tidak lulus jika nilai minimal kelulusan adalah 75!

Soal 6

Jelaskan apa yang dimaksud dengan flowchart dan apa kegunaannya!

Soal 7

Sebutkan minimal 5 simbol flowchart dan jelaskan fungsinya!

Soal 8

Buatlah algoritma untuk menyalakan lampu menggunakan tombol!

Soal 9

Buatlah algoritma sederhana untuk menghitung rata-rata tiga nilai siswa!

Soal 10

Buatlah algoritma dari kegiatan berikut:

"Ketika sensor mendeteksi objek pada jarak kurang dari 10 cm, buzzer berbunyi. Jika objek lebih dari atau sama dengan 10 cm, buzzer mati."


LKPD

KERJAKAN LEMBAR KERJA PESERTA DIDIK


A. Tujuan Kegiatan

Setelah mengerjakan LKPD ini, peserta didik mampu:

  • Mengidentifikasi masalah.

  • Menentukan input, proses, dan output.

  • Membuat algoritma.

  • Membuat pseudocode.

  • Membuat flowchart.

  • Menerapkan algoritma pada masalah sederhana.


KEGIATAN 1 — Mengenal Algoritma

Perhatikan kegiatan berikut:

"Membuat Teh Manis"

Tuliskan langkah-langkahnya secara berurutan.

Jawaban:

  1. .................................................................

  2. .................................................................

  3. .................................................................

  4. .................................................................

  5. .................................................................

  6. .................................................................

  7. .................................................................

Pertanyaan

  1. Mengapa langkah-langkah tersebut harus dilakukan secara berurutan?

....................................................................................

  1. Apa yang terjadi jika langkahnya tidak berurutan?

....................................................................................


KEGIATAN 2 — Input, Proses, Output

Perhatikan masalah:

Program menghitung luas persegi panjang.

Lengkapi tabel berikut.

KomponenJawaban
Input................................
Proses................................
Output................................

Kemudian tuliskan algoritmanya:

1. ................................................
2. ................................................
3. ................................................
4. ................................................

KEGIATAN 3 — Membuat Pseudocode

Permasalahan

Buatlah pseudocode untuk menentukan apakah siswa LULUS atau TIDAK LULUS.

Ketentuan:

  • Nilai ≥ 75 → LULUS

  • Nilai < 75 → TIDAK LULUS

Tuliskan pseudocode kalian:

ALGORITMA ....................................

INPUT .........................................

IF ............................................
    ...........................................
ELSE
    ...........................................
ENDIF

OUTPUT ........................................

KEGIATAN 4 — Membuat Flowchart

Buatlah flowchart berdasarkan algoritma berikut:

Program meminta nilai siswa. Jika nilai ≥ 75, tampilkan LULUS. Jika nilai < 75, tampilkan TIDAK LULUS.

Gambarkan flowchart di bawah ini:

┌─────────────────────┐
│                     │
│      MULAI          │
│                     │
└──────────┬──────────┘
           │
           ↓
┌─────────────────────┐
│                     │
│                     │
└──────────┬──────────┘
           │
           ↓
       ◇────────◇
      /          \
     /            \
    ↓              ↓
   YA            TIDAK
    ↓              ↓
   ?                ?
    \              /
     \            /
      ↓          ↓
       SELESAI

KEGIATAN 5 — Tantangan Projek

Kasus

Sekolah ingin membuat lampu otomatis sederhana.

Ketentuannya:

  • Jika tombol ditekan → lampu ON.

  • Jika tombol tidak ditekan → lampu OFF.

Tugas Kelompok

1. Tentukan Input

....................................................

2. Tentukan Proses

....................................................

3. Tentukan Output

....................................................

4. Buat algoritma

1. ................................................
2. ................................................
3. ................................................
4. ................................................
5. ................................................

5. Buat pseudocode

....................................................
....................................................
....................................................
....................................................

6. Buat flowchart

Gambarkan flowchart pada kotak berikut:

┌──────────────────────────────────────────────┐
│                                              │
│                                              │
│                                              │
│              FLOWCHART                       │
│                                              │
│                                              │
│                                              │
│                                              │
└──────────────────────────────────────────────┘

KEGIATAN 6 — Tantangan Berpikir Komputasional

Kasus

Sebuah tempat parkir menggunakan sensor untuk mendeteksi kendaraan.

Ketentuan:

  • Jika kendaraan terdeteksi → palang terbuka.

  • Jika kendaraan tidak terdeteksi → palang tertutup.

Buat:

A. Input:
....................................................

B. Proses:
....................................................

C. Output:
....................................................

D. Algoritma:
....................................................

E. Pseudocode:
....................................................

F. Flowchart:
Gambarkan pada lembar kerja.


RUBRIK PENILAIAN LKPD

AspekSkor 1Skor 2Skor 3Skor 4
Pemahaman algoritmaKurangCukupBaikSangat baik
Menentukan input/proses/outputKurangCukupBaikSangat baik
PseudocodeKurangCukupBaikSangat baik
FlowchartKurangCukupBaikSangat baik
Kerja samaKurangCukupBaikSangat baik
PresentasiKurangCukupBaikSangat baik

Skor maksimal = 24

Nilai:

Nilai = (Skor diperoleh ÷ 24) × 100



Post a Comment

1 Comments

  1. Algoritma adalah langkah-langkah logis dan sistematis untuk menyelesaikan masalah.

    Contoh: jelas, logis, memiliki input/output, terbatas, dan efektif.

    Sequence = urutan, selection = percabangan, looping = perulangan.

    Luas = sisi × sisi.

    Jika nilai ≥ 75 → LULUS, selain itu → TIDAK LULUS.

    Flowchart adalah diagram yang menggambarkan alur algoritma.

    Terminator, process, input/output, decision, flowline.
    8–10. Jawaban disesuaikan dengan algoritma yang dibuat siswa, selama logis dan langkahnya

    ReplyDelete