Pengertian, struktur, dan studi kasus Psedocode

Pseudocode Kelas XI: Pengertian, Struktur, Contoh, Tugas dan Jawaban
KKA • FASE F • KELAS XI

Pseudocode: Materi, Contoh, Tugas, dan Jawaban Lengkap

Panduan mudah untuk mengubah masalah menjadi langkah algoritmis, menuliskannya dalam pseudocode, menerapkannya ke Python, dan menguji hasil program.

✍️ Rodhi Faisal Mufid, S.Kom.📘 Koding dan Kecerdasan Artifisial⏱️ Waktu baca ±15 menit

1. Apa Itu Pseudocode?

Pseudocode adalah penulisan langkah-langkah algoritma menggunakan bahasa sederhana yang menyerupai kode program. Pseudocode digunakan untuk merencanakan logika sebelum program ditulis dalam bahasa pemrograman seperti Python, JavaScript, Java, atau C++.

Intinya: pseudocode menjelaskan apa yang harus dilakukan program dan bagaimana urutan prosesnya, tanpa terikat ketat pada aturan sintaks bahasa tertentu.

Pseudocode bukan program yang langsung dijalankan komputer. Akan tetapi, pseudocode yang baik dapat diterjemahkan menjadi kode program dengan lebih mudah karena urutan input, proses, keputusan, perulangan, dan output sudah dirancang terlebih dahulu.

2. Tujuan dan Manfaat Pseudocode

🧠 Memahami alur solusiMasalah yang rumit dipecah menjadi langkah kecil dan berurutan.
🔎 Menemukan kesalahanKesalahan logika dapat diketahui sebelum menulis banyak kode.
🌉 Menjembatani ide dan kodeRancangan solusi lebih mudah diterjemahkan ke bahasa pemrograman.
🤝 Memudahkan kolaborasiAnggota tim dapat mendiskusikan logika tanpa bergantung pada satu bahasa.

3. Aturan Penulisan Pseudocode

Tidak ada satu aturan internasional yang mutlak, tetapi pseudocode harus konsisten dan mudah dipahami. Gunakan pedoman berikut:

  1. Awali dengan MULAI dan akhiri dengan SELESAI.
  2. Gunakan satu langkah untuk satu tindakan.
  3. Gunakan kata kerja yang jelas: INPUT, HITUNG, SIMPAN, TAMPILKAN.
  4. Gunakan indentasi untuk menunjukkan blok percabangan atau perulangan.
  5. Tuliskan nama variabel yang bermakna, misalnya nilai dan status.
  6. Pastikan setiap kemungkinan kondisi memperoleh hasil.
  7. Hindari mencampurkan terlalu banyak sintaks khusus Python ke pseudocode.
Kata kunciFungsiContoh
MULAI / SELESAIMenandai awal dan akhirMULAI
INPUTMenerima dataINPUT nilai
PROSES / HITUNGMengolah datarata_rata ← total / jumlah
JIKA / MAKAMembuat keputusanJIKA nilai ≥ 75 MAKA
JIKA TIDAKMenangani kondisi alternatifJIKA TIDAK status ← “Belum Lulus”
UNTUK / SELAMAMelakukan perulanganUNTUK i ← 1 SAMPAI 5
TAMPILKANMenghasilkan outputTAMPILKAN status

4. Struktur Dasar Pseudocode

A. Urutan atau sekuensial

MULAI
  INPUT panjang
  INPUT lebar
  luas ← panjang × lebar
  TAMPILKAN luas
SELESAI

B. Percabangan

MULAI
  INPUT nilai
  JIKA nilai >= 75 MAKA
    TAMPILKAN "LULUS"
  JIKA TIDAK
    TAMPILKAN "BELUM LULUS"
  AKHIR JIKA
SELESAI

C. Perulangan

MULAI
  UNTUK nomor ← 1 SAMPAI 5 LAKUKAN
    TAMPILKAN nomor
  AKHIR UNTUK
SELESAI

5. Memahami Analisis IPO

Sebelum membuat pseudocode, kenali Input–Process–Output (IPO). Analisis ini membantu menentukan data yang masuk, cara data diolah, dan hasil yang dikeluarkan.

