• Tidak ada hasil yang ditemukan

Implementasi Algoritma Greedy Pada Game Summy

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Greedy Pada Game Summy"

Copied!
28
0
0

Teks penuh

(1)

LAMPIRAN A

LAMPIRAN HASIL EVALUASI

GAME

SUMMY

DENGAN METODE

BLACK

BOX TESTING

a.

Hasil evaluasi pada Tampilan Halaman Menu Utama

Tabel Hasil Evaluasi Tampilan Halaman Menu Utama

No.

Sasaran

b.

Hasil Evaluasi pada Tampilan Halaman

Game

(2)
(3)
(4)
(5)

d.

Hasil Evaluasi Tampilan Halaman Tentang

Tabel Hasil Evaluasi Tampilan Halaman Tentang

No.

Sasaran

Pengujian

Hasil yang

Diharapkan

Hasil Pengujian

Kesimpulan

1.

Tampilan

halaman

Tentang

Aplikasi dapat

menampilkan

halaman Tentang

Aplikasi berhasil

menampilkan

halaman Tentang

Valid

2.

Tutup

halaman

Bantuan

Aplikasi dapat

menutup halaman

Tentang ketika

area luar halaman

Tentang diklik

Aplikasi dapat

menutup halaman

Tentang ketika

area luar halaman

Tentang diklik

Valid

e.

Hasil Evaluasi Resolusi Layar Monitor terhadap Tampilan Summy

1.

Resolusi Layar Monitor 800 x 600

Pixel

(Terpotong)

(6)

2.

Resolusi Layar Monitor 1024 x 720

Pixel

(Terpotong)

Gambar Tampilan

Summy

pada resolusi monitor 1024 x 720

pixel

3.

Resolusi Layar Monitor 1280 x 720

Pixel

(Terpotong)

(7)

4.

Resolusi Layar Monitor 1366 x 768

Pixel

(Tidak Terpotong)

Gambar Tampilan

Summy

pada resolusi monitor 1366 x 768

pixel

f.

Hasil Evaluasi Performa pada Game Summy

Spesifikasi beberapa komputer yang akan digunakan dalam percobaan adalah

sebagai berikut:

1.

Operating System : Windows 7 Ultimate 32-bit SP1

CPU

: Intel Mobile Core 2 Duo T5870 @ 2.00GHz

RAM

: 2,00GB

Motherboard

: ASUSTeK Computer Inc. K40IN

Graphics

: Generic PnP Monitor (1366x768@62Hz)

512MB NVIDIA GeForce G102M

Storage

: 232GB Seagate ST9250315AS ATA Device (SATA)

2.

Operating System : Windows 7 Ultimate 64-bit SP1

CPU

: Intel Core i3 2310M @ 2.10GHz

RAM

: 4,00GB Dual-Channel DDR3 @ 665MHz

Motherboard

: ASUSTeK Computer Inc. K43E (CPU 1)

Graphics

: Generic PnP Monitor (1366x768@60Hz)

Intel HD Graphics 3000

Storage

: 465GB TOSHIBA MQ01ABF050 SCSI Disk Device

(8)

CPU

: Intel Core i5 4200U @ 1.60GHz

RAM

: 8,00GB Dual-Channel DDR3 @ 798MHz

Motherboard

: ASUSTeK COMPUTER INC. X450LCP

Graphics

: Generic PnP Monitor (1366x768@60Hz)

Intel HD Graphics Family (ASUStek Computer Inc)

2047MB NVIDIA GeForce GT 720M

Storage

: 465GB Hitachi HGST HTS545050A7E680

Tabel Hasil Evaluasi Performa pada Game Summy yang Dicoba pada Beberapa

Komputer Berbeda

Kotak di

tangan

Kotak di papan

Hasil

Bentuk

Komputer Waktu

FPS

terendah

1,3,5,7,9,+,x,-

=

19x3=57

1

0,017

44

