• Tidak ada hasil yang ditemukan

Proposal Algoritma dan Struktur Data ASD (1)

N/A
N/A
Protected

Academic year: 2018

Membagikan "Proposal Algoritma dan Struktur Data ASD (1)"

Copied!
14
0
0

Teks penuh

(1)

LAPORAN TUGAS BESAR

DASAR ALGORITMA & PEMOGRAMAN

JUDUL PROGRAM

“2048”

BIDANG KEGIATAN:

MATH GAMES

Diusulkan oleh:

Dhia Aziz Rizqi Arrahman (Ketua/1301140364/2014)

Lanny Septiani (Anggota1/1301144034/2014)

Renaldy Hardyanto (Anggota2/1301144334/2014)

Budi Santiko (Anggota3/1301144404/2014)

UNIVERSITAS TELKOM

BANDUNG

2014

(2)

RINGKASAN

(3)

A. JUDUL

Judul game yang kami ajukan adalah

2048.

B. LATAR BELAKANG MASALAH

Saat ini teknologi sudah sangat berkembang. Begitu pula berdampak pada game-game yang

ditawarkan pada gadget anda. Apabila kita mencari game, maka akan banyak bermunculan

banyak judul game yang tentunya memiliki ciri khas masing-masing. Dari sekian banyak

game yang sudah ada saat ini, beberapa diantaranya dapat dibuat melalui program pascal.

Termasuk salah satu game yang cukup menarik yakni game

2048

. Game ini sederhana,

namun dapat membuat penggunanya ketagihan untuk bermain. Selain menarik, game ini juga

dapat mengasah kemampuan berhitung anda. Sehingga kami memutuskan untuk membuat

game 2048 ini untuk tugas Dasar algoritma & pemograman kali ini.

C. RUMUSAN MASALAH

1. Apa itu game

2048

?

2. Bagaimana cara membuat game

2048

menggunakan pascal?

D. TUJUAN

1. Untuk mengetahui lebih dalam mengenai game

2048

2. Untuk mengetahui cara membuat game

2048

melalui pascal

(4)

E. PERSOALAN

Untuk memenuhi tugas Dasar algoritma & pemograman, kami membuat sebuah program

game dengan judul

2048

. Game

2048

adalah sebuah game puzzle matematika yang

membutuhkan strategi untuk mencapai angka

2048

. Dalam game ini, tersedia beberapa kotak

kosong yang nantinya beberapa kotak akan diisi oleh angka 2 atau 4 secara random. Kotak

akan bergeser ketika pemain menekan salah satu tombol arah pada keyboard. Angka-angka

dalam kotak tersebut hanya bisa dijumlahkan dengan angka yang sama (misalkan, angka 2

hanya bisa dijumlahkan dengan angka 2 lagi yang akan menghasilkan angka 4 pada satu

kotak), dan seterusnya. Tujuan dari game ini adalah menjumlahkan angka angka yang ada

pada kotak hingga muncul kotak dengan jumlah angka

2048

. Angka 2 atau 4 akan muncul

secara

random

ketika pemain menekan tombol arah.

Papan skor dikanan atas akan terus memperbarui skor pemain. Skor pemain berawal dari

angka nol, lalu bertambah ketika dua kotak bergabung dan membentuk kotak bernomor baru

dan seterusnya seiring dengan kotak kotak yang berhasil dijumlahkan. Seperti permainan

arcade

lainnya, skor terbaik pemain akan ditampilkan bersandingan dengan skor saat itu.

(5)

F. FUNGSIONALITAS

Menjawab persoalan diatas , kami membuat suatu program yang memiliki fungsionalitas sebagai berikut :

1. Input Direction  Perintah yang diinputkan oleh user untuk menentukan arah sebagai langkah selanjutnya

2. Add, delete, edit nilai table Perintah untuk menambahkan nilai pada table kosong, mengedit nilai kolom bernilai sama, dan menghapuskan tabael penjumlah sebelumnya. 3. Pengisian table kosong secara random berisi perintah untuk mengecek posisi-posisi

tabel yang memiliki nilai kosong kemudian menginputkan nilai 2 atau 4 secara random di salah satu tabel kosong tadi.

4. 2048!  perintah yang dilakukan secara berkala untuk mengecek ada tidaknya kolom yang bernilai 2048 yang merupakan kondisi untuk mengakhiri game.

5. Score merupakan perintah untuk menambah score dari perbuatan sesuai kolom-kolom yang saling di jumlahkan. Apabila telah menemukan agnka 2048 akan diberi score tambahan.

6. View rankingPerintah untuk menampilkan urutan score yang tersimpan. 7. Game over  Perintah untuk pengecekan kondisi game telah berakhir atau tudak

