Senin, 05 Desember 2016

game sederhana tebak angka



LAPORAN TUGAS BESAR
PRAKTIKUM PEMROGRAMAN KOMPUTER

 “GAME SEDERHANA TEBAK ANGKA


Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Komputer
Yang Dibimbing oleh
Bapak Drs. Wahyu Sakti Gunawan Irianto M.Kom.













Oleh:
Fatma Cahyaningrum  (150534607277)
S1 PTE 2015 Offering B



UNIVERSITAS NEGERI MALANG
FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI PENDIDIKAN TEKNIK INFORMATIKA
MEI 2016







GAME SEDERHANA TEBAK ANGKA
Fatma Cahyaningrum
Program Studi Pendidikan Teknik Elektro, Jurusan Teknik Elektro, Fakultas Teknik,
UNIVERSITAS NEGERI MALANG
fatmacahya12@gmail.com


Abstrak

Bahasa C++ merukapakan bahasa pemrograman komputer yang berasal dari pengembangan bahasa C. Bahasa pemrograman C++ ini banyak sekali ketentuan-ketuntuan yang harus kita patuhi agar program yang kita buat sama seperti apa yang kita fikirkan, dan program bisa berjalan tanpa ada error.
Dengan bahasa pemrograman C++ banyak aplikasi yang dapat kita gunakan untuk mengcompile program dengan bahasa C++, salah satunya adalah minGW. Dengan minGW kita dapat membuat banyak program diantaranya, membuat daftar menu, menampilkan harga suatu barang, menghitung suatu bangun ruang, bahkan dapat membuat game sederhana.
Pada paper ini akan dibahas mengenai pembuatan game sederhana tebak angka dengan bahasa C++ menggunakan compiler minGW. Di dalam pembuatan game tebak angka ini adalah gabungan dari beberapa ketentuan dari bahasa C++ diantaranya fungsi, array, perulangan, operasi kondisi, operator. Dengan penggabungan ketentuan tersebut dapat menyingkat script yang panjangdan dapat memudahkan pembuatan program yang kita inginkan.
Kata kunci: pemrograman, C++, minGW, game.



1.        Pendahuluan
1.1  Latar Belakang
C++ adalah bahasa pemrograman komputer yang di buat oleh (Bjarne Stroustrup) merupakan perkembangan dari bahasa C dikembangkan di Bell Labs (Dennis Ritchie) pada awal tahun 1970-an, Bahasa itu diturunkan dari bahasa sebelumnya, yaitu BCL, Pada awalnya, bahasa tersebut dirancang sebagai bahasa pemrograman yang dijalankan pada sistem Unix, Pada perkembangannya, versi ANSI (American National Standart Institute) Bahasa pemrograman C menjadi versi dominan, Meskipun versi tersebut sekarang jarang dipakai dalam pengembangan sistem dan jaringan maupun untuk sistem embedded, Bjarne Stroustrup pada Bel labs pertama kali mengembangkan C++ pada awal 1980-an, Untuk mendukung fitur-fitur pada C++, dibangun efisiensi dan sistem support untuk pemrograman tingkat rendah (low level coding). Pada C++ ditambahkan konsep-konsep baru seperti class dengan sifat-sifatnya seperti inheritance dan overloading. Salah satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek (Object Oriented Programming).
Bahasa tingkat tinggi merupakan bahasa yang mudah dipahami oleh manusia, C dan C++ merupakan contoh bahasa dari bahasa tingkat tinggi. Contoh lain dari bahasa tingkat tinggi adalah Pascal , Perl, Java, dan lain lain. Sedangkan bahasa tingkat rendah merupakan bahasa mesin atau bahasa assembly.
Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bahasa mesin. Oleh karena itu , jika suatu program ditulis dalam bahasa tingkat tinggi, maka program tersebut harus diproses dahulu sebelum bisa dijalankan dengan komputer.

1.2  Tujuan
Pembuatan paper ini bertujuan untuk:
a.       Memudahkan pembaca mengerti akan program yang telah saya buat
b.      Memenuhi persyaratan uas DPK (Dasar Pemrograman Komputer)
1.3  Manfaat
Pembuatan paper ini mempunyai manfaat yaitu:
a.       Pembaca lebih mudah mengerti akan program yang telah saya buat.

2.      Dasar Teori
2.1.  Tinjauan tentang “Game Sederhana Tebak Angka”
Game Sederhana Tebak Angka ini merupakan gabungan dari program program yang berasal dari modul 1 sampai modul 7 yaitu system oprasi, ide visual C++, algoritma pemrograman, operator, operasi kondisi, perulangan, array, dan fungsi.
2.2.   Bahasa C++
  C++ adalah bahasa pemrograman komputer yang di buat oleh (Bjarne Stroustrup) merupakan perkembangan dari bahasa C dikembangkan di Bell Labs (Dennis Ritchie) pada awal tahun 1970-an, Bahasa itu diturunkan dari bahasa sebelumnya, yaitu BCL.
