Pertemuan#04 - Membuat sebuah soal himpunan untuk mencari kalimat yang merupakan himpunan
- Bagian pendukung :
- Mendapatkan sebuah angka acak
function RandomAngkaAtoB(a,b){
var r = a+Math.ceil(Math.random() * b);
return r;
}
- Mengacak isi sebuah array
function RandomMyArray(Arr){
for (var i=0; i<Arr.length; i++){
var r = Math.floor(Math.random() * Arr.length);
var a = Arr[i];
Arr[i] = Arr[r];
Arr[r] = a;
}
return Arr
}
- Mendapatkan nomor urut jawaban benar
function NoJawabanBenar(Arr, jwb){
for (var i=0; i<Arr.length; i++){
if (Arr[i]==jwb){
return i;
break;
}
}
}
- Mendapatkan huruf jawaban
function GetABCD(no){
var ABCD = ["A","B","C","D"]
return ABCD[no]
}
- Mendapatkan Data soal
function MyFungsi4(){
//Kumpulan-kumpulan berikut ini yang merupakan himpunan adalah ...
//jawaban: berparas cantik/berkacamata/berbadan pendek/berbadan tinggi
var arr0 = ["Kumpulan siswi berkacamata","Kumpulan siswi cantik","Kumpulan siswi berbadan pendek","Kumpulan siswi berbadan tinggi"];
var arr1 = ["Kumpulan buku berwarna merah","Kumpulan buku tebal","Kumpulan buku tipis","Kumpulan buku bagus"];
var arr2 = ["Kumpulan bilangan prima","Kumpulan bilangan besar","Kumpulan bilangan kecil","Kumpulan bilangan penting"];
var arr=[arr0,arr1,arr2];
var a1,a2,a3,a4,a5;
a1 = RandomAngkaAtoB(-1,3);
var benar = arr[a1][0];
var salah1 = arr[a1][1];
var salah2 = arr[a1][2];
var salah3 = arr[a1][3];
var arrSalah = [salah1,salah2,salah3];
return [a1,benar,arrSalah];
}
-------------------------------------------
- Bagian utama :
- Program Utama
function GetSoal1(){
const MyData = MyFungsi4();
//[a0,a1,a2,a3,benar,arrSalah];
var a0=MyData[0];
var a1=MyData[1];
var a2=MyData[2];
var a3=MyData[3];
var benar=MyData[4];
var arrSalah=MyData[5];
//1. Sekelompok siswa terdiri dari 25 orang.
//Terdapat 14 orang gemar berenang,
//15 orang gemar sepakbola,
//dan yang tidak gemar keduanya 5 orang.
//Banyak siswa yang gemar keduanya adalah ...
var Ekskul = NamaEkskul();
var ss
ss = "Sekelompok siswa terdiri dari "+a0+" orang. ";
ss += "Terdapat "+a1+" orang gemar "+Ekskul[0]+", ";
ss += ""+a2+" orang gemar "+Ekskul[1]+", ";
ss += "dan yang tidak gemar keduanya "+a3+" orang. ";
ss += "Banyak siswa yang gemar keduanya adalah ... ";
var Ar = [];
// jawaban
Ar[0] = benar;
Ar[1] = arrSalah[0];
Ar[2] = arrSalah[1];
Ar[3] = arrSalah[2];
var jawab = Ar[0];
Ar = RandomMyArray(Ar);
var noBenar = NoJawabanBenar(Ar, jawab);
var textSoal = ss+" <p>A. "+Ar[0]+"<br>B. "+Ar[1]+"<br>C. "+Ar[2]+"<br>D. "+Ar[3]+"</p>";
var ArFix = [];
ArFix.push(textSoal);
ArFix.push(GetABCD(noBenar));
return ArFix;
}
- Mencetak soal
var ss
ss = GetSoal4();
document.write("<p>"+ss[0]+"</p>");
document.write("Jawaban : "+ss[1]);
-------------------------------------------