(6)

G. SPESIFIKASI PENJELASAN PROGRAM DAN FUNGSIONALITAS

Pada program ini angka-angka genap yang akan dimainkan disimpan dalam array dua dimensi yang terdiri dari 4 buah kolom dan 4 buah baris. Sedangkan procedure dan function dibuat berdasarkan Fungsionalitas yang telah ditentukan, yakni:

1. Input Direction

Procedure InDirection = Procedure yang berisi perintah untuk menginputkan arah(up,down,left,right) sebagai langkah selanjutnya dalam permainan.

Function CekAvailable = Fungsi bertipe yang mengembalikan nilai boolean untuk mengecek apakah terdapat kolom yang bias kosong dan bisa dijumlahkan sesuai ketentuan, apabila false maka akan mengulang ke procedure InDirection.

2. Add, delete, edit nilai table

Terdiri dari fungsi add table yang mengembalikan nilai integer dari tabel kosong menjadi bernilai, fungsi edit table yang mengembalikan nilai integer dengan menjumlahkan antara 2 buah tabel, dan fungsi delete tabel yang mengembalikan nilai integer dengan merubah tabel yang menjumlahkan menjadi nol.

3. Pengisian table kosong secara random

Dengan memanfaatkan procedure IsiRandom yang menghasilkan nilai integer pada salah satu tabel yang bernilai kosong untuk dimasukkan nilai 2 atau 4 secara random, baik pemilihan tabelnya ataupun pemilihan angkanya.

4. 2048!

Berisi Fungsi Cek2048 yang berfungsi untuk mengecek keberadaan kolom yang bernilai 2048, apabila terdapat nilai 2048 maka game akan berakhir dengan kondisi menang.

5. Score

Score merupakan tujuan yang dicari pada game ini, untuk mendapatkan score digunakan fungsi sumscore yang mengembalikan nilai integer dengan menjumlahkan score itu sendiri berdasarkan penjumlah kolom yang diproses pada fungsi edit table sebelumnya. Score dimulai dari nilai nol. Score disimpan dalam bentuk file sederhana berupa bentuk teks.

6. View ranking

Berisi procedure ViewRank untuk memunculkan data ranking berdasarkan score yang telah disorting dari tinggi ke rendah sebelumnya. Ranking hanya menampung 10 data jadi data yang terkecil akan tereleminasi.

(7)

Berisi procedure CekStep untuk mengecek masih terdapat langkah atau tidak untuk melanjutkan permainan ini, yang dicek adalah ada tidaknya bilangan yang dapat dijumlah dan banyaknya kotak kosong, apabila tidak terdapat bilangan yang dapat dijumlah dan semua kotak penuh maka game akan berkahir.

Program dalam algoritma:

(8)
(9)
(10)
(11)
(12)
(13)

Program ketika di Run

(14)

KESIMPULAN

Referensi

Dokumen terkait

Kebijakan puritanisme oleh sultan Aurangzeb dan pengislaman orang-orang Hindu secara paksa demi menjadikan tanah India sebagai negara Islam, dengan menyerang berbagai praktek

Penyiaran lslam Wajib Kursus Bahasa Inggri s Berpeluang mendapat beasi swa 31 Achmad Khoirul Faqih 62002t10082 Manajemen Pendidikan Islam Wajib Kursus Bahasa Inggris

Puji syukur kehadirat Allah SWT, atas limpahan Rahmat dan Karunia-Nya, sehingga penulis dapat merampungkan Tugas Akhir yang berjudul “Pengaruh Degradasi Lingkungan terhadap Mata

Dalam keadaan terpaksa, misalnya pasien tidak mungkin untuk diangkut ke kota/rumah sakit besar, sedangkan tindakan darurat harus segera diambil maka seorang dokter atau bidan

Berdasarkan data dari PT Pegadaian (Persero) Cabang Blitar, data daftar nasabah yang aktif dengan pengajuan Kredit agunan dengan system fidusia (Kreasi) di Pegadaian

Satuan Tugas Penyelenggaraan SPIP, yang selanjutnya disingkat Satgas adalah suatu tim dengan tugas memfasilitasi pelaksanaan seluruh tahapan penyelenggaraan SPIP di

Rinitis vasomotor merupakan suatu gangguan fisiologik neurovaskular mukosa hidung dengan gejala hidung tersumbat, rinore yang hebat dan kadang – kadang dijumpai adanya bersin

Kegiatan IbDM (Ipteks bagi Desa Mitra) berlokasi di Desa Jeruju Besar Kecamatan Sungai Kakap. Mitra kegiatan ini yaitu kelompok PKK, kelompok mitra perikanan dan