2

0,017

60

3

0,017

60

3,4,5,6,7,8,9,-

=

94-58=36

1

0,217

20

2

0,217

28

3

0,200

32

0,2,4,6,8,x,:,-

=

8-6=2

1

0,017

44

2

0,017

60

3

0,017

60

1,2,3,4,5,6,7,+

=

63+12=75

1

0,233

12

2

0,267

28

3

0,217

56

3,4,5,6,7,8,9,-

94-58=36

1

0,283

20

2

0,217

40

3

0,167

60

0,2,4,6,8,x,:,=

96:48=2

1

0,170

24

2

0,170

56

(9)

1,3,5,7,9,+,-,=

93-78=15

1

0,217

24

2

0,017

32

3

0,017

56

1,2,3,4,5,6,7,=

76-45=31

1

1,850

12

2

3,117

20

3

3,567

56

4,5,6,7,8,9,=,+

679+5=684

1

1,950

32

2

1,100

48

(10)

LAMPIRAN B

LAMPIRAN PETUNJUK CARA BERMAIN PADA

GAME SUMMY

Cara bermain pada

game Summy

:

(11)

2.

Jika pemain ingin menukarkan salah satu kotak miliknya dengan kotak yang

lain, pemain dapat melakukan

drag and drop

kotak yang dimaksud ke menu

Tukar.

(12)
(13)

5.

Pemain dapat mengakhiri gilirannya jika telah menyusun bentuk yang valid

untuk memperoleh poin atau jika ingin melewati gilirannya dengan cara

mengklik menu Lanjut.

(14)
(15)
(16)
(17)

LAMPIRAN C

LAMPIRAN LISTING PROGRAM

Kode Program Class GreedyProcess:

Imports System.Text

Imports System.Threading.Tasks Class GreedyProcess

Private Function PermutasiDikurangi(Data() As String, DaftarYangDihapus As String) As String()

Dim DataKandidat = Data.ToList

Dim Dftr = DaftarYangDihapus.Split("/"c) For Each dft In Dftr

If dft <> "" Then

DataKandidat.Remove(dft) End If

Next

Return DataKandidat.ToArray End Function

Structure JenisList

Friend ListNumerik() As String Friend ListOperator() As String End Structure

Private Function PisahNumerik(Data() As String) As JenisList Dim T As List(Of String) = Data.ToList

Dim D() As String = T.ToArray Dim TipeList As New JenisList Dim i = 0

Dim j = 0 For Each S In D

If Integer.TryParse(S, 0) Then

ReDim Preserve TipeList.ListNumerik(i) TipeList.ListNumerik(i) = S

i += 1 Else

ReDim Preserve TipeList.ListOperator(j) TipeList.ListOperator(j) = S

j += 1 End If Next

Return TipeList End Function

Friend Sub SusunKandidatParalelDanSetUpHasil(Data() As String, KandidatSource As GamePlay.KandidatCPUBaseKoordinat, Kpbntu As List(Of

Vector2), IsHorizontal As Boolean, TileYangDipegang As TileBoard(), TileBoard As TileBoard(,), loopState As ParallelLoopState)

Dim TempData = Data

If AktifCPU AndAlso Not CPUPlaceSet AndAlso

CInt(TimeSpan.FromSeconds(WaktuTungguBerjalan).ToString("mm")) < BatasWaktuTunggu Then

(18)

Array.Reverse(TempData)

