Halaman

Minggu, 10 Agustus 2025

Mengacak isi dari sebuah Array - javascript

Mengingat waktu pelajaran saat kuliah, cara mengacak acak urutan sebuah array adalah sebagai berikut.


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

}


Saya menggunakan fungsi ini pada himpunan nomor 1 hingga 15 di link ini : https://soulmathonline.blogspot.com/2025/05/soal-himpunan-1-15.html

Yaitu ketika mengacak jawaban salah yang saya sediakan lebih dari 3, kemudian ambil jawaban salah urutan 3 terdepan.


Semoga bermanfaat

Penggunaan angka untuk pangkat - javascript

Untuk himpunan, ada yang namanya banyak pemetaan yang mungkin dari A ke B. Rumusnya adalah n(B) pangkat n(A). Untuk pangkatnya saya pakai ini : 

var pangkat = ["⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹"];

Tidak lupa juga pakai syarat n(a) tidak sama dengan n(B), agar bisa mencantumkan salah satu jawaban salahnya adalah n(A) pangkat n(B).

Untuk lebih jelasnya bisa lihat hasilnya di nomor 8 di link https://soulmathonline.blogspot.com/2025/05/soal-himpunan-1-15.html

Semoga bermanfaat

Sabtu, 09 Agustus 2025

Mengambil anggota yang sama alias irisan - javascript

 Jika ada dua array mempunyai beberapa anggota yang sama, maka untuk mengambil beberapa anggota yang sama tersebut bisa menggunakan fungsi ini :

function irisan(arrA,arrB){

var arr = [];

for(var i=0;i<arrA.length;i++){

for(var j=0;j<arrB.length;j++){

if(arrA[i]==arrB[j]){

arr.push(arrA[i]);

}

}

}

return arr;

}


Saya gunakan dalam mencari irisan dari dua buah himpunan seperti di nomor 6 di soal ini : https://soulmathonline.blogspot.com/2025/05/soal-himpunan-1-15.html

Semoga bermanfaat

Menggabungkan dua array, diurutkan, dan delete anggota yang sama - javascript

Fungsi di bawah ini adalah untuk menggabungkan dua buah array yang berbeda, di urutkan dari terkecil ke terbesar, dan jika ada anggota yang sama maka akan di delete salah satunya.

function gabungan(arrA,arrB){

var arr = arrA.concat(arrB);

arr.sort(function(a, b){return a-b});

var fixArr = [];

var cek=arr[0];

fixArr.push(arr[0]);

for(var i=1;i<arr.length;i++){

if(arr[i]!==cek){

fixArr.push(arr[i]);

cek=arr[i];

}

}

return fixArr;

}


Penggunaannya ada di soal nomor 5 di kumpulan soal himpunan https://soulmathonline.blogspot.com/2025/05/soal-himpunan-1-15.html

Semoga bermanfaat

Mods(a,b) - Sisa pembagian a oleh b - javascript

Berikut adalah cara mencari sisa pembagian a oleh b dengan menggunakan bahasa pemrograman javascript. Saya gunakan untuk mencari bilangan ganjil, yaitu a adalah bilangan ganjil jika mods(a,2) == 1. Contoh penggunaan dalam soal matematika bisa di lihat soal himpunan di https://soulmathonline.blogspot.com/2025/05/soal-himpunan-1-15.html untuk nomor 2.

function Mods(m,n){

var m0 = m;
var m0b = m0;
var ct = 0;
do{
m0b = m0;
m0-=n;
ct++;
}while(m0>=0);
var sisa = Math.abs(m0b);
return sisa;

}


Silahkan komentar jika punya ide lain dari bentuk di atas ya ..

Terimakasih dan semoga bermanfaat

Rabu, 19 Maret 2025

Javascript - random tempat jawaban ABCD

function RandomMyArray(Arr){

/* ---- RANDOM isi Array ---- */

/* Global */

for (i=0; i<Arr.length; i++){

r = Math.floor(Math.random() * Arr.length);

a = Arr[i];

Arr[i] = Arr[r];

Arr[r] = a;

}

return Arr

}

function NoJawabanBenar(Arr, jwb){

for (i=0; i<Arr.length; i++){

if (Arr[i]==jwb){

return i;

break;

}

}

}

function GetABCD(no){

var ABCD = ["A","B","C","D"]

return ABCD[no]

}


function GetSoal1(){

var ss, Ar, jawab, noBenar, textSoal, textJawab, ArFix;

ss = "Bilangan p dan q bilangan cacah dan p + q = p, maka ... </p>";

Ar = [];

Ar.push("p unsur identitas penjumlahan");

Ar.push("p unsur identitas perkalian");

Ar.push("q unsur identitas penjumlahan");

Ar.push("q unsur identitas perkalian");

jawab = Ar[2];


Ar=RandomMyArray(Ar);


noBenar = NoJawabanBenar(Ar, jawab);

textSoal = ss+" <p>A. "+Ar[0]+" <br>B. "+Ar[1]+" <br>C. "+Ar[2]+" <br>D. "+Ar[3]+"</p>";

textJawab = jawab+"</p>";


ArFix = []

ArFix.push(textSoal);

ArFix.push(textJawab);

//ArFix.push(noBenar);

ArFix.push(GetABCD(noBenar));

//console.log(ArFix);

return ArFix

}


var ss;

var ss = GetSoal1();

document.write("<p>"+ss[0]+"</p>");

document.write("Jawaban : "+ss[2]);




Untuk melihat hasil : https://galihwidosamodra.blogspot.com/2025/03/soal-random-abcd-01-identitas-operasi.html << Refresh link untuk random ABCD

Coba html dan javascript

Soal Random Jawaban