Minggu, 16 April 2017

TUGAS SOFTSKILL - KOMPUTASI BIOLOGI

Pengertian Komputasi Modern

            Komputasi modern adalah sebuah konsep sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory, memory disini bisa juga dari memory komputer. Oleh karena pada saat ini kita melakukan komputasi menggunakan komputer maka bisa dibilang komputer merupakan sebuah komputasi modern. Dalam kerjanya komputasi modern menghitung dan mencari solusi dari masalah yang ada, dan perhitungan yang dilakukan itu meliputi:
1. Akurasi (big, Floating point)
2. Kecepatan (dalam satuan Hz)
3. Problem Volume Besar (Down Sizzing atau pararel)
4. Modeling (NN & GA)
5. Kompleksitas (Menggunakan Teori big O)

Sejarah Komputasi Modern

Permulaan komputasi modern dimulai pada saat tahun 1926 oleh ilmuan yang berasal dari hungaria yang bernama John Von Neumann. Von Neumann seorang ilmuan yang belajar dari Berlin dan Zurich dan mendapatkan diploma pada bidang teknik kimia pada tahun 1926.
Beliau adalah ilmuan yang meletakkan dasar-dasar komputer modern. Von Neumann telah menjadi ilmuwan besar abad 21. Von Neumann memberikan berbagai sumbangsih dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer yang di salurkan melalui karya-karyanya . Beliau juga merupakan salah satu ilmuwan yang terkait dalam pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kegeniusannya dalam matematika telah terlihat semenjak kecil dengan mampu melakukan pembagian bilangan delapan digit (angka) di dalam kepalanya.


Jenis-jenis Komputasi Modern

1. Mobile computing



            Mobile computing atau komputasi bergerak memiliki beberapa penjelasan, salah satunya komputasi bergerak merupakan kemajuan teknologi komputer sehingga dapat berkomunikasi menggunakan jaringan tanpa menggunakan kabel dan mudah dibawa atau berpindah tempat, tetapi berbeda dengan komputasi nirkabel. Contoh dari perangkat komputasi bergerak seperti GPS, juga tipe dari komputasi bergerak seperti smart phone, dan lain sebagainya.

2. Grid computing



            Komputasi grid menggunakan komputer yang terpisah oleh geografis, didistibusikan dan terhubung oleh jaringan untuk menyelasaikan masalah komputasi skala besar.

3. Cloud computing



            Komputasi cloud merupakan gaya komputasi yang terukur dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet. Komputasi cloud menggambarkan pelengkap baru, konsumsi dan layanan IT berbasis model dalam internet, dan biasanya melibatkan ketentuan dari keterukuran dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet.

Komputasi Biologi
            Bioinformatika merupakan sebuah disiplin ilmu yang mempelajari penerapan teknik komputasi untuk diterapkan dalam pengelolaan dan analisis biologis. Bidang ini mencakup penerapan dalam ilmu matematika, statistika dan informatika untuk memecahkan masalah biologis, terutama dalam hal DNA dan asam amino serta informasi yang terkait dengan kedua hal itu.
            Bioinformatika berupa sistem manajemen informasi yang meliputi database biologi molekul dan software sebagai tools untuk mengelola dan menganalisis data biologis. Munculnya bioinformatics diharapkan dapat mengorganisasi penyimpanan data biologi sehingga memudahkan ilmuwan mengkases data di dalam database dan mengunggah data terbaru ke dalam database. Selain itu, dengan munculnya bioinformatics sebagai displin ilmu baru baik di dunia biologi molekuler maupun teknik informatika, maka diharapkan akan lahir program-program bioinformatika baru yang lebih maju dan inovatif dalam mengolah dan menyimpan database molekuler.

