## Faculty of Sains and Technology, Ibrahimy University
S4-Accredited : 105/E/KPT/2022 Journal page is available to : https://journal.ibrahimy.ac.id/index.php/JIMI
PERBANDINGAN  ALGORITMA  FISHER-YATES  SHUFFLE  DAN  LINEAR CONGRUENT METHOD  PADA APLIKASI GAME SUSUN AYAT AL- QUR’AN

## BERBASIS ANDROID
Hayara Octaviani 1) , Bambang Pramono 2) , Rizal Adi Saputra 3) 1 Jurusan Teknik Informatika, Universitas Halu Oleo
2 Jurusan Teknik Informatika, Universitas Halu Oleo
3 Jurusan Teknik Informatika, Universitas Halu Oleo email: 1 hayaraoctaviani@gmail.com, 2 bambangpramono@uho.ac.id, 3 rizaladisaputra@uho.ac.id

## ARTICLE INFO

## ABSTRACT
Article History: Recieved   :  18 May 2023 Accepted   :  11 June 2023 Published  :  30 June 2023 A problem that is often encountered among Qur’an memorized is the inability to memorize verses randomly. Therefore, a system is needed  that  is  able  to  train  the  memorization  of  the  Qur'an memorization  so  that  it  is  able  to  memorize  even  with  the position  of  the  scrambled  verses.  To  randomize  verse  chunks,  a method is needed that can generate random numbers. Among the algorithms capable of generating random numbers are the Linear Congruent  Method  and  the  Fisher-Yates  Shuffle.  Of  the  two algorithms, no more effective algorithm has been found. For this reason,  a  comparison  will  be  made  by  applying  algorithms  to Android-based  game  applications  with  the  puzzle  genre.  This study  aims  to  build  an  educational  game  application  with  the puzzle genre on the arrangement of quranic verses by comparing the  effectiveness  of  the  Linear  Congruent  Method  and  Fisher- Yates  Shuffle  algorithms  in  randomizing  verses  in  games.  The game  is  run  in  an  Android  application.  Based  on  the  tests  that have  been  carried  out,  the  results  show  that  Linear  Congruent Method  has  a  pattern  in  generating  random  numbers  while  the Fisher-Yates  Shuffle  does  not  require  it,  so  it  can  be  concluded that  the  Fisher-Yates  Shuffle  algorithm  is  the  most  effective  in randomizing.

## Keywords:
Linear Congruent Method
Fisher-Yates Shuffle
Game Quran verses Android
IEEE style in citing this article: Nama  penulis,  “ Perbandingan Algoritma  Fisher-Yates  Shuffle
Dan Linear Congruent Method Pada  Aplikasi  Game  Susun Ayat Al- Qur’an Berbasis Android ”,
Jurnal.ilmiah.informatika ,  vol.  8, no. 1, pp.24-36, Jun. 2023.
© 2023 Jurnal Ilmiah Informatika (Scientific Informatics Journal) with CC BY NC licence

