Di bagian ini kita akan membuat sebuah algoritma untuk menyelesaikan
permasalah menemukan rata-rata nilai kuis di sebuah kelas. Perhatikan
pernyataan dibawah ini:
A class of ten students took a quiz. The grades (integers in the range 0 to 100) for this quiz are available to you. Determine the class average on the quiz.
Untuk mendapatkan nilai rata-rata disebuah kelas kita harus
menjumlahkan semua nilai dari semua siswa, dan membaginya dengan jumlah siswa
tersebut. Untuk menyelesaikan masalah ini, kita harus menginputkan nilai dari
siswa tersebut, melakukan perhitungan, dan menampilkan hasil. Disini kita akan
menggunakan counter-controlled repetition untuk menginputkan semua nilai
dari siswa-siswa tersebut secara bersamaan. Contoh dibawah ini akan mengulangi
sebuah perintah sebanyak 10 kali. Counter-controlled repetition juga
biasa disebut definite repetition.
Pseudocode:
1 Set total to zero
2 Set grade counter to one
3
4 While grade counter is less than or equal to ten
5 Input the next grade
6 Add the grade into the total
7 Add one to the grade counter
8
9 Set the class average to the total divided by ten
10 Print the class average
C program:
1 /* Fig. 3.6: fig03_06.cProgram diatas akan menghasilkan output seperti gambar dibawah ini:
2 Class average program with counter-controlled repetition */
3 #include <stdio.h>
4
5 /* function main begins program execution */
6 int main( void )
7 {
8 int counter; /* number of grade to be entered next */
9 int grade; /* grade value */
10 int total; /* sum of grades input by user */
11 int average; /* average of grades */
12
13 /* initialization phase */
14 total = 0; /* initialize total */
15 counter = 1; /* initialize loop counter */
16
17 /* processing phase */
18 while (counter <= 10) { /* loop 10 times */
19 printf( "Enter grade: " ); /* prompt for input */
20 scanf( "%d", &grade ); /* read grade from user */
21 total = total + grade; /* add grade to total */
22 counter = counter + 1; /* increment counter */
23 } /* end while */
24
25 /* termination phase */
26 average = total / 10; /* integer division */
27
28 printf( "Class average is %d\n", average ); /* display result */
29 return 0; /* indicate program ended successfully */
30 } /* end function main */
0 komentar:
Posting Komentar