Teknologi Di Bidang Bioinformatika
1.      Microsoft Bioinformatics Initiative
Program “Microsoft Bioinformatics Initiative” yang terdiri dari dua komponen utama :
-          .NET BIO :
.NET Bio mendukung berbagai formal file bioinformatika; berbagai algoritma untuk manipulasi sekuens protein, RNA, dan DNA; dan pasangan konektor untuk terhubung ke layanan web biologi seperti NCBI BLAST.
-          Microsoft Biology Tools (MBT) :
The Microsoft Biology Tools (MBT) merupakan kumpulan tool yang bisa digunakan para peneliti bioinformatika dan biologi supaya lebih produktif dalam menemukan berbagai penemuan sains. Tool di dalam katalog MBT bebas digunakan, dan juga termasuk didalamnya kode sumber terbuka dan berbagai proyek kolaborasi sumber terbuka.
2.      BioHPC
BioHPC merupakan implementasi HPC untuk para peneliti biologi. HPC adalah High Performance Computing, yang memanfaatkan sebanyak mungkin sumber daya komputer yang ada untuk menyelesaikan satu tugas berat dengan lebih singkat.
3.      Windows Azure Bioinformatics
Windows Azure merupakan satu layanan komputasi awan Microsoft yang bisa digunakan untuk menyelesaikan berbagai tugas bioinformatika dengan cepat.


Manfaat Bioinformatika 
1.      Bioinformatika dalam bidang Klinis
Dengan data dokter akan bisa menentukan obat yang sesuai dengan kondisi pasien tertentu. Lebih jauh lagi, dengan dibacanya genom manusia, akan memungkinkan untuk mengetahui penyakit genetik seseorang, sehingga personal care terhadap pasien menjadi lebih akurat.
2.      Bioinformatika dalam bidang Virologi
Sebelum kemajuan bioinformatika, untuk mengklasifikasikan virus kita harus melihat morfologinya terlebih dahulu. Untuk melihat morfologi virus dengan akurat, biasanya digunakan mikroskop elektron yang harganya sangat mahal sehingga tidak bisa dimiliki oleh semua laboratorium. Selain itu, kita harus bisa mengisolasi dan mendapatkan virus itu sendiri.
3.      Bioinformatika Untuk Penemuan Obat
Cara untuk menemukan obat biasanya dilakukan dengan menemukan zat/senyawa yang dapat menekan perkembangbiakan suatu agent penyebab penyakit. Karena perkembangbiakan agent tersebut dipengaruhi oleh banyak faktor, maka faktor-faktor inilah yang dijadikan target. Diantaranya adalah enzim-enzim yang diperlukan untuk perkembangbiakan suatu agent, mula mula yang harus dilakukan adalah analisa struktur dan fungsi enzim-enzim tersebut. Kemudian mencari atau mensintesa zat/senyawa yang dapat menekan fungsi dari enzim-enzim tersebut.
4.      Bioinformatika Untuk Identifikasi Agent Penyakit Baru
Bioinformatika juga menyediakan tool yang sangat penting untuk identifikasi agent penyakit yang belum dikenal penyebabnya.
5.      Deteksi Kelainan Janin
Lembaga Biologi Molekul Eijkman bekerja sama dengan Bagian Obstetri dan Ginekologi Fakultas Kedokteran Universitas Indonesia dan Rumah Sakit Cipto Mangunkusumo sejak November 2001 mengembangkan klinik genetik untuk mendeteksi secara dini sejumlah penyakit genetik yang menimbulkan gangguan pertumbuhan fisik maupun retardasi mental seperti antara lain, talasemia dan sindroma down. Kelainan ini bisa diperiksa sejak janin masih berusia beberapa minggu.

Sumber:

Minggu, 26 Maret 2017

TUGAS SOFTSKILL - CLOUD COMPUTING

Cloud  computing ( Komputasi Awan )

Hasil gambar untuk CLOUD COMPUTING

“Cloud computing adalah sebuah model yang memungkinkan kenyamanan, akses jaringan sesuai permintaan untuk beberapa pengguna untuk berbagi pool dari sumberdaya komputasi yang mudah diatur (seperti: jaringan, server, aplikasi dan layanan) yang dapat ditetapkan secara cepat dan diluncurkan dengan usaha manajemen minimal atau interaksi penyedia layanan. Karakteristik penting ini, tiga model layanan dan empat model peluncuran,” (NICT).

 Jenis layanan yang disediakan cloud computing yaitu :