3.      Kerangka Program
Program ini mempunyai tujuan untuk menghibur siapaun yang membuka program game sederhana tebak angka. Danjuga program ini dibuat untuk memenuhi tugas akhir pemrograman komputer.
Berikut algoritmanya:
1.        Mulai program
2.        Masuk halaman awal
3.        Masukkan nama panggilan
4.        Loading untuk masuk ke game tebak angka
5.        Mulai bermain tebak angka
6.        Apabila user hanya mengiyakan peti a saja maka jawabannya 8
7.        Apabila user hanya mengiyakan peti a dan b saja maka jawabannya 4
8.        Pabila user hanya mengiyakan peti a, b, dan c saja maka jawabannya akan 2
9.        Apabila user mengiyakan peti a, b, c, dan d maka jawabannya 1
10.    Apabila ia menjawab angka 1-15  maka akan menampilkan angka yang ia fikirkan
11.    Apabila iaya tidak memikirkan angka 1-15 maka program akan menampilkan angka yang ia fikirkan tidak benar, angka harus antara 1-15
12.    Selesai


Adapun untuk model flowchart sederhananya adalah sebagai berikut (model flowchart lengkapnya terlampir pada lampiran I)










4.      Hasil
4.1  Source Code
Source Code dari program ini terlampir pada Lampiran II.
4.2  Print Screen
Berikut ini disajikan tampilan layar console dari program
 
Ini adalah tampilan awal program
User memasukkan nama 
Loading untuk masuk ke dalam game
Mulai bermain tebak angka
Apabila jawaban kita ‘y’ pada keempat peti maka kita memikirkan angka 1 dan program akan menampilkan angkanya.

5.      Pembahasan
Program ini menggunakan header #include <iostream.h> yang berfungsi untuk cout dan cin dan header #include <conio.h> yang berfungsi untuk getch () dan system (“cls”) atau untuk membersihkan layar.
Di dalam program ini terdapat fungsi awalan, masukkan nama, loading, inisial, kartu, jawaban, tampilan_jawaban, dan main. Semua fungsi tersebut akan di susun pada fungsi main dengan perulangan for (i=0; i<=1; i--).
Pendeklarasian pada program ini yaitu char ans1, ans2, ans3, ans4, int a, dan menggunakan array char nama [15]. Array di sini untuk nama yang di masukkan oleh user, saya membuatnya 15 karater apabila lebih dari 15 maka program tidak akan membaca karakter selanjutnya.
 Pada void masukan_nama () terdapat cin.getline (nama, sizeof (nama)) yang berfungsi untuk program dapat membaca karakter nama setelah spasi.
Pada void loading terdapat perulangan untuk menampilkan loading, disini saya mengguunakan angka, jadi menggunakan perulangan for(int i=o; i<=200; i++) karena saya mendklarasikan i<=200 maka nanti akan keluar 200 persen.
Pada void kartu () akan menampilkan persyaratan game yang akan di lakukan.
Pada void jawaban () terdapat operasi kondisi yaitu if(ans1 == 'y' || ans1 == 'Y') {a=8} if(ans2 == 'y' || ans2 == 'Y') {a=4} if(ans3 == 'y' || ans3 == 'Y') {a=2} if(ans4 == 'y' || ans4 == 'Y') {a=1} yang artinya jika kita memilih hanya di peti a maka angka yang di tampilkan adalah 8, apabila yang dipilih peti a dan b maka angka yang di tampilkan adalah 4, apabila peti yang di pilih adalah a, b, c, maka angka yang di tampilkan adalah 2. Dan apabila peti yang di pilih adalah a, b, c, dan d maka angka yang di tampilkan adalah 1.
Pada void tampilan_jawaban (), menampilkan hasil dari jawaban pertanyaan pada void jawaban ().
Program ini akan berjalan mulai dari awalan, kemudian setelah tekan enter masukkan nama setelah memasukkan nama tekan enter kemudian akan muncul loading. Setelah loading akan menampilkan game tebak angka. Setelah itu akan di tampilkan pertanyaan pertanyaan yang harus di jawab. Setelah itu program akan menebak angka yang user fikirkan.

6.      Penutup
Kesimpulan
      Game tebak angka ini sangat mudah di mainkan, karena hanya memilih satu angka yang ada di peti mana saja, dan menjawab pertanyaan apakah ada di peti a, b, c, atau d. setelah menjawab pertanyaan maka program akan menebak angka yang telah anda fikirkan.
Daftar Pustaka
Tim Asisten Dosen. 2014. Modul 1-7. Malang : Universitas Negeri Malang. 


Lampiran II

