Berikut ini adalah pertanyaan dari valenciamarcella46 pada mata pelajaran TI untuk jenjang Sekolah Menengah Atas
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
Kode program untuk menampilkan bilangan secara acak dari 1 sampai 10 sebanyak 100 kali dan menghitung banyaknya nilai bilangan 9 yang ditampilkan dalam program adalah sebagai berikut.
Dengan bahasa pemrograman Python:
import random
banyak_bilangan_9 = 0
# Inisialisasi seed untuk random
random.seed()
print('\n100 bilangan acak 1-10:')
for i in range(100):
bilangan= random.randint(1, 10)
if bilangan == 9:
banyak_bilangan_9 += 1
print(f' [{bilangan}]', end='')
else:
print(f'{bilangan:3}', end=' ')
if (i+1) % 10 == 0: print()
print(f'Banyaknya bilangan 9 yang dihasilkan adalah: {banyak_bilangan_9}\n')
Dengan bahasa pemrograman C++:
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <time.h>
using namespace std;
int main() {
int banyakBilangan9 = 0;
int bilangan = 0;
// Inisialisasi seed untuk random
srand(time(0));
cout << "\n100 bilangan acak 1-10:\n";
for (int i = 0; i < 100; i++) {
bilangan = rand() % 10 + 1;
if (bilangan == 9) {
banyakBilangan9++;
cout << " [" << bilangan << "]";
}
else {
cout << setw(3) << bilangan << " ";
}
if ((i+1) % 10 == 0) cout << "\n";
}
cout << "Banyaknya bilangan 9 yang dihasilkan adalah: " << banyakBilangan9 << "\n\n";
}
__________________
Penjelasan:
Pada deskripsi persoalan, terdapat kebutuhan (requirement) bahwa:
- program menampilkan 100 bilangan acak 1 sampai 10, dan
- menghitung banyaknya bilangan 9 yang dihasilkan program.
Maka, secara mendasar, pseudocode dari program ini adalah sebagai berikut.
banyakBilangan9 ← 0
for i ← 1 to 100 do
bilangan ← random(1, 10)
if bilangan = 9 then
banyakBilangan9 ← banyakBilangan9 + 1
end if
print bilangan
end for
print banyakBilangan9
Pada kedua contoh program di atas, ketika bilangan yang dihasilkan adalah 9, outputnya dibedakan dengan bilangan lain, yaitu dengan menambahkan “[” dan “]”, agar membantu pemeriksaan hasilnya.
Untuk menghasilkan bilangan acak 1 - 10:
- Pada Python, digunakan method/fungsi random.randint(1, 10). Kegunaan method ini sangat jelas terlihat dari namanya.
- Pada C++, digunakan method/fungsi rand() % 10 + 1, karena fungsi rand() menghasilkan bilangan acak dalam rentang nilai 0 hingga nilai konstanta RAND_MAX. Jadi, kita gunakan modulo 10, lalu ditambah 1.
Inti dari algoritma programini adalahinkrementasi variabel penghitung (counter) bilangan 9 yang dihasilkan.
Hasil Eksekusi Program
Untuk kedua contoh program di atas, hasil eksekusi dapat dilihat pada gambar yang dilampirkan.
Semoga dengan pertanyaan yang sudah terjawab oleh henriyulianto dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Mon, 23 Jan 23