1.              Infrastructure-as-a-Service (IaaS)
                 Hal ini meliputi seluruh penyediaan infratruktur IT seperti fasilitas data center,                 storage, server, grid untuk virtualized server, dan seluruh komponen networking yang ada             didalam sistem cloud yang dikelola pihak ketiga
2.              Platform-as-a-Service  (PaaS)
                Adalah development platform berbasis web, dimana Anda bisa menggunakannya untuk membuat sebuah aplikasi web. PaaS akan membuka kesempatan bagi para developerdari berbagai tingkat pengetahuan, untuk mengembangkan aplikasi secara cepat dan murah.
3.              Software-as-a-Service (SaaS)
                 Adalah software atau aplikasi web-based interface, yang dideploy di sisi pihak ketiga, sehingga   dapat diakses melalui jaringan oleh setiap pelanggan.

Kelebihan loud Computing
·         Minimalisasi biaya
·         Mempercepat sehingga meningkatkan produktivitas
·         terbukanya pasar baru bagi industri jasa pengembangan teknologi informasi.
·         Integrasi aplikasi dengan berbagai perangkat

Kekurangan Cloud Computing
-           Service level
kemungkinan service performance yang kurang konsisten dari provider. Inkonsistensi cloud provider ini meliputi, data protection dan data recovery.
-          Privacy
adanya resiko data user akan diakses oleh orang lain karena hosting dilakukan secara bersama-sama.
-          Compliance
 mengacu pada resiko adanya penyimpangan level compliance dari provider terhadap regulasi yang diterapkan oleh user.
-          Data ownership
mengacu pada resiko kehilangan kepemilikan data begitu data disimpan dalam cloud.
-          Data mobility
 mengacu pada kemungkinan share data antar cloud service dan cara memperoleh kembali data jika suatu saat user melakukan proses terminasi terhadap layanan cloud computing.

Cara Kerja :
Sistem ini bekerja menggunakan internet sebagai server dalam mengolah data yang memungkinkan pengguna untuk login ke internet yang tersambung ke program untuk menjalankan aplikasi yang dibutuhkan tanpa perlu melakukan instalasi. 
Contoh Cloud Computing
  1. Penggunaan email seperti Gmail. Data di beberapa server diintegrasikan secara global tanpa harus mendownload software untuk menggunakannya, pengguna hanya memerlukan koneksi internet agar dapat menggunakan sistem tersebut.
  2. Google Docs yang berbasis di sever. Terintegrasi dengan Google Mail, file tersimpan dan dapat di proses dari internet.

Referensi:
http://agungtranata.blogspot.co.id/2014/10/cloud-computing.html
http://ilmukomputer.org/wp-content/uploads/2013/07/Alif-Zulfa_cloudcomputing.pdf

Rabu, 09 November 2016

miniOS: Aspek Keuangan

Operating system adalah komponen pengolah piranti lunak dasar (essential component) yang tersistem sebagai pengelola sumber daya dari perangkat keras komputer (hardware), dan sebagai penyedia layanan umum untuk aplikasi.




MiniOS merupakan perusahaan kecil buatan kami yang bergerak dalam bidang pembuatan piranti lunak dasar atau operating system. MiniOS sendiri memiliki arti mini Operating System, yaitu operating system yang berukuran mini. Pada logo perusahaan terdapat 8 berlian serta tulisan "miniOS" , ke delapan berlian itu sendiri memilki arti yaitu melambangkan 8 anggota yang memiliki ide berlian. Serta ide ide kecil yang diusungkan dilambangkan oleh tulisan mini yang berukuran kecil, namun ide kecil itu bisa membuat sesuatu yang besar yang dilambangkan oleh ukuran tulisan OS yang besar. Tagline kami sendiri adalah "mini but mighty".

VISI
Menjadi perusahaan yang mampu berdaya saing untuk menjadi nomor satu di dunia.