## 1. PENDAHULUAN
Indonesia  adalah  salah  satu  negara yang  memiliki  penghafal  qur’an  dalam jumlah yang banyak. Artikel [1] menyebutkan  jumlah  penghafal  qur’an di Indonesia mencapai sekitar 30 ribu orang, melebihi  Arab  Saudi  sebesar  6000  orang. Dengan  banyaknya  metode  menghafal qur’an  saat  ini,  maka  sangat  besar kemungkinan meningkatnya jumlah penghafal qur’an di Indonesia.
Problematika  yang  sering  ditemui dikalangan penghafal qur’an yaitu ketidakmampuan  dalam  menghafal  ayat- ayat  secara  acak.  Ketika  diminta  untuk menyebutkan  surah  tertentu,  mereka mampu menyebutkannya dari ayat pertama hingga ayat terakhir. Sedangkan, ketika  diminta  untuk  menyebutkan  ayat secara acak misalnya ayat 7, 3, 12 hafalan mereka  cenderung  terbata-  bata.  Oleh karena  itu,  dibutuhkan  sebuah  sistem yang  mampu  melatih  hafalan  penghafal qur’an sehingga  mampu menghafal meskipun  dengan  posisi  ayat  yang teracak.
Penghafal quran tidak hanya berasal dari  kalangan  orang  dewasa,  melainkan juga  dari  kalangan  anak-anak  usia  dini. Menurut  undang-undang  no.  20  tahun 2003  tentang  sistem  pendidikan  nasional yang  disebut  dengan  anak  usia  dini adalah  anak  usia  0-  6  tahun,  sedangkan menurut  para  ahli  adalah  anak  usia  0-8 tahun  [2].  Pendidikan  anak  usia  dini merupakan suatu usaha melalui pembinaan  yang  diberikan  kepada  anak sejak  lahir  sampai  dengan  usia  enam tahun  yang  dilakukan  melalui  pemberian rangsangan  pendidikan  untuk  membantu pertumbuhan dan perkembangan jasmani dan  rohani  agar  anak  memiliki  kesiapan dalam memasuki pendidikan selanjutnya. Pendidikan  paling  tepat  diberikan  sejak usia  dini,  karena  pada  usia  dini  anak sedang  berada  pada  masa  peka  sehingga
proses  pembelajaran  akan  berkembang secara optimal [3].
Selain itu, berbagai penelitian menunjukkan  bahwa  masa  usia  dini merupakan masa emas, dimana pertumbuhan  otak  sangat  cepat,  karena terciptanya  bermiliar-miliar  sel-sel  otak. Masa ini juga ditandai dengan kemampuan  otak  manusia  yang  begitu luar  biasa,  bagaikan  spons  yang  siap menyerap  apa  pun  yang  dirangsang  oleh lingkungan sekitarnya [4].
Saat  ini,  perkembangan  teknologi semakin  pesat.  Berbagai  penelitian  terus dikembangkan hingga terciptalah berbagai  jenis  teknologi,  salah  satunya aplikasi  game  [5].  Aplikasi  adalah  suatu perangkat  lunak  (software)  atau  program komputer  yang  beroperasi  pada  sistem tertentu yang diciptakan dan dikembangkan untuk melakukan perintah tertentu  yang  bertujuan  untuk  memberi kemudahan dan kenyamanan bagi manusia  diberbagai  bidang  kehidupan.
Sedangkan  game  berasal  dari  bahasa Inggris  yang  berarti  permainan.  Dalam setiap  game  terdapat  peraturan  yang berbeda-beda  untuk  memulai  permainan sehingga  membuat  jenis  game  semakin bervariasi. Karena salah satu fungsi game sebagai  pernghilang  rasa  jenuh  maka hampir  setiap  orang  senang  bermain game  baik  anak  kecil,  remaja  maupun dewasa.  Menurut  John  C.  Beck  dan Mitchell  Wade,  game  adalah  penarik perhatian  yang  telah  terbukti.  Game adalah lingkungan pelatihan yang terbaik bagi  dunia  nyata  dalam  organisasi  yang menuntut  pemecahan  masalah  secara kolaborasi [6].
Salah  satu  jenis  game  yang  sangat terkenal  yaitu  puzzle.  Jenis  game  ini memberi tantangan dengan cara menghilangkan  atau  mengacak  posisi potongan  objek,  kemudian  pemain  harus meletakkan  potongan  objek  tersebut hingga tersusun dengan sempurna.
Bermain  puzzle  dapat  membantu  anak memahami  dan  mengikuti  instruksi dalam  mencapai  suatu  tujuan.  Permainan ini  pun  dapat  melatih  memori,  karena anak  akan  mencoba  untuk  mengingat kembali  potongan  gambar,  pola,  atau kata-kata  agar  bisa  sesuai  satu  dengan lainnya  [7].  Selain  itu,  game  ini  juga  bisa dimainkan  pada  berbagai  perangkat, salah satunya perangkat berbasis android.
Android adalah sistem operasi yang dirancang  untuk  smartphone  dan  tablet. Android  juga  merupakan  salah  satu sistem  operasi  yang  sangat  popular  dan banyak digunakan. Berdasarkan data dari Statcounter  jumlah  pengguna  Android  di Indonesia  pada  Januari-Desember  2020 sebesar  90,69%  [8].  Hal  ini  dikarenakan Android  memiliki  beberapa  kelebihan diantaranya  yaitu  :  pertama,  Android adalah sistem yang terbuka sehingga user mampu  menambah,  menghapus  dan meng-update  sistem  sesuai  keinginan tanpa  takut  untuk  terkena  Undang- undang Hak Cipta. Kedua, Android dapat dipakai diberbagai media seperti notebook,  tablet,  smartTV  dan  GPS. Ketiga,  ukuran  aplikasi  Android  relatif kecil  sehingga  memori  smartphone  atau tablet tidak akan cepat habis [5].
Berdasarkan  permasalahan  di  atas, perlu  untuk  dikembangkan  game  yang diperuntukkan  bagi  penghafal  qur’an.
Untuk itu peneliti membuat game edukasi dalam  mengacak  ayat-ayat  alquran.  Pada permainan  ini,  ayat  yang  ditampilkan dalam  setiap  sesi  dibuat  teracak  agar game lebih menantang dan tidak membosankan.  Hal  ini  juga  dilakukan untuk  menguji  dan  melatih  hafalan  dari penghafal.  Untuk  mengacak  potongan ayat,  dibutuhkan  sebuah  metode  yang dapat  membangkitkan  bilangan  acak. Diantara algoritma yang mampu
membangkitkan  bilangan  acak  yaitu Linear  Congruent  Method  dan  Fisher-
Yates Shuffle. Berdasarkan kedua algoritma  tersebut,  belum  diketahui algoritma  yang  lebih  efektif  dalam melakukan  pengacakan  pada  game  yang akan  berjalan,  sehingga  untuk  itu  akan dilakukan  perbandingan  pada  kedua algoritma  tersebut  untuk  melihat  tingkat keefektifan masing-masing algoritma dalam melakukan pengacakan.

