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

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

Ikuti Tryout SNBT & Menangkan E-Wallet 100rb

Habis dalam

02

:

20

:

25

:

43


1

1


Iklan

Haris W

Level 1

15 Februari 2023 15:21

<p>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.</p><p>Untuk memperbaiki program, kita perlu menambahkan pernyataan i++ pada perulangan for pertama, seperti berikut:</p><p>Copy code<br>#include &lt;stdio.h&gt;<br>#include &lt;stdlib.h&gt;</p><p>int main() {<br>&nbsp; &nbsp;int n, total = 0;<br>&nbsp; &nbsp;scanf("%d", &amp;n);</p><p>&nbsp; &nbsp;for (int i = 1; i &lt;= n; i++) {<br>&nbsp; &nbsp; &nbsp; &nbsp;for (int j = 1; j &lt;= i; j++) {<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;total += j;<br>&nbsp; &nbsp; &nbsp; &nbsp;}<br>&nbsp; &nbsp;}</p><p>&nbsp; &nbsp;printf("total: %d\n", total);</p><p>&nbsp; &nbsp;return 0;<br>}<br>Dengan program yang sudah diperbaiki, jika kita memasukkan nilai n = 5, maka outputnya akan menjadi:</p><p>total: 15<br>Opsi jawaban yang paling mendekati adalah (a) 30, tetapi ini bukanlah jawaban yang benar setelah memperbaiki program.</p>

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.


Iklan

Buka akses jawaban yang telah terverifikasi

Mau jawaban yang terverifikasi?

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!