MISI
  1.  Memberikan produk terbaik demi tercapainya kepuasan pelanggan
  2. Menciptakan produk teknologi yang bebas(available), aman(secure), murah(low cost) serta cepat(fast)
  3.  Mengoptimalkan pengelolaan sumber daya manusia yang unggul dan dapat dipercaya.

Aspek Keuangan
Direktur Keuangan (Diah Fajar Pratiwi)
Keuangan merupakan salah satu aspek penting di dalam perusahaan, dikatakan aspek penting Karena merupakan denyut nadi untuk kelangsungan hidup suatu perusahaan
Komponen-komponen Biaya
Secara umum dalam pelaksanaan kegiatan, komponen biaya dibagi atas:
         Biaya personil
komponen-komponen biaya yang dikeluarkan untuk membayar gaji pegawai
         Biaya nonpersonil
komponen-komponen biaya yang harus dikeluarkan untuk mendukung kelancaran dari kegiatan di perusahaan.

Penyusunan Anggaran
Budget (Anggaran) ialah suatu rencana yang disusun secara sistematis, yang meliputi seluruh kegiatan perusahaan
1. Disusun secara sistematis berdasarkan budget bulanan serta tahunan
2. Meliputi seluruh bagian kegiatan perusahaan
3. Untuk waktu yang akan datang

Cash Flow
Merupakan sejumlah uang kas yang keluar dan yang masuk sebagai akibat dari aktivitas perusahaan. Bagian keuangan pada PT.miniOS sangat memperhatikan hal-hal sebagai berikut:
  1. Fungsi likuiditas, yaitu dana yang tersedia untuk tujuan memenuhi kebutuhan sehari-hari dan dapat dicairkan dalam waktu singkat relatif tanpa ada pengurangan investasi awal
  2. Fungsi anti inflasi, dana yang disimpan guna menghindari resiko penurunan pada daya beli di masa datang yang dapat dicairkan dengan relatif cepat.
  3. Capital growth, dana yang diperuntukkan untuk penambahan/perkembangan kekayaan dengan jangka waktu relatif panjang.
PT.miniOS membuat laporan arus kas (cash flow) yang mengandung dua macam aliran/arus kas yaitu :
1.       Cash inflow
Cash inflow adalah arus kas yang terjadi dari kegiatan transaksi yang melahirkan keuntungan kas (penerimaan kas). Arus kas masuk (cash inflow) terdiri dari:
•    Hasil penjualan produk/jasa perusahaan.
•    Penagihan piutang dari penjualan kredit.
•    Penjualan aktiva tetap yang ada.
•    Penerimaan investasi dari pemilik atau saham bila perseroan terbatas.
•    Pinjaman/hutang dari pihak lain.
•    Penerimaan sewa dan pendapatan lain.
2.       Cash out flow
Cash out flow adalah arus kas yang terjadi dari kegiatan transaksi yang mengakibatkan beban pengeluaran kas. Arus kas keluar (cash out flow) terdiri dari :
•    Pengeluaran biaya bahan baku, tenaga kerja langsung dan biaya pabrik lain-lain.
•    Pengeluaran biaya administrasi umum dan administrasi penjualan.
•    Pembayaran hutang-hutang perusahaan.
•    Pembayaran sewa, pajak, bunga dan pengeluaran lain-lain.
Laporan keuangan adalah catatan informasi keuangan suatu perusahaan pada suatu periode akuntansi yang dapat digunakan untuk menggambarkan kinerja perusahaan. PT.miniOS mempunyai beberapa laporan keuangan yang berasal dari cash inflow dan cash outflow meliputi:
1.       Neraca
2.       Laporan Rugi Laba


Kamis, 29 September 2016

William Tanuwijaya - Pendiri serta CEO TOKOPEDIA

Nama              : Diah Fajar Pratiwi
NPM               : 52413347
Mata Kuliah  : Pengantar Bisnis Informatika