INPUT
Data masuk
PROCESS
Aturan pengolahan
OUTPUT
Hasil
BagianPertanyaan panduanContoh
InputData apa yang dimasukkan?Nama dan nilai siswa
ProcessAturan apa yang digunakan?Membandingkan nilai dengan batas kelulusan
OutputInformasi apa yang ditampilkan?Nama dan status kelulusan

6. Contoh Lengkap: Menentukan Kelulusan

Permasalahan: masukkan nama dan nilai siswa. Jika nilai minimal 75, siswa dinyatakan LULUS. Jika kurang dari 75, siswa dinyatakan BELUM LULUS.

Langkah 1 — Analisis IPO

InputProcessOutput
nama, nilaiJika nilai ≥ 75 maka LULUS; selain itu BELUM LULUSnama, status

Langkah 2 — Pseudocode

MULAI
  INPUT nama
  INPUT nilai
  JIKA nilai >= 75 MAKA
    status ← "LULUS"
  JIKA TIDAK
    status ← "BELUM LULUS"
  AKHIR JIKA
  TAMPILKAN nama, status
SELESAI

Langkah 3 — Implementasi Python

nama = input("Nama siswa: ")
nilai = int(input("Nilai: "))

if nilai >= 75:
    status = "LULUS"
else:
    status = "BELUM LULUS"

print(nama, status)
Hubungannya: INPUT menjadi input(), JIKA menjadi if, JIKA TIDAK menjadi else, dan TAMPILKAN menjadi print().

7. Tugas Pseudocode: Penentu Predikat Nilai

TUGAS INDIVIDU — Studi Kasus Predikat Nilai

Buatlah solusi untuk menentukan predikat nilai siswa dengan ketentuan:

90–100: A (Sangat Baik) 80–89: B (Baik) 75–79: C (Cukup) 0–74: D (Perlu Bimbingan)

Nilai harus berada pada rentang 0–100. Jika nilai di luar rentang tersebut, program menampilkan “Nilai tidak valid”.

  1. Tuliskan judul dan identitas: nama, kelas, serta nomor absen.
  2. Tentukan INPUT, PROSES, dan OUTPUT.
  3. Buat pseudocode dengan percabangan yang tepat.
  4. Implementasikan ke dalam program Python.
  5. Uji menggunakan nilai 95, 85, 77, dan 60. Tambahkan satu nilai tidak valid.
  6. Tuliskan kesimpulan singkat.

8. Contoh Jawaban Lengkap Tugas

Catatan untuk siswa: pelajari alasan di balik urutan kondisinya. Jangan hanya menyalin. Setelah memahami contoh, coba tulis ulang menggunakan bahasamu sendiri.
A. Identitas dan Judul

Judul: Algoritma Penentu Predikat Nilai
Nama: ……………………
Kelas: ……………………
Nomor Absen: ……………………

B. Analisis IPO

BagianJawaban
InputNama siswa dan nilai siswa
ProcessMemvalidasi rentang nilai, lalu membandingkan nilai dengan batas setiap predikat menggunakan percabangan
OutputNama siswa, nilai, predikat, dan keterangan

C. Pseudocode Jawaban

MULAI
  INPUT nama
  INPUT nilai

  JIKA nilai < 0 ATAU nilai > 100 MAKA
    predikat ← "Tidak valid"
    keterangan ← "Nilai harus 0–100"
  JIKA TIDAK JIKA nilai >= 90 MAKA
    predikat ← "A"
    keterangan ← "Sangat Baik"
  JIKA TIDAK JIKA nilai >= 80 MAKA
    predikat ← "B"
    keterangan ← "Baik"
  JIKA TIDAK JIKA nilai >= 75 MAKA
    predikat ← "C"
    keterangan ← "Cukup"
  JIKA TIDAK
    predikat ← "D"
    keterangan ← "Perlu Bimbingan"
  AKHIR JIKA

  TAMPILKAN nama, nilai, predikat, keterangan
SELESAI

D. Implementasi Python

nama = input("Masukkan nama siswa: ")
nilai = int(input("Masukkan nilai: "))

if nilai < 0 or nilai > 100:
    predikat = "Tidak valid"
    keterangan = "Nilai harus 0–100"