## 2. METODE PENELITIAN
Pada
penelitian ini,
untuk pengacakan  puzzle  yang  digunakan adalah algoritma Fisher-Yates Shuffle dan Linear  Congruent  Method.  Kemudian untuk pengujian sistem dilakukan dengan menggunakan pengujian black box. Adapun  untuk  tahapan  pada  penelitian ini  dapat  digambarkan  pada  Gambar  1.
Adapun
tahapan-tahapan pada Gambar  1  dijelaskan  berdasarkan  pada tahapan sebagai berikut:
1. Studi  pendahuluan  dilaksanakan untuk memperoleh
masukan menganai  objek  yang  akan  diteliti. Melalui  studi  ini,  diharapkan  dapat diperoleh informasi mengenai
permasalahan  yang  diangkat  dalam penelitian dan variabel-variabel yang terkait dengan masalah tersebut, dan adapun variabel penelitian  yang  dibutuhkan  pada penelitian  ini  seperti  data  tentang ayat Al- Qur’an yang akan dijadikan sebagai potongan puzzle.
2. Studi  Pustaka  dan  perumusan masalah dilaksanakan
untuk memperoleh  literatur – literatur yang dapat dijadikan acuan
penelitian sehingga didapatkan sebuah rumusan masalah yang akan menjadi  parameter  untuk  menjadi pedoman pada penelitian ini.
3. Pengumpulan  data  dilaksanakan untuk memperoleh data yang dibutuhkan guna data tersebut akan dimasukkan  ke  dalam  sistem  yang telah  dibuat.  Adapun  data  yang dibutuhkan  pada  penelitian  ini yakni  data  ayat  Al- Qur’an  yang
nantinya data ayat Al- Qur’an
tersebut  kemudian  akan  diolah didalam sistem.
4. Pembuatan sistem dilaksanakan untuk  membangun  sebuah  game susun  ayat  Al- Qur’an  yang  dimana sistem  tersebut  akan  menerapkan metode  Linear  Congruent  Method
dan Fisher-Yates Shuffle
didalamnya.
5. Penginputan data dilaksanakan agar data  yang  telah  diinputkan  dapat diproses  oleh  sistem  berdasarkan hasil  implementasi  metode  Linear
Congruent Method dan Fisher-Yates Shuffle.
6. Proses  data  dilaksanakan  dengan tujuan  agar  data  yang  diproses dapat memberikan hasil yang dimana hasil tersebut dapat menjadi informasi  yang  diharapkan  pada penelitian  yakni  berupa  hasil  skor akhir  dari  game  yang  dijalankan serta analisa berdasarkan pengacakan  yang  dilakukan  oleh Linear  Congruent  Method  dan  juga Fisher-Yates  Shuffle  berdasarkan data – data  ayat  Al- Qur’an  yang telah dikumpulkan.
7. Pengujian sistem dilaksanakan dengan harapan tujuan agar keberhasilan penerapan metode Linear  Congruent  Method  dan  juga Fisher-Yates  Shuffle  dapat  terlihat sehingga dapat dibandingkan antara kedua  algoritma  tersebut  mengenai baik  tidaknya  kualitas  algoritma tersebut dalam proses pengacakan.
Fisher-Yates  Shuffle  adalah  sebuah algoritma  untuk  menghasilkan  suatu permutasi  acak  dari  suatu  himpunan terhingga, hasil dari pengacakan algoritma ini memiliki tingkat probabilitas yang  sama  [9][10].  Sementara  itu,  Linear Congruent  Method  (LCM)  ditemukan oleh  D.H  Lehmer.  Tak  lama  sesudah  itu, banyak  programmer  yang  menggunakan metode  Linear  Congruent  tersebut  untuk menghasilkan  bilangan  yang  tampak random  dalam  jumlah  besar  dan  waktu yang  cepat  [11].  Selain  itu,  Linear Congruent    Method(LCM)  merupakan metode  pembangkit  bilangan  acak  yang banyak  dipergunakan  dalam  program computer  [12].  Bilangan  acak  yang dibangkitkan  oleh  komputer  merupakan bilangan
acak semu,
karena pembangkitnya  menggunakan  operasi- operasi aritmatika [13].

