Permainan Kuis Islam Berbasis Android Menggunakan Linear Congruent Method (LCM)

5

BAB 2
LANDASAN TEORI

2.1 Linier Congruent Method
linear congruent method adalah metode pembangkit bilangan acak yang banyak
digunakan dalam program komputer. Model linier dimanfaatkan oleh linear
congruent method untuk membangkitkan bilangan acak yang didefinisikan dengan:
Xn = (a(Xn-1)+c) mod m
Keterangan:
Xn = Bilangan acak ke-n dari deretannya
Xn-1 = Bilangan acak sebelumnya
a = Faktor pengalih
c = Increment (penambah)
m = Modulus (batas maksimum bilangan acak)
a, c, m adalah semua konstanta linear congruent method.
Ciri khas linear congruent method adalah pengulangan terjadi pada periode
waktu tertentu atau setelah sekian kali pembangkitan, hal ini merupakan satu sifat dari
metode ini dan pseudorandom generator pada umumnya. Penentuan konstanta linear
congruent method (a, c dan m) sangat menentukan baik atau tidak baik bilangan

random yang diperoleh. Dalam arti memperoleh bilangan random yang seolah-olah
tidak terjadi pengulangan.
Membangkitkan bilangan acak sebanyak 3 kali dengan ketentuan a=3, c=5, m=10,
dan X0 = 4.
X1 = ( 3 (4) + 5 ) mod 10 = 17 mod 10 = 7
X2 = ( 3 (7) + 5 ) mod 10 = 26 mod 10 = 6
X3 = ( 3 (6) + 5 ) mod 10 = 23 mod 10 = 3

Universitas Sumatera Utara

6

Bilangan-bilangan acak yang dibangkitkan adalah: 7, 6, dan 3 dan perulangan
tidak terlihat secara periodik (Munthe, 2014).

Linear congruent method atau linear congruential generator memiliki 2 tipe:
1. Mixed congruential generators dimana c>0
Contoh:
Membangkitkan bilangan acak sebanyak 4 kali dengan ketentuan a=1, c=8, m=10,
dan X0 = 4.

X1 = ( 1 (4) + 8 ) mod 10 = 12 mod 10 = 2
X2 = ( 1 (2) + 8 ) mod 10 = 10 mod 10 = 0
X3 = ( 1 (0) + 8 ) mod 10 = 8 mod 10 = 8
X4 = ( 1 (8) + 8 ) mod 10 = 16 mod 10 = 6
Bilangan-bilangan acak yang dibangkitkan adalah: 2, 0, 8 dan 6 dan
perulangan tidak terlihat secara periodik.

2. Multiplicative congruential generators dimana c=0
Contoh:
Membangkitkan bilangan acak sebanyak 3 kali dengan ketentuan a=3, c=0, m=10,
dan X0 = 2.
X1 = ( 3 (2) + 0 ) mod 10 = 6 mod 10 = 6
X2 = ( 3 (6) + 0 ) mod 10 = 18 mod 10 = 8
X3 = ( 3 (8) + 0 ) mod 10 = 24 mod 10 = 4
Bilangan-bilangan acak yang dibangkitkan adalah: 6, 8 dan 4 dan perulangan
tidak terlihat secara periodik (Naldo, 2015).

Universitas Sumatera Utara

7


2.2 Kuis Islam
Kuis Islam adalah permainan edukasi yang menguji pengetahuan dan wawasan
manusian tentang agama Islam. Permainan kuis Islam terdiri dari berbagai kuis seperti
pengetahuan tentang iman, ibadah, riwayat nabi, akhlak dan lain-lain (Play, 2016).

2.3 Android
Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang
terdapat sistem operasi, middleware dan aplikasi (Murtiwiyati & Lauren, 2013).
Sistem android memiliki arsitektur grafis atau “Architecture of android system”.
Applications
Lapisan atas dari arsitektur android yang berisi aplikasi. Pengembang android
mengembangkan aplikasi itu. Terdapat beberapa aplikasi standar seperti Browser atau
SMS client, namun pengguna dapat membeli dan menginstal aplikasi baru ke
Application Layer.
Applications Framework
Applications Framework merupakan lapisan kedua dalam aplikasi android.
Application Framework, yang cukup banyak menyediakan tools yang dibutuhkan
untuk mengerjakan tujuan apa pun yang dirancang. Pengembang aplikasi mengakses
Applications Framework secara langsung untuk membuat fungsi dari aplikasi. Di

samping aplikasi yang sebenarnya pada perangkat, Applications Framework juga
berkomunikasi dengan lapisan Libraries arsitektur android.
Libraries
Libraries asli android pada dasarnya hanya terdiri dari sejumlah fungsi yang
memungkinkan perangkat untuk memproses beragam jenis data. Beberapa Libraries
khusus untuk jenis perangkat tertentu dan dianggap generic untuk semua perangkat
android.
Android Runtime

Universitas Sumatera Utara

8

Android Runtime terdiri dari dua elemen besar, yaitu: Core Libraries dan Davik
Virtual Machine. Core Libraries memungkinkan pengembang aplikasi android untuk
membuat dan mendistribusikan kode dalam bahasa pemrograman java. Libraries Core
ini akan mempunyai akses ke Libraries asli android dan Davilk Virtual Machine.
Davilk Virtual Machine, fungsi aplikasi ini seperti mesin mandiri dan mengeskekusi
kode yang dibuat dengan Java Core Libraries. Hal ini juga berfungsi selaku perantara
antara Java Core Libraries dan Hardware Abstraction layer dari perangkat android.

Hardware Abstraction Layer
Sejumlah diagram arsitektur android memiliki HAL yang termasuk bagian dari Linux
Kernel. HAL pada dasarnya mengurus komunikasi antara perangkat keras yang
ditampilkan pada Linux Kernel dan semua lapisan perangkat lunak lain.
Linux Kernel
Sistem operasi android pada dasarnya dibangun di atas Linux Kernel 2.6 dan
mepersiapkan driver yang dibutuhkan perangkat Linux untuk berkomunikasi dengan
modul dari Hardware Abstraction Layer. Kernel Linux juga menghandel semua
fungsi sistem operasi dasar untuk perangkat android, seperti alokasi memori,
komunikasi jaringan, dan keamanan aplikasi (Novrianda, et al, 2014).

2.4 Penelitian Terdahulu
Belum ada penelitian sebelumnya yang membahas tentang permainan kuis Islam
menggunakan linear congruent method.

Universitas Sumatera Utara

9

Tabel 2.1 Penelitian Terdahulu

No
1

2

3

Judul

Peneliti

Tahun

Symmetric key cryptography using

Zeenat Mahmood, J. L 2012

dynamic key and linear congruential

Rana & Prof. Ashish


generator (LCG)

Khare

Linear congruential generator for

Mary Evanchalin .S & 2014

LUT-SR architecture

Arulmozhi .P

Perancangan aplikasi game edukasi

Andriasnyah

2014

Ashari


2014

Daniel Munthe

2014

menggunakan metode linear
congruent method (LCM)
4

Perancangan aplikasi puzzle tokoh
pejuang kemerdekaan menggunakan
linear congruent method

5

Implementasi linier congruent method
(LCM) pada aplikasi tryout SNMPTN


6

7

Design and Implementations of Linear

Zulfikar

Congruential Generator into FPGA

Walidainy

Perancangan aplikasi kuis wawasan

Hepy Triyuliastin

&

Hubbul 2014


2015

kebangsaan menggunakan metode
linear congruent methods (LCM)

Universitas Sumatera Utara