Quiz For Loop JavaScript
Perhatikan kode berikut dengan teliti. Apa output yang dihasilkan?
Output yang benar adalah:
Trace Execution:
- i=1: j=1, (1+1)=2, output: "2 | "
- i=2: j=1, (2+1)=3; j=2, (2+2)=4, output: "3 4 | "
- i=3: j=1, (3+1)=4; j=2, (3+2)=5; j=3, (3+3)=6, output: "4 5 6 | "
- i=4: j=1, (4+1)=5; j=2, (4+2)=6; j=3, (4+3)=7; j=4, (4+4)=8, output: "5 6 7 8 | "
Hasil Final: "2 | 3 4 | 4 5 6 | 5 6 7 8 | "
Kode berikut bertujuan menghitung faktorial dari 5. Namun ada error yang menyebabkan hasilnya salah. Identifikasi masalahnya!
Apa yang salah dan bagaimana memperbaikinya?
Analisis Bug:
- Masalah: Inisialisasi result = 0
- Dampak: 0 x 1 = 0, 0 x 2 = 0, hasilnya selalu 0
- Solusi: Ubah menjadi let result = 1
- Proses Benar: 1 x 1 = 1, 1 x 2 = 2, 2 x 3 = 6, 6 x 4 = 24, 24 x 5 = 120
Konsep: Untuk perkalian beruntun (faktorial), nilai awal HARUS 1, bukan 0!