## Tabel 1. Contoh Pengacakan Fisher-Yates Shuffle
Range Roll Scratch Result 12345678 1-8 5 1234867 5 1-7 3 127486 3 5 1-6 4 12768 4 3 5 1-5 5 1276 8 4 3 5 1-4 2 167 2 8 4 3 5 1-3 3 16 7 2 8 4 3 5 1-2 1 6 1 7 2 8 4 3 5 Hasil Pengacakan: 6 1 7 2 8 4 3 5 Tabel  1  adalah  contoh  pengacakan menggunakan Fisher-Yates Shuffle. Misalnya  terdapat  array  sebanyak  9  data yang  berisi  nilai  12345678.  Adapun langkah-langkah
pengacakan yaitu
sebagai berikut:
1. Memilih  salah  satu  elemen  secara acak. Nilai yang pertama kali dipilih yaitu 5.
2. Tukarkan  elemen  yang  diambil dengan  nilai  ke-n.  Nilai  ke-n  pada tabel  di  atas  yaitu  8.  Sehingga urutan  berubah  menjadi  1234867 dengan hasil 5.
3. Panjang n dikurangi 1.
4. Karena  masih  ada  elemen  yang tersisa,  maka  tahap  1-3  akan diulangi.
5. Nilai yang kedua dipilih yaitu 3.
6. Tukarkan  3  dengan  nilai  ke-n  yaitu 7. Sehingga urutan berubah menjadi 127486 dengan hasil 3 5.
7. Panjang n dikurangi 1.
8. Nilai yang ketiga dipilih yaitu 4.
9. Tukarkan  nilai  4  dengan  nilai  ke-n yaitu  6.  Sehingga  urutan  berubah menjadi 12768 dengan hasil 4 3 5.
10. Panjang n dikurangi 1.
11. Nilai yang keempat dipilih yaitu 5.
12. Karena  sebelumnya  nilai  5  telah dipilih, maka 5 tidak ditukar dengan nilai ke-n.
13. Panjang  n  dikurangi  1.  Sehingga urutan berubah menjadi 1276
dengan hasil 8 4 3 5.
14. Nilai yang kelima dipilih yaitu 2.
15. Tukarkan  nilai  2  dengan  nilai  ke-n yaitu  6.  Sehingga  urutan  berubah menjadi 167 dengan hasil 2 8 4 3 5.
16. Panjang n dikurangi 1.
17. Nilai yang keenam dipilih yaitu 3.
18. Karena  sebelumnya  nilai  3  telah dipilih, maka 3 tidak ditukar dengan nilai ke-n.
19. Panjang  n  dikurangi  1.  Sehingga urutan  berubah  menjadi  16  dengan hasil 7 2 8 4 3 5.
20. Nilai yang terakhir dipilih yaitu 1.
21. Tukarkan  nilai  1  dengan  nilai  ke-n yaitu  6.  Sehingga  urutan  berubah menjadi 1 dengan hasil 1 7 2 8 4 3 5.
22. Karena elemen yang tersisa adalah 6 maka hasil pengacakan yaitu 6 1 7 2 8 4 3 5.
Sementara itu, adapun Linear
Congruent  Method  didefinisikan  pada
Persamaan 1. Xn+1= (aXn + c) mod m (1)
Kemudian, untuk langkah – langkah dari  algoritma  Linear  Congruent  Method adalah sebagai berikut :
Untuk  melihat  hasil  pengacakan dari  Linear  Congruent  Method  maka dilakukan  perhitungan  sebagai  berikut. Terdapat sebuah soal sebanyak 50 nomor, lakukanlah  pengacakan  sebanyak  10  kali. Jawab :
1. Untuk  a=9,  c=4,  m=7,  X0  =  1.  Maka, hasil yang diperoleh yaitu : X(1) = (9*1+4) mod 7 = 6 X(2) = (9*6+4) mod 7 = 2
X(3) = (9*2+4) mod 7 = 1 X(4) = (9*1+4) mod 7 = 6 X(5) = (9*6+4) mod 7 = 2 X(6) = (9*2+4) mod 7 = 1
X(7) = (9*1+4) mod 7 = 6 X(8) = (9*6+4) mod 7 = 2 X(9) = (9*2+4) mod 7 = 1 X(10) = (9*1+4) mod 7 = 6 2. Untuk a=9, c=17, m=23, X0 =1. Maka, hasil yang diperoleh yaitu : X(1) = (9*1+17) mod 23 = 3
X(2) = (9*3+17) mod 23= 21 X(3) = (9*21+17) mod 23= 22 X(4) = (9*22+17) mod 23= 8 X(5) = (9*8+17) mod 23 = 20
X(6) = (9*20+17) mod 23 = 13 X(7) = (9*13+17) mod 23 = 19 X(8) = (9*19+17) mod 23 = 4 X(9) = (9*4+17) mod 23 = 7
X(10) = (9*7+17) mod 23 = 11
Dari  perhitungan  di  atas  diperoleh hasil  pengacakan yaitu  6,  2,  1,  6, 2,1,  6, 2, 1, 6 untuk a=9, c=4, m=7, X0 = 1 dan 3, 21, 22,  8,  20,  13,  19,  4,  7,  11  untuk  a=9,  c=17, m=23, X0=1. Sehingga, dapat disimpulkan bahwa  untuk  melakukan  pengacakan menggunakan  Linear  Congruent  Method, penentuan  nilai  a,  c  dan  m  yang  tepat dapat  menghasilkan  pengacakan  yang efektif dan tidak berpola.

## 3. HASIL DAN PEMBAHASAN
Tahap
implementasi sistem merupakan  tahap  pengimplementasian hasil  analisis  dan  perancangan  menjadi aplikasi  game  dengan  menggunakan bahasa  pemrograman  C#  yang  siap dioperasikan.  Aplikasi  ini  digunakan untuk  membantu  para  penghafal  qur’an dalam  meningkatkan  hafalan  dengan menerapkan algoritma Fisher-Yates Shuffle dan Linear Congruent Method.