Lahir dan besar di Kota Pematangsiantar, William merupakan lulusan dari Universitas Bina Nusantara. Saat kuliah ia mencari pekerjaan sampingan yaitu bekerja di warnet. Ia selalu ingin bekerja di perusahaan Internet yang di kagumi nya, seperti Google.

Sampai pada tahun 2007 ia mendapatkan ide untuk membangun Tokopedia, ia mulai memiliki mimpi untuk membangun perusahaan Internet sendiri. Ia terinspirasi oleh Google, Facebook serta lainnya ang dapat diakses secara gratis dengan bantuan pemodal. Terinspirasi dari hal tersebut, ia mulai mencari pemodal.

Dia datang ke bos nya yang berbaik hati yang memperkenalkan ke beberapa teman pembisnis. Selama dua tahun, ia mencoba menyakinkan para investor untuk memberikan pendanaan awal dan mendapati bahwa membangun kepercayaan tersebut sangatlah sulit.


Beruntung karena pada akhirnya William dan rekan nya, Leontinus Alpha Edison, diberikan sebuah tiket kepercayaan dan bisa mendirikan Tokopedia tahun 2009. Belajar dari pengalaman tentang sulitnya mendapatkan kepercayaan, filosofi kami waktu itu adalah tidak perlu ada marketing jorjoran. Seluruh dana investasi akan kami pakai untuk membangun tim dan memastikan bahwa Tokopedia gratis, bisa dipakai oleh siapa saja di Indonesia, baik untuk berjualan maupun berbelanja online.


William belajar banyak sekali di Tokopedia. Belajar percaya kepada diri sendiri ketika tidak ada yang percaya pada mimpi kita. Setelah hampir enam tahun menjalankan bisnis Tokopedia, ia semakin merasa beruntung sekaligus sangat terinspirasi ketika melihat dan menyaksikan bahwa Tokopedia tidak hanya mengubah hidup nya, tapi juga mengubah hidup orang-orang di sekitar nya.


Saya belajar bahwa sulit sekali mendapatkan kepercayaan jika kita benar-benar mencoba memulai dari nol. Namun saya sangat percaya, walaupun masa lalu tidak bisa kita ubah, masa depan ada di tangan kita sendiri. -William Tanuwijaya


sumber: http://m.tempo.co/read/news/2015/06/04/072672019/kisah-william-tanuwijaya-bos-tokopedia-susahnya-berbisnis

Memulai Startup di Bidang Informatika



Nama              : Diah Fajar Pratiwi
NPM               : 52413347
Mata Kuliah  : Pengantar Bisnis Informatika

Nama saya Diah Fajar, Pratiwi saya mahasiswi Universitas Gunadarma jurusan Teknik Informatika. Penulisan ini bertema "Jika Anda Berbisnis di Bidang Informatika". Dari tema tersebut yang ada di benak saya yaitu jika saya berbisnis di bidang informatika saya akan membuat StartUp sebuah perusahaan dalam bidang jasa pembuatan website dan android. 

Perusahaan yang ingin saya buat selain memberikan keuntungan yang diantaranya profit dan lapangan pekerjaan baru perusahaan ini berupaya menciptakan inovasi baru untuk mempermudah pengumpulan informasi sehingga tidak memerlukan tenaga, fikiran, penggunaan kertas, serta waktu yang berlebih.

Membuat StartUp dari sebuah perusahaan merupakan hal yang bisa dikatakan sulit karena perusahaan tersebut dirintis dari 0 tanpa embel-embel nama dari perusahaan lain. Namun hal tersebut merupakan tantangan yang sangat menarik, dan kabar baik nya jika perusahaan tersebut dapat memberikan layanan nya secara maksimal sesuai dengan apa yang masyarakat butuhkan saat ini maka tidak akan heran perusahaan tersebut dapat menembus StartUp yg berpotensi menjadi perusaahan besar yang dikenal di indonesia maupun dunia seperti StartUp buatan William Tanuwijaya yaitu Tokopedia berbasis website maupun mobile yang nama nya sudah mendunia saat ini.