Private Sub SusunKandidatDanSetUpHasilnya(Data() As String, KandidatSource As GamePlay.KandidatCPUBaseKoordinat, Kpbntu As List(Of Vector2), IsHorizontal As Boolean, TileYangDipegang As TileBoard(), TileBoard As TileBoard(,),

(19)

End If + CDbl(B(j).Replace("/", "")) = CDbl(C(k).Replace("/", "")) Then

'OPTerpakai.Append(OP) - CDbl(B(j).Replace("/", "")) = CDbl(C(k).Replace("/", "")) Then

(20)

If CDbl(A(i).Replace("/", "")) * CDbl(B(j).Replace("/", "")) = CDbl(C(k).Replace("/", "")) Then

'OPTerpakai.Append(OP) / CDbl(B(j).Replace("/", "")) = CDbl(C(k).Replace("/", "")) Then

(21)

End If Next End Sub

Friend Function Permutasi(NPermutasi As Integer, Data() As String) As List(Of String)

(22)

If i > 0 Then

Private Sub CekKePapanPermainan(Solusi As String, KandidatSource As

GamePlay.KandidatCPUBaseKoordinat, KPbntu As List(Of Vector2), IsHorizontal As Boolean, TileYangDipegang As TileBoard(), TileBoard As TileBoard(,), loopState As ParallelLoopState)

Dim avb = AvaibleFormula(Solusi, KandidatSource, KPbntu, TileBoard) Dim Cocok As Boolean = False

Private Function AvaibleFormula(HasilSolusi As String, KandidatSource As GamePlay.KandidatCPUBaseKoordinat, KPembantu As List(Of Vector2), TileBoard As TileBoard(,)) As Integer

Private Function KelayakanCPU(avb As UInt16, Koordinat As Vector2, Solusi As String, KPembantu As List(Of Vector2), IsBaris As Boolean, Player As TileBoard(), TileBoard As TileBoard(,)) As Boolean

(23)

Dim Sol As List(Of Char) = Solusi.ToList Koordinat.Y - If(IsBaris, 1, 0)).Value <> 127 Then

Return False If(IsBaris, Koordinat.Y - k.Y, Koordinat.X - k.X) = avb - i Then

Kpem.Remove(k) Koordinat.Y, Koordinat.X) - (avb - i) >= 0) AndAlso

(TileBoard(Koordinat.X - If(Not IsBaris, (avb - i), 0), Koordinat.Y - If(IsBaris, (avb - i), 0)).Value = 127 And

Not TileBoard(Koordinat.X - If(Not IsBaris, (avb - i), 0), Koordinat.Y - If(IsBaris, (avb - i), 0)).IsBlocked) Then Plyr.Remove(p)

(24)

End If Koordinat.Y + If(IsBaris, 1, 0)).Value <> 127 Then

Return False avb), 0), Koordinat.Y + If(IsBaris, (i + 1 - avb), 0)).Value <> 127 Then

Return False If(IsBaris, k.Y - Koordinat.Y, k.X - Koordinat.X) = i - avb Then

Kpem.Remove(k) avb), 0), Koordinat.Y + If(IsBaris, (i + 1 - avb), 0)).Value <> 127 Then

Return False Koordinat.Y, Koordinat.X) + (i - avb) < TileBoard.GetLength(0)) AndAlso

(TileBoard(Koordinat.X + If(Not IsBaris, i - avb, 0), Koordinat.Y + If(IsBaris, i - avb, 0)).Value = 127 And

(25)

Plyr.Remove(p)

Private Sub CPU_LetakHasilTervalidasi(avb As UInt16, Koordinat As Vector2, Solusi As String, IsHorizontal As Boolean, TileYangDipegang As TileBoard(), TileBoard As TileBoard(,)) Koordinat.Y, Koordinat.X) - (avb - i) >= 0) AndAlso

(TileBoard(Koordinat.X - If(Not IsHorizontal, (avb - i), 0), Koordinat.Y - If(IsHorizontal, (avb - i), 0)).Value = 127 And

Not TileBoard(Koordinat.X - If(Not IsHorizontal, (avb - i), 0), Koordinat.Y - If(IsHorizontal, (avb - i), 0)).IsBlocked) Then p.IsBlocked = True

TileYangDipegang(Array.IndexOf(Plye, p)).IsBlocked = True