## Halaman Awal
Halaman awal adalah halaman yang pertama  kali  tampil  saat  memasuki sistem.  Di  halaman  ini  terdapat  logo, button  info  bermain,  button  exit  dan button untuk memulai permainan. Adapun  halaman  awal  ditunjukkan  pada Gambar 2.
Gambar 2. Halaman Awal

## Halaman Pilih Algoritma
Pada  halaman  ini,  terdapat  dua button untuk memilih algoritma apa yang akan dimainkan.
Setiap algoritma memiliki  soal,  waktu  bermain  dan
penentuan  skor  yang  sama.  Adapun halaman pilih algoritma ditunjukkan pada Gambar 3.

## Gambar 3 Halaman Pilih Algoritma
Halaman Bermain
Halaman  ini  adalah  halaman  yang berisi  potongan  ayat  teracak  yang nantinya  akan  disusun  menjadi  kesatuan yang  utuh.  Pada  halaman  bermain terdapat  info  waktu,  skor,  urutan  soal, nomor  soal,  render  time,  nama  surah, button reset, button exit dan button untuk mengecek  apakah  susunan  ayat  sudah benar  atau  tidak.  Waktu  bermain  terdiri dari  90  detik  yang  akan  bertambah  20 detik apabila menjawab dengan benar dan
berkurang  5  detik  apabila  menjawab dengan  salah.  Jumlah  soal  terdiri  dari  50 yang  akan  ditampilkan  secara  acak sebanyak 20 soal dalam sekali permainan. Button  reset  adalah  tombol  untuk mengembalikan susunan ayat yang sudah didrag  ke  posisi  semula,  sedangkan render time adalah waktu yang dibutuhkan untuk memuat proses selanjutnya.  Adapun  halaman  bermain dapat ditunjukkan pada Gambar 4.

## Gambar 4 Halaman Bermain

## Halaman Skor
Halaman skor adalah halaman yang
akan  tampil  ketika  waktu  bermain  telah habis
atau permainan
berhasil
diselesaikan.  Di  halaman  ini  terdapat tombol  untuk  bermain  kembali  dan tombol  untuk  kembali  ke  menu  utama. Adapun  penentuan  skor  yaitu  sebagai berikut :
a. Interval skor
Interval  skor  terdiri  dari  5  kategori, yaitu sebagai berikut : 0-10 detik : bertambah 50 poin 11-15 detik : bertambah 40 poin 16-20 detik : bertambah 30 poin 21-25 detik : bertambah 20 poin
> 25 detik : bertambah 10 poin
b. Interval penilaian Interval  penilaian  terdiri  dari  5 kategori, yaitu sebagai berikut : 0-200 : Sangat Kurang (SK) 210-400 : Kurang (K) 410-600 : Cukup (C) 610-800 : Baik (B) 810-1000 : Sangat Baik (SB)
Jumlah soal dalam sekali permainan yaitu  sebanyak  20.  Jika  misalnya  dari  20 soal  itu  terdapat  5  soal  yang  dijawab dalam  rentang  waktu  0-10  detik,  6  soal yang dijawab dalam rentang 11-15 detik, 2 soal  yang  dijawab  dalam  rentang  16-20 detik,  1  soal yang  dijawab  dalam  rentang 21-25 detik dan 1 soal yang dijawab dalam rentang  >25  detik,  maka  perhitungan skornya dapat ditunjukkan pada Tabel 2.
Tabel 2. Perhitungan Skor Detik Skor Hasil 5 50 5 x 50 = 250 poin 6 40 6 x 40 = 240 poin 2 30 2 x 30 = 60 poin 1 20 1 x 20 = 20 poin 1 10 1 x 10 = 10 poin Sehingga  total  skor  yang  diperoleh yaitu  250+240+60+20+10  =  580  poin.
Adapun  contoh  total  skor  yang  diperoleh dapat  ditunjukkan  pada  Gambar  5.
Gambar 5. Halaman Skor

## Pengujian Pengacakan Soal
Pengujian  ini  dilakukan  untuk memeriksa  hasil  pengacakan  soal  untuk setiap  sesi.  Masing-masing  kategori  akan dibangkitkan 20 dari 50  soal,  yang  terdiri dari  Linear  Congruent  Method  dan Fisher-Yates Shuffle.

## Pengujian Fisher-Yates Shuffle
Algoritma  ini  bekerja  dengan  cara memilih  nilai  dari  indeks  ke-k  yang  akan ditukarkan dengan  nilai  dari  indeks  ke-n. Kemudian  panjang  array  dikurangi  1  (n- 1). Adapun hasil pengujian dari algoritma ini ditunjukkan pada Tabel 3.

