buatlah sebuah algoritma dan diagram alir untuk menentukan nilai rata-rata nilai tertinggi dan nilai terendah dari data ulangan siswa gunakan dekomposisi dan fungsi dalam algoritma tersebut buatlah sebuah algoritma dan diagram alir untuk menentukan nilai rata-rata nilai tertinggi dan nilai terendah dari data ulangan siswa gunakan dekomposisi dan fungsi dalam algoritma tersebut
Jawaban:
1. Input jumlah siswa (n)
2. Input nilai ulangan setiap siswa (nilai_siswa[1], nilai_siswa[2], ..., nilai_siswa[n])
3. Buat fungsi hitung_rata_rata(nilai_siswa):
a. Jumlahkan semua nilai_siswa dan simpan dalam variabel total
b. Rata-rata = total / n
c. Kembalikan nilai rata-rata
4. Buat fungsi cari_nilai_tertinggi(nilai_siswa):
a. Simpan nilai_siswa[1] sebagai nilai tertinggi
b. Untuk i = 2 sampai n:
- Jika nilai_siswa[i] > nilai tertinggi, update nilai tertinggi
c. Kembalikan nilai tertinggi
5. Buat fungsi cari_nilai_terendah(nilai_siswa):
a. Simpan nilai_siswa[1] sebagai nilai terendah
b. Untuk i = 2 sampai n:
- Jika nilai_siswa[i] < nilai terendah, update nilai terendah
c. Kembalikan nilai terendah
6. Panggil fungsi hitung_rata_rata(nilai_siswa) dan simpan hasilnya dalam variabel rata-rata
7. Panggil fungsi cari_nilai_tertinggi(nilai_siswa) dan simpan hasilnya dalam variabel nilai_tertinggi
8. Panggil fungsi cari_nilai_terendah(nilai_siswa) dan simpan hasilnya dalam variabel nilai_terendah
9. Tampilkan rata-rata, nilai tertinggi, dan nilai terendah
diagram alir untuk algoritma di atas:
```
[START] --> Input jumlah siswa (n)
--> Input nilai ulangan setiap siswa (nilai_siswa[1], nilai_siswa[2], ..., nilai_siswa[n])
--> Panggil fungsi hitung_rata_rata(nilai_siswa) --> Simpan hasil rata-rata dalam variabel rata-rata
--> Panggil fungsi cari_nilai_tertinggi(nilai_siswa) --> Simpan hasil nilai tertinggi dalam variabel nilai_tertinggi
--> Panggil fungsi cari_nilai_terendah(nilai_siswa) --> Simpan hasil nilai terendah dalam variabel nilai_terendah
--> Tampilkan rata-rata, nilai tertinggi, dan nilai terendah
[STOP]
```
Catatan:
- Pada langkah 3, 4, dan 5, nilai_siswa adalah array/list nilai ulangan siswa dengan indeks dimulai dari 1 sampai n.