Sumber: https://beritagar.id/artikel/sains-tekno/5-pendiri-startup-lokal-paling-populer-di-indonesia


Senin, 30 Mei 2016

Tugas 3 Softskill - Pengantar Teknologi Game


Game Snake Di C++

 


#include <iostream>

#include <conio.h>

#include <windows.h> //menggunakan gotoxy, GetAsyncKeyState,

#define batas_atas 2 //batas_atas game

#define batas_bawah 23 //batas_bawah_game

#define batas_samping 2 // batas samping kiri game

#define batas_samping_k 78 //batas samping kanan game

 
using namespace std;


//pendeklarasian variabel

int iX(5), iY(5), x1 (4), y1 (4), xHapus(3), yHapus(3), veloX(1), veloY(0)

   ,ekorsX[200], ekorsY[200], nEkor = 2, start = 0, makX, makY ,level = 1 ,username;

 

void gotoxy(int x, int y)   //   Void untuk gotoxy, memindahkan kursor pada console

{

 COORD pos = {x, y};

 SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);

}

 

void naik()   //   untuk gerak Snake ke atas

{

  veloY = -1; //Kecepatan Y menjadi ke atas

  veloX = 0; //kecepatan X dinolkan

}

 

void turun()

{

  veloY = 1; //sda

  veloX = 0; //sda

}

 

void samping()

{

  veloX = -1; //sda

  veloY = 0; //sda

}

 

void samping_k()

{

  veloX = 1; //sda

  veloY = 0; //sda

}

 

void hapus()

{

 gotoxy(xHapus, yHapus); //untuk menghapus bagian yang sudah dilewati

 cout << " ";

}

 

void ekor()

{

 for(int j = 0; j <= 2; j++)

 {

  gotoxy(ekorsX[j], ekorsY[j]);

  cout << char(29);

 }

}

 

void tampil()

{

 gotoxy(iX, iY); //iX dan iY adalah posisi gambar kepala

 cout << char(1); //untuk menggambar gambar kepala

 

 gotoxy(makX, makY);

 //nilai makX dan makY adalah random

 //digunakan untuk posisi makanan, jadi posisi makanan random

 cout << char(3); //gambar makanan

}

 

void ganti_posisi() //mengganti posisi dari ekor ekor snake

{

 xHapus = ekorsX[nEkor - 1];

 yHapus = ekorsY[nEkor - 1];

 for(int j = nEkor - 1; j >= 1; j--)

 {

  ekorsX[j] = ekorsX[j-1];

  ekorsY[j] = ekorsY[j-1];

 }

  ekorsX[0] = iX;

  ekorsY[0] = iY;

}

 

void velo() //fungsi untuk melakukan update posisi snake sesuai tombol

//yang ditekan

{

 ganti_posisi();

 hapus();

 iX += veloX;

 iY += veloY;

 tampil();

 ekor();

}

 

bool isDestroy()

{

 //selain untuk mencek apakah snake sudah kalah

 //fungsi ini juga menghapus kepala snake yang tersisa jika membentur dinding

 if(iX == batas_samping_k) { iX = 3; gotoxy(78, iY); cout << " "; }

 if(iX == batas_samping)  { iX = 77; gotoxy(2, iY); cout << " "; }

 if(iY == batas_atas) { iY = 22; gotoxy(iX, 2); cout << " "; }

 if(iY == batas_bawah) { iY = 3; gotoxy(iX, 23); cout << " "; }

 //trace();

 for(int j = 0; j <= nEkor - 1; j++)

  if(ekorsX[j] == iX && ekorsY[j] == iY) return true;

 return false;

}

 

 

char getkey()//fungsi untuk mendapatkan tombol yang ditekan

{

 for(int i = 8; i <= 222; i++)

 {

  if(GetAsyncKeyState(i) == -32767)

  {

   switch(i)

   {

    case 38 : if(veloY != 1)naik();

              break;//jika tombol yang ditekan adalah atas

    case 40 : if(veloY != -1)turun();

              break; //jika tombol yang ditekan adalah bawah

    case 37 : if(veloX != 1)samping();

              break; //jika tombol yang ditekan adalah kiri

    case 39 : if(veloX != -1)samping_k();

              break; //jika tombol yang ditekan adalah kanan

   }

  }

 }

}

 