## Tabel 3. Pengujian Fisher-Yates Shuffle
Fisher-Yates Shuffle Percobaan Nomor Soal 1 2  3 4 5 6 7  8 9  10 11 12 13 14 15 16 17 18 19 20 1 18 9  5 42 0  24 17 35 8  21 22 43 19 12 33 30 45 34 4  16 2 26 27 5 9 32 28 38 46 24 33 43 18 12 22 19 17 31 10 40 4 3 23 13 1 46 12 40 7  5 38 33 17 6  29 0 21 16 41 44 20 25 4 4 47 28 18 29 34 22 2 17 21 40 3  36 37 15 32 12 41 38 27 5 34 43 27 37 49 35 41 6 8  20 2 42 7 44 13 28 33 45 14 32 6 2 48 32 14 28 1  21 41 26 42 23 17 3 10 22 45 12 31 40 44 7 16 46 21 2 7 3  48 0 26 38 24 17 42 45 27 44 35 28 40 12 8 7 35 41 17 31 42 6  5
1  27 36 25 49 0 33 44 23 10 21 47 9 43 42 10 40 45 48 11 49 22 4  31 21 39 0 47 44 24 8 1  32 10 41 14 23 22 32 30 39 21 0  24 5 20 44 31 34 19 25 37 33 11 11 1 22 14 33 21 8  28 39 6 7  46 2  38 43 20 5  36 35 44 0 12 30 15 27 19 42 26 34 10 36 2  32 24 28 38 48 25 31 7 46 12 13 26 43 21 39 3  42 10 32 33 19 11 46 29 7 49
8  18 45 34 27 14 36 44 17 20 4  41 3  37 8  33 38 12 7 26 28 30 11 18 29 22
15 42 36 21 44 5  18 7  32 16 48 40 47 8 26 33 12 45 10 37 1 16 35 14 14 11 9  44 34 31 6  13 21 22 17 45 47 41 16 12 42 3 17 15 24 3 27 48 49 6  47 9  32 12 19 44 4 13 11 41 18 10 16 18 39 49 8 7 9  23
41 47 21 15 17 40 31 37 46 19 26 27 11 14 19 12 10 29 24 48 13 28 34 4 2  32
31 18 41 36 17 38 9 6  15 20 31 46 4 37 44 27 5  28 8  36 24 19 40 33 35 47 45 11 43 16 21 24 2  36 35 43 37 46 3 18 8  0 23 49 38 14 7 1  47 11 20 22 20 15 4 34 24 48 49 30 47 8  18 41 21 17 23 46 5  25 6  13 23 5 9  29 19 14 49 16 6 21 3  12 18 41 38 7  28 23 46 2  34 24 4 10 40 33 5  18 7  22 28 16 49 44 31 26 43 14 30 36 12 39 25 39 23 33 29 49 2  22
40 17 10 35 9  4 31 20 28 12 25 11 37 26 13 12 37 0 25 34 4  27 6 2  28 1  35 46 8  11 24 18 3  15 27 10 12 23 40 5 0  25 45 6  11 4 47 1 43 7  48 27 8 13 42 28 13 2  16 48 38 36 41 9 45 7  34 47 24 23 43 27 20 33 22 14 29 25 16 31 42 41 29 39 14 44 37 15 2  26 1 43 19 13 11 35 23 30 24 17 40 47 45 14
8  48
6  21 35 34 18 32 29
2  41 26 31 43 31 45 24 25 21 17 6  31 3 9  23 14 0  32 36 4  40 46 13 43 27 32 48 47 15 19 32 27 2  14 0  13 43 16 17 49 11 23 33 41 44 9
33 44 34 40 16 8  23 3  32 6  41 13 2  25 49 47 27 5  15 35 36 34 25 37 12 29 11 45 3  30 18 9  33 39 22 6 31 35 46 40 14 10 35 44 31 21 22 19 5 0  27 26 45 39 46 6 24 48 37 7  33 16 18 36 35 44 28 29 12 25 47 38 49 17 41 42 10 33 39 26 46 43 18 22 37 33 28 42 31 44 11 46 1 45 25 0 2  12 16 29 35 5  30 19 34 38 13 3  15 12 48 18 7  20 29 35 24 49 4 43 2  31 19 1 41 30 39 25 42 39 18 36 0  35 9 22 15 27 11 45 21 29 41 13 5 33 14 40 10 37 35 19 6  17 31 25 46 29 9 14 27 12 34 3  20 42 26 41 Dari pengujian yang telah dilakukan sebanyak  40  kali  percobaan,  diperoleh rincian  yang  dapat  ditunjukkan  pada
Tabel 4.
Tabel 4. Hasil Perhitungan Akurasi Fisher-Yates Shuffle Soal Jumlah soal yang tidak berulang Akurasi (%) 1 20 50 2 22 55 3 26 65 4 21 52.5 5 22 55 6 23 57.5 7 16 40 8 21 52.5 9 13 32.5 10 23 57.5 11 24 60 12 23 57.5 13 26 65 14 18 45 15 19 47.5 16 22 55 17 15 37.5 18 25 62.5 19 28 70 20 23 57.5 Rata-rata 53.75
Untuk  memperoleh  nilai  akurasi, digunakan rumus pada Persamaan 2.
Akurasi = Jumlah Soal Yang Tidak Berulang Total Percobaan × 100 = 20 40 × 100 = 50%
Pengujian Linear Congruent Method