TileBoard(Koordinat.X - If(Not IsHorizontal, (avb - i), 0), Koordinat.Y - If(IsHorizontal, (avb - i), 0)).Value = p.Value

Exit For Koordinat.Y, Koordinat.X) + (i - avb) < TileBoard.GetLength(0)) AndAlso

(TileBoard(Koordinat.X + If(Not IsHorizontal, i - avb, 0), Koordinat.Y + If(IsHorizontal, i - avb, 0)).Value = 127 And

Not TileBoard(Koordinat.X + If(Not IsHorizontal, i - avb, 0), Koordinat.Y + If(IsHorizontal, i - avb, 0)).IsBlocked) Then

p.IsBlocked = True

TileYangDipegang(Array.IndexOf(Plye, p)).IsBlocked = True

(26)
(27)

DATA PRIBADI

Nama Lengkap

: Reza Hidayat Bayu Prabowo

Nama Panggilan

: Reza

Tempat/Tanggal Lahir: Labuhan Deli / 19 Januari 1991

Jenis Kelamin

: Pria

Agama

: Islam

Warga Negara

: Indonesia

Alamat

: Jl. Seser No. 48, Medan

HP

: 081534974535

E-mail

: [email protected]

Status

: belum menikah

RIWAYAT PENDIDIKAN

Sekolah Menengah Atas

SMA Negeri 3 Medan

2005-2008

Sekolah Menengah Pertama

SMP Negeri 45 Medan

2002-2005

Sekolah Dasar

SD Negeri 066657 Medan

1996-2002

Programming: C++, C#, VB.Net

Database

: MySQL

IDE

: Visual Studio 2015, Visual Studio Code

Software

: Ms. Office

(28)

PENGALAMAN KERJA

No

Instansi/Lembaga

Jabatan/Posisi

Tahun

1

Freelancer

Programmer

2013-2015

SEMINAR

No.

Seminar

Tahun

1

Seminar Demo Software dan Diskusi Panel Integrasi

Agent

Based

Model

(ABM) dan

Geographic

Information

System

(GIS)

2011

Gambar

Tabel Hasil Evaluasi Tampilan Halaman Game
Tabel Hasil Evaluasi Tampilan Halaman Bantuan
Tabel Hasil Evaluasi Tampilan Halaman Tentang
Gambar Tampilan Summy pada resolusi monitor 1280 x 720 pixel
+3

Referensi

Dokumen terkait

Pada dasarnya permainan puzzle kakuro ini merupakan sebuah permainan yang menggunakan teknik komputasi dalam pencarian solusi salah satunya adalah dengan penerapan

Pengujian algoritma greedy untuk menyelesaikan permainan mahjong solitaire model 2 dilakukan sebanyak 50 kali dan memperoleh tingkat keberhasilan sebesar 54 % dengan

Scoring yang akan dibuat untuk permainan agar dapat menampilkan icon Health yang harus diambil oleh pemain sesuai dengan kondisi agar ketika pemain menabrak penghalang,

Kedua strategi tersebut merupakan strategi terbaik yang dapat digunakan dalam permainan, akan tetapi ketika kedua strategi tersebut tidak dapat dilakukan, maka strategi

Berbeda dengan Greedy Giliran Bermain, pada metode penyelesaian ini, solusi tidak memperhatikan apakah langkah yang akan dilakukan berhenti pada lumbung atau tidak,

Prinsip greedy bisa diterapkan pada permainan 2048. Prinsip ‘take what you can get now’ tersebut diterapkan pada keputusan pengambilan langkah yang diambil. Nilai

Pada penelitian ini penulis akan merancang game edukasi dengan menampilkan beberapa pertanyaan – pertanyaan tentang pendidikan karakter, pertanyaan pada game ini akan diacak

Kode semu algoritma greedy untuk menentukan arah pergerakan karakter ghost adalah sebegai berikut : Fungsi seleksi : Fungsi layak : untuk menentukan apakah pada posisi x dan y