elif nilai >= 90:
    predikat = "A"
    keterangan = "Sangat Baik"
elif nilai >= 80:
    predikat = "B"
    keterangan = "Baik"
elif nilai >= 75:
    predikat = "C"
    keterangan = "Cukup"
else:
    predikat = "D"
    keterangan = "Perlu Bimbingan"

print("\nHASIL PENILAIAN")
print("Nama       :", nama)
print("Nilai      :", nilai)
print("Predikat   :", predikat)
print("Keterangan :", keterangan)
Mengapa diperiksa dari nilai terbesar? Pada rangkaian if–elif–else, Python berhenti pada kondisi pertama yang benar. Memulai dari batas 90, lalu 80, lalu 75 membuat setiap rentang memperoleh predikat yang tepat.

9. Hasil Pengujian Program

No.NilaiHasil yang diharapkanStatus
195A — Sangat BaikBerhasil
285B — BaikBerhasil
377C — CukupBerhasil
460D — Perlu BimbinganBerhasil
5105Tidak valid — Nilai harus 0–100Berhasil

Contoh kesimpulan

Program berhasil menerima nama dan nilai siswa, memeriksa validitas nilai, menentukan predikat A, B, C, atau D sesuai rentang, serta menampilkan hasil yang benar pada seluruh data pengujian.

10. Kesalahan Umum dan Cara Memperbaikinya

KesalahanDampakPerbaikan
Memulai pemeriksaan dari nilai ≥ 75Nilai 95 langsung masuk kategori CPeriksa dari batas terbesar: 90, 80, lalu 75
Tidak memvalidasi nilaiNilai 120 dapat dianggap APeriksa nilai < 0 atau > 100 terlebih dahulu
Menggunakan beberapa if terpisahLebih dari satu kondisi dapat diperiksaGunakan if–elif–else
Lupa mengubah input menjadi angkaPerbandingan nilai gagalGunakan int(input(...))
Indentasi Python tidak konsistenMuncul IndentationErrorGunakan empat spasi pada isi percabangan

11. Pengembangan untuk Siswa yang Lebih Cepat

Setelah program dasar berhasil, pilih satu atau lebih tantangan berikut:

  • Tambahkan perulangan agar program dapat menilai beberapa siswa.
  • Simpan hasil beberapa siswa ke dalam sebuah daftar.
  • Hitung nilai rata-rata kelas.
  • Tampilkan jumlah siswa pada setiap predikat.
  • Buat fungsi khusus bernama tentukan_predikat(nilai).

12. Pertanyaan yang Sering Diajukan

Apakah pseudocode harus sama persis dengan Python?

Tidak. Pseudocode berfokus pada logika dan keterbacaan. Python memiliki sintaks khusus seperti titik dua dan indentasi yang wajib dipatuhi agar program dapat dijalankan.

Apakah pseudocode bisa menggunakan bahasa Indonesia?

Bisa. Gunakan bahasa yang jelas dan konsisten, misalnya MULAI, INPUT, JIKA, MAKA, TAMPILKAN, dan SELESAI.

Apa perbedaan algoritma, pseudocode, dan flowchart?

Algoritma adalah urutan penyelesaian masalah. Pseudocode menyajikannya dalam teks menyerupai kode, sedangkan flowchart menyajikannya dalam simbol dan panah.

Mengapa tugas harus diuji dengan beberapa nilai?

Setiap nilai mewakili cabang yang berbeda. Pengujian membuktikan bahwa seluruh kondisi dan batas rentang bekerja dengan benar.

Cara Mengumpulkan Tugas

Foto atau screenshot seluruh jawaban dengan jelas. Simpan sebagai PNG atau PDF, pastikan identitas, IPO, pseudocode, kode Python, hasil pengujian, dan kesimpulan dapat dibaca, lalu kirim ke grup kelas KKA.

Nama file: Nama_Kelas_Absen_TugasPseudocode
Contoh: Rina_XI-TKJ-1_12_TugasPseudocode.pdf

Koding dan Kecerdasan Artifisial (KKA) • Fase F • Kelas XI
Disusun oleh Rodhi Faisal Mufid, S.Kom.

Post a Comment

0 Comments