Muhammad H
03 Februari 2023 04:26
Iklan
Muhammad H
03 Februari 2023 04:26
Pertanyaan
Perhatikan Program berikut ini!
#include <stdio.h> #include <stdlib.h> int main()
{
int n, total = 0 scanf("%d", &n);
for (inti = 1; i <= n; i)
}
for lintj = 1 =1; j <= i ;++j) total += j
printf("total: %d\n", total);
Output dari program tersebut apabila kita memasukkan nilai n = 5 adalah
Select one:
O b. 45
O c. 35
O d. 40
O a. 30
1
1
Iklan
Haris W
15 Februari 2023 15:21
Terdapat kesalahan pada program tersebut. Pada perulangan for pertama, tidak ada pernyataan untuk menginkrementasi nilai i, sehingga program akan mengalami infinite loop dan terus berjalan tanpa henti.
Untuk memperbaiki program, kita perlu menambahkan pernyataan i++ pada perulangan for pertama, seperti berikut:
Copy code
#include <stdio.h>
#include <stdlib.h>
int main() {
int n, total = 0;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
total += j;
}
}
printf("total: %d\n", total);
return 0;
}
Dengan program yang sudah diperbaiki, jika kita memasukkan nilai n = 5, maka outputnya akan menjadi:
total: 15
Opsi jawaban yang paling mendekati adalah (a) 30, tetapi ini bukanlah jawaban yang benar setelah memperbaiki program.
· 0.0 (0)
Iklan
Tanya ke AiRIS
Yuk, cobain chat dan belajar bareng AiRIS, teman pintarmu!

LATIHAN SOAL GRATIS!
Drill Soal
Latihan soal sesuai topik yang kamu mau untuk persiapan ujian


Perdalam pemahamanmu bersama Master Teacher
di sesi Live Teaching, GRATIS!