📝 Kuis Sumatif Informatika
Berpikir Komputasional • Kelas VIII • Fase D
ASESMEN SUMATIF
Kuis Berpikir Komputasional
Jawablah seluruh pertanyaan dengan teliti.
Nilai akan dihitung secara otomatis setelah jawaban dikirim.
TOTAL NILAI
100
4 Pilihan Ganda + 1 Esai
👤 Identitas Peserta Didik
HASIL PENILAIAN
–
Hasil kuis Berpikir Komputasional
Nilai
0
dari 100
Kategori
–
Status
–
🔍 Umpan Balik Pembelajaran
Status Penyimpanan
Nilai telah dihitung pada sistem.
🖨️ Cetak Hasil
🔄 Kerjakan Kembali
const quizForm = document.getElementById("quizForm");
quizForm.addEventListener("submit", function(event) {
event.preventDefault();
// ========================================== // IDENTITAS // ==========================================
const nama = document.getElementById("nama").value.trim();
const kelas = document.getElementById("kelas").value;
const esai = document.getElementById("esai").value.trim();
if (!nama) {
alert("Silakan masukkan nama lengkap.");
document.getElementById("nama").focus();
return;
}
if (!kelas) {
alert("Silakan pilih kelas.");
document.getElementById("kelas").focus();
return;
}
// ========================================== // JAWABAN // ==========================================
const s1 = document.querySelector( 'input[name="soal1"]:checked' );
const s2 = document.querySelector( 'input[name="soal2"]:checked' );
const s3 = document.querySelector( 'input[name="soal3"]:checked' );
const s4 = document.querySelector( 'input[name="soal4"]:checked' );
if (!s1 || !s2 || !s3 || !s4) {
alert( "Mohon jawab seluruh soal pilihan ganda terlebih dahulu." );
return;
}
// ========================================== // PERHITUNGAN NILAI // ==========================================
let skor = 0;
let feedback = [];
// SOAL 1
if (s1.value === "b") {
skor += 15;
feedback.push( "✅ TP 1 – Dekomposisi: Jawaban tepat. Anda mampu memahami bahwa masalah besar perlu diuraikan menjadi bagian yang lebih sederhana." );
} else {
feedback.push( "⚠️ TP 1 – Dekomposisi: Masih perlu memahami bahwa dekomposisi berarti memecah masalah kompleks menjadi bagian-bagian yang lebih sederhana." );
}
// SOAL 2
if (s2.value === "b") {
skor += 15;
feedback.push( "✅ TP 2 – Abstraksi: Jawaban tepat. Anda mampu memilih informasi penting dan mengabaikan informasi yang tidak relevan." );
} else {
feedback.push( "⚠️ TP 2 – Abstraksi: Perlu memahami bahwa abstraksi digunakan untuk menyaring informasi penting dari suatu masalah." );
}
// SOAL 3
if (s3.value === "b") {
skor += 20;
feedback.push( "✅ TP 3 – AI Literacy: Jawaban tepat. AI perlu digunakan secara kritis, diverifikasi, dan disesuaikan dengan kondisi nyata." );
} else {
feedback.push( "⚠️ TP 3 – AI Literacy: Ingat bahwa hasil AI tidak selalu benar sehingga harus diverifikasi dan dibandingkan dengan kondisi nyata." );
}
// SOAL 4
if (s4.value === "b") {
skor += 20;
feedback.push( "✅ TP 4 – Evaluasi: Jawaban tepat. Solusi perlu dipertimbangkan berdasarkan efektivitas, kemudahan, penerapan, dan kelemahannya." );
} else {
feedback.push( "⚠️ TP 4 – Evaluasi: Evaluasi solusi harus mempertimbangkan kelayakan dan efektivitas penerapannya." );
}
// ========================================== // PENILAIAN ESAI // ==========================================
if (esai.length >= 100) {
skor += 30;
feedback.push( "✅ Refleksi: Jawaban esai menunjukkan refleksi yang cukup lengkap mengenai penerapan Berpikir Komputasional." );
}
else if (esai.length >= 20) {
skor += 15;
feedback.push( "🟡 Refleksi: Jawaban sudah diberikan, tetapi masih dapat dikembangkan agar lebih lengkap dan menunjukkan hubungan antar tahapan Berpikir Komputasional." );
}
else {
feedback.push( "⚠️ Refleksi: Jawaban esai belum memenuhi panjang minimal. Lengkapi dengan penjelasan mengenai Dekomposisi, Pola, Abstraksi, dan Algoritma." );
}
// ========================================== // KATEGORI // ==========================================
let kategori;
let status;
if (skor >= 85) {
kategori = "Sangat Baik (A)";
status = "Tuntas & Pengayaan";
}
else if (skor >= 70) {
kategori = "Baik (B)";
status = "Tuntas";
}
else if (skor >= 50) {
kategori = "Cukup (C)";
status = "Tuntas Minimal";
}
else {
kategori = "Perlu Bimbingan (D)";
status = "Perlu Remedial";
}
// ========================================== // TAMPILKAN HASIL // ==========================================
document.getElementById("hasilNama").innerText = nama + " • " + kelas;
document.getElementById("hasilSkor").innerText = skor;
document.getElementById("hasilKategori").innerText = kategori;
document.getElementById("hasilStatus").innerText = status;
document.getElementById("feedback").innerHTML = feedback .map(item => `
${item}
`) .join("");
// ========================================== // TAMPILKAN HASIL // ==========================================
document.getElementById("hasil").classList.remove("hidden");
document.getElementById("hasil").scrollIntoView({ behavior: "smooth" });
// ========================================== // SIMPAN SEMENTARA DI BROWSER // ==========================================
const dataNilai = {
waktu: new Date().toLocaleString("id-ID"),
nama: nama,
kelas: kelas,
soal1: s1.value,
soal2: s2.value,
soal3: s3.value,
soal4: s4.value,
esai: esai,
skor: skor,
kategori: kategori,
status: status
};
localStorage.setItem( "hasilKuis", JSON.stringify(dataNilai) );
document.getElementById("statusSimpan").innerText = "Nilai berhasil dihitung dan disimpan pada perangkat ini.";
});

Tinggalkan Balasan