## Tabel 5. Pengujian Linear Congruent Method
LCM Percobaan Nomor Soal 1 2 3 4 5 6 7  8 9 10 11 12 13 14 15 16 17 18 19 20 1 8 15 22 29 36 43 0  7 14 21 28 35 42 49 6 13 20 27 34 41 2 41 48 5 12 19 26 33 40 47 4 11 18 25 32 39 46 3  10 17 24 3 24 31 38 45 2 9 16 23 30 37 44 1  8 15 22 29 36 43 0  7 4 7 14 21 28 35 42 49 6 13 20 27 34 41 48 5 12 19 26 33 40 5 40 47 4 11 18 25 32 39 46 3 10 17 24 31 38 45 2  9 16 23 6 23 30 37 44 1 8 15 22 29 36 43 0  7 14 21 28 35 42 49 6 7 6 13 20 27 34 41 48 5 12 19 26 33 40 47 4 11 18 25 32 39 8 39 46 3 10 17 24 31 38 45 2 9 16 23 30 37 44 1  8 15 22 9 22 29 36 43 0 7 14 21 28 35 42 49 6 13 20 27 34 41 48 5
10 5 12 19 26 33 40 47 4 11 18 25 32 39 46 3 10 17 24 31 38 11 38 45 2 9 16 23 30 37 44 1 8 15 22 29 36 43 0  7 14 21
12 21 28 35 42 49 6 13 20 27 34 41 48 5 12 19 26 33 40 47 4
13 4 11 18 25 32 39 46 3 10 17 24 31 38 45 2
9  16 23 30 37 14 37 44 1 8 15 22 29 36 43 0 7 14 21 28 35 42 49 6 13 20
15 20 27 34 41 48 5 12 19 26 33 40 47 4 11 18 25 32 39 46 3
16 3 10 17 24 31 38 45 2 9 16 23 30 37 44 1 8  15 22 29 36 17 36 43 0 7 14 21 28 35 42 49 6 13 20 27 34 41 48 5 12 19
18 19 26 33 40 47 4 11 18 25 32 39 46 3 10 17 24 31 38 45 2
19 2 9 16 23 30 37 44 1 8 15 22 29 36 43 0
7  14 21 28 35
20 35 42 49 6 13 20 27 34 41 48 5 12 19 26 33 40 47 4 11 18 21 18 25 32 39 46 3 10 17 24 31 38 45 2 9 16 23 30 37 44 1
22 1 8 15 22 29 36 43 0 7 14 21 28 35 42 49 6  13 20 27 34
23 34 41 48 5 12 19 26 33 40 47 4 11 18 25 32 39 46 3 10 17
24 17 24 31 38 45 2 9  16 23 30 37 44 1 8 15 22 29 36 43 0
25 0 7 14 21 28 35 42 49 6 13 20 27 34 41 48 5  12
19 26 33 26 33 40 47 4 11 18 25 32 39 46 3 10 17 24 31 38 45 2 9  16 27 16 23 30 37 44 1 8  15 22 29 36 43 0 7 14 21 28 35 42 49
28 49 6 13 20 27 34 41 48 5 12 19 26 33 40 47
4  11 18 25 32 29 32 39 46 3 10 17 24 31 38 45 2 9  16 23 30 37 44 1 8  15 30 15 22 29 36 43 0 7  14 21 28 35 42 49 6 13 20 27 34 41 48
31 48 5 12 19 26 33 40 47 4 11 18 25 32 39 46
3  10 17 24 31 32 31 38 45 2 9 16 23 30 37 44 1 8  15 22 29 36 43 0 7  14 33 14 21 28 35 42 49 6  13 20 27
34 41 48 5 12 19 26 33 40 47 34 47 4 11 18 25 32 39 46 3 10 17 24 31 38 45
2 9  16 23 30 35 30 37 44 1 8 15 22 29 36 43 0 7  14 21 28 35 42 49 6  13 36 13 20 27 34 41 48 5  12 19 26 33 40 47 4 11 18 25 32 39 46 37 46 3  10 17 24 31 38 45 2  9 16 23 30 37 44 1 8  15 22 29 38 29 36 43 0 7 14 21 28 35 42 49 6  13 20 27 34 41 48 5  12
39 12 19 26 33 40 47 4  11 18 25 32 39 46 3 10 17 24 31 38 45 40 45 2  9 16 23 30 37 44 1  8 15 22 29 36 43 0 7  14 21 28
Pada  Tabel  5  menunjukkan  hasil pengacakan  soal  menggunakan  algoritma Linear  Congruent  Method .  Algoritma  ini memiliki parameter yang sangat menentukan  hasil  pembangkitan.  Dalam penelitian  ini,  parameter  yang  digunakan yaitu a=1, Xn=1, c=7 dan m=50.
Dari pengujian yang telah dilakukan sebanyak  40  kali  percobaan  ,  diperoleh Rincian sebagai berikut :
1. Pada  Tabel  4  menunjukkan  tidak terdapat  nomor  soal  yang  berulang pada seluruh percobaan.
2. Nilai  akurasi  pada  tiap  percobaan permainan  memiliki  akurasi  nilai 100%.
Akurasi = Jumlah Soal Yang Tidak Berulang Total Percobaan × 100
= 40 40 × 100 = 100%