Script program:
#include <iostream.h>
#include <conio.h>
char ans1, ans2, ans3, ans4;
int a;
char nama [15];//array
void awalan()
{
  system ("color 0a");
  cout<<"\t\tPERMAINAN\t\t\t\n";
  cout<<"_______  _____    ____       _           \n ";
  cout<<"   |    |       |    |     | |     |  |  \n ";
  cout<<"   |    |_____  |____|    |___|    |_|   \n ";
  cout<<"   |    |       |     |  |     |   |  |  \n ";
  cout<<"   |    |_____  |_____| |       |  |   | \n ";
  cout<<"  \n";
  cout<<"     _     _______  ______              _      \n";
  cout<<"    | |    |     |  |        |  |      | |     \n";
  cout<<"   |___|   |     |  |   ___  |_|      |___|    \n";
  cout<<"  |     |  |     |  |  |   | |  |    |     |   \n";
  cout<<" |       | |     |  |______| |   |  |       |  \n";
  cout<<"\n";
  cout<<"\n";
  cout<<"\t\t(tekan enter)";
  getch();
}
void masukan_nama()
{
  cout<<"\n";
  cout<<"\n";
  cout<<"Ketikkan nama panggilan kamu disini = ";
    cin.getline(nama, sizeof(nama));
    cout<<"\nTerima Kasih " << nama <<", silakan bermain... "<<endl<<endl;
  system ("cls");
}
void loading ()
{
  system ("color 0b");
    for(int i=0;i<=200;i++)//perulangan
  {
     cout << "---------------------------TEBAK ANGKA-----------------------------\n";
     cout << "-------------------------------------------------------------------\n";
        cout<<endl<<endl<<endl<<endl;
     cout<<"\t\t\tLoading . . . . . "<<i<<"%"<<endl;
        system("cls");
  }
}
void kartu()
{
  system ("color 1b");
    cout << "---------------------------TEBAK ANGKA-----------------------------\n";
  cout << "-------------------------------------------------------------------\n";
    cout << "\n             TERDAPAT 4 PETI\n";
  cout << "yang disetiap peti terdapat angka di dalamnya\n";
  cout << endl;
  cout << "|==========|  |==========|  |==========|  |==========|   \n";
  cout << "|----**----|  |----**----|  |----**----|  |----**----|   \n";
  cout << "|   peti   |  |   peti   |  |   peti   |  |   peti   |   \n";
  cout << "|    A     |  |    B     |  |    C     |  |    D     |   \n";
  cout << "|__________|  |__________|  |__________|  |__________|   \n";
  cout << endl << endl;
  cout << "Peti A :  1, 2, 3, 4, 5,  6,  7,  8" <<endl;
    cout << "Peti B :  1, 2, 3, 4, 9, 10, 11, 12" <<endl;
    cout << "Peti C :  1, 2, 5, 6, 9, 10, 13, 14" <<endl;
    cout << "Peti D :  1, 3, 5, 7, 9, 11, 13, 15" <<endl;
    cout << endl;
    cout << "\nTugas kamu adalah pikirkan SEBUAH ANGKA 1-15 yang ada di peti mana saja, "<<endl;
    cout << "\nlalu jawablah pertanyaan di bawah ini !";
    cout << endl<<endl;
  
}
void jawaban()
{
    cout << "Apakah angka kamu ada di peti A "<< nama << "? (y/t)";
    cin >> ans1;
    if(ans1 == 'y' || ans1 == 'Y')
        a -= 8;
  cout<<endl;
    cout << "Apakah angka kamu ada di peti B "<< nama << "? (y/t)";
    cin >> ans2;
    if(ans2 == 'y' || ans2 == 'Y')
        a -= 4;
  cout<<endl;
    cout << "Apakah angka kamu ada di peti C "<< nama << "? (y/t)";
    cin >> ans3;
    if(ans3 == 'y' || ans3 == 'Y')
      a -= 2;
  cout<<endl;
    cout << "Apakah angka kamu ada di peti D "<< nama << "? (y/t)";
    cin >> ans4;
    if(ans4 == 'y' || ans4 == 'Y')
        a -= 1;

    cout<<endl<<endl;
}
void inisial()
{
  a=16;
}
void tampilan_jawaban()
{
    if(a > 0 && a <= 15)//oprasi kondisi
  {
        cout << "Angka yang ada dipikiran "<<nama<<" adalah " << a <<" , benar kan???"<<endl<<endl;
     cout<<"                       ,,,    ,,,      "<<endl;
      cout<<"                      ( ',') ('o')/    "<<endl;
     cout<<"                       .  .   .  .     "<<endl;
     cout<<"                      <|''|> /|''|     "<<endl;
     cout<<"                       |__|   |__|     "<<endl;
     cout<<"                      ./  L  ./  L     "<<endl;
  }
    else
        cout << "Angka yang " << nama << " pikirkan tidak benar, angkanya harus antara 1-15 lho"<<endl<<endl;

    cout << "--------------------------------------------------" << endl;
    cout << "  terimakasih "<< nama <<" sudah bermain tebak angka" <<endl;
    cout << "--------------------------------------------------" << endl;
}
int main()//fungsi
{
    int i =1;
  awalan();
    for(i = 0 ; i <=1 ; i--)
    {
        masukan_nama();
     loading ();
     inisial();
        kartu();
        jawaban();
     tampilan_jawaban();
     return i;
    }
}




 

Tidak ada komentar:

Posting Komentar