void random_makanan()

{

            // PENAMBAHAN UNTUK IF PERULANGAN LEVEL UP PER KELIPATAN MAKAN

 makX = rand()%(batas_samping_k - 1);

 if(makX < 4) makX += 3 + (4-makX); //mencegah agar makanan tidak diluar batas

 makY = rand()%(batas_bawah - 1);

 if(makY < 4) makY += 3 + (4-makY);

 gotoxy(makX, makY);

 cout << char(3);

           

            if (nEkor%10==0)

            level=level+1;

                 

}

 

bool isEaten()

{

 if(iX == makX && iY == makY) return true; else return false;

}

 

void cBorder() //Fungsi untuk membuat garis tepi game

{

 for(int i = 1; i <= 78; i++)

 {

  for(int j = 1; j <= 24; j += 23)

  {

   if(j > 1 || i >= 33)

   {

    gotoxy(i, j);cout << char(219);

   }

  }

 }

 for(int i = 1; i <= 24; i++)

 {

  for(int k = 1; k <= 80; k += 78)

  {

   gotoxy(k, i); cout << char(219);       

  }       

 }

}

//akhir pembuatan garis tepi

//Penulisan Skor

void skor()

{

 gotoxy(3,1); cout << "Skor : ";

 gotoxy(18,1); cout << "Panjang : ";

 gotoxy(33,1); cout << "level : ";

 gotoxy(3,2); cout << "Nama : ";

}

//Untuk menulis skor terbaru dan panjang dari snake

void tulis_skor()

{

 gotoxy(11,1); cout << (nEkor) * 10;

 gotoxy(28,1); cout << nEkor;

 gotoxy(41,1); cout << level;

}

//Fungsi yang menjalankan beberapa fungsi yang berjalan

//pada awal program, hanya sekali

void inisialisasi()

{

 cBorder(); //buat pinggiran game

 random_makanan(); //letakkan makanan secara random

 skor(); //tulis tulisan skor di tepi atas

 tulis_skor(); //menulis skor

}

 

int main() //fungsi Utama dimana program perulangan di jalan kan

{           int pilih;

            char user[20];

pilih:

 system("cls"); //membersihkan layar

 cout << "\tSelamat Datang \n";

 cout << "\t\t1.main \n";

 cout << "\t\t2.keluar \n";

 cout << "anda pilih yang mana : "; cin>>pilih;

 

 switch (pilih){

 

  case 1:

  goto main;

  case 2:

            goto exit;

  default : cout << "maaf tidak tersedia";

 

  goto pilih;

}

 

  main:

 cout << "Masukkan Nama = ";cin >> user;

 

  system("cls");

  gotoxy(11,2); cout << user; // menampilkan nama user

 inisialisasi(); //menjalankan fungsi inisialisasi

 while(!(isDestroy())) //selama snake belum rusak atau kalah

  {

   velo(); //merubah posisi snake berdasarkan kecepatan X atau Y

   getkey(); //untuk mendapatkan tombol apa yang ditekan user dan

   //menjalankan beberapa fungsi yang diperlukan

   if(isEaten())//mencek apakah makanan telah dilalap oleh snake

   {

    nEkor += 2; //panjang ekor ditambah 2

    random_makanan(); //makanan diletakkan lagi

    tulis_skor();//skor di update

   }

   //======================ini untuk kecepatan dari ular ============

   Sleep(200 - (nEkor * 5)); //delay yang semakin cepat dengan penambahan ekor

  }

 system("cls"); //layar dibersihkan

 gotoxy(32,12); cout << "Skor "<< user<<":" << (nEkor - 1) * 10; //ditampilkan skor

 gotoxy(25,13);

 exit:

  system("pause"); //selesai

}