## 3. KESIMPULAN
Berdasarkan  hasil  penelitian  yang telah  dilakukan  mengenai  Perbandingan Algoritma Fisher-Yates Shuffle dan Linear Congruent  Method  Pada  Aplikasi  Game Susun  Ayat  Al- qur’an  Berbasis  Android, yaitu  sebagai  berikut  :  (1)  Game  yang dibangun telah berhasil mengimplementasikan  kedua  algoritma tersebut  dengan  nilai  akurasi  algoritma Linear  Congruent  Method  lebih  tinggi dari  Fisher-Yates  Shuffle,  yaitu  dengan akurasi  100%.  (2)  Berdasarkan  akurasi dari  kedua  algoritma  tersebut,  yang paling tepat dalam melakukan pengacakan  adalah  Linear  Congruent Method.  Sedangkan  jika  dilihat  dari  pola pembangkitan  angka,  yang  lebih  acak adalah Fisher-Yates Shuffle. (3) Berdasarkan
render
time, Linear
Congruent  Method  lebih  cepat  dalam mengeksekusi  proses  yang  akan  berjalan selanjutnya.
4. REFERENSI
[1] Kompasiana,  “Menjadi  Penghafal Al- Qur’an Seumur Hidup,” 2019.
[2] Sunanih,  “ Kemampuan  Membaca Huruf  Abjad  Bagi  Anak  Usia  Dini Bagian Dari Perkembangan Bahasa ,” J. Pendidik. , vol. 1, 2017.
[3] W.  Ainia,  B.  Martati,  and  A. Prihatining Rahayu, “Dalam Pembuatannya Menggunakan Bahasa  Pemrograman  C#  dan Menggunakan Game Engine Unity,” Pedagog.  J.  Anak  Usia  Dini dan Pendidik. Anak Usia Dini , vol. 7,
p. 15, 2021.
[4] D.  Mutiah, Psikologi  Bermain  Anak
Usia Dini . Kencana, 2015.
[5] S.  Fachrie  Pane,  M.  Zamzam,  and M. Diar Fadilah, Membangun Aplikasi Peminjaman Jurnal Menggunakan  Aplikasi  Oracle  Apex Online . 2020. [6] M.  Ridoi, Cara  Mudah  Membuat Game  Edukasi  dengan  Construct  2 . 2018.
[7] D.  Irine  Putri,  “Latih  Kecerdasan Otak  Anak  dengan  Permainan Puzzle,” 2020.
[8] Statcounter, “Mobile Operating System  Market  Share  Indonesia,” 2020.
[9] Ekojono,  D.  A.  Irawati,  L.  Affandi, and  A.  N.  Rahmanto,  “Penerapan
Algoritma Fisher-Yates Pada Pengacakan Soal Game Aritmatika,” Pros.  SENTIA  2017 – Politek.  Negeri  Malang ,  vol.  9,  pp.
101 – 106, 2017.
[10] W. Diharjo, “Game Edukasi Bahasa Indonesia  Menggunakan  Metode Fisher  Yates  Shuffle  Pada  Genre Puzzle  Game,” INTEGER  J.  Inf. Technol. ,  vol.  5,  no.  2,  pp.  23 – 35, 2020, doi: 10.31284/j.integer.2020.v5i2.1171.
[11]  A.  Andilala  and  G.  Gunawan,

## “Implementasi  Linear  Congruent
Method  Untuk  Pengacakan  Soal Pada  Game  Perhitungan  Jarimatika
Berbasis Android,” J. Technopreneursh. Inf. Syst. , vol. 1, no. 1, pp. 13 – 18, 2018, doi:
10.36085/jtis.v1i1.38.
[12]  A.  K.  Hidayah,  C.  Prihantoro,  and S. Fernandez, “Implementasi Metode  Linear  Congruent  Method Pada  Game  Edukasi  Pembelajaran
Huruf  Hijaiyah  Berbasis  Android,”
Pseudocode ,  vol.  8,  no.  1,  pp.  38 – 48, 2021, doi: 10.33369/pseudocode.8.1.38-48.
[13] D.  R.  Purnamasari,  “Implementasi Linear  Congruent  Method  (  Lcm  ) Pada  Game  Hangaroo  Berbasis
Android,” J. Ris. Komput. , vol. 3, no. Lcm, pp. 1 – 6, 2016.
[14] G.  Akbar  and  M.  Linda,  “Aplikasi pembelajaran  trigonometri  berbasis android  menggunakan  algoritma fisher yates shuffle,” J. Tek. Komput. , vol. III, no. 2, pp. 114 – 119, 2017.