Jumat, 21 Desember 2012
Membuat Gerakan Maju Mundul dalam C++
#include<iostream>
#include<windows.h>
using namespace std;
//variabel global untuk menyimpan tombol informasi
//tombol yang ditekan
INPUT_RECORD InRec;
//fungsi delay(), digunakan untuk menunda proses eksekusi
//selama beberapa millisecond
#define delay Sleep
//fungsi gotoxy(), digunakan untuk menempatkan kursor
//pada posisi KOLOM dan BARIS
void gotoxy(unsigned int kolom, unsigned int baris)
{
COORD posisi = {kolom,baris};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), posisi);
}
//fungsi kbhit(), digunakan untuk mendeteksi terjadinya
//penekanan tombol. Jika terdapat tombol yang ditekan maka fungsi ini
//akan mengembalikan nilai TRUE sebaliknya FALSE
bool kbhit()
{
DWORD EventCount,NumRead;
GetNumberOfConsoleInputEvents(GetStdHandle(STD_INPUT_HANDLE), &EventCount);
if(EventCount>0)
ReadConsoleInput(GetStdHandle(STD_INPUT_HANDLE), &InRec, 1, &NumRead);
return (InRec.EventType == KEY_EVENT);
}
//fungsi getch(), digunakan untuk mengambil informasi tombol yang
//terakhir kali ditekan.
char getch()
{
return InRec.Event.KeyEvent.uChar.AsciiChar;
}
int main()
{
char tekan='X';
//perulangan ini akan diulang selama tekan TIDAK SAMA dengan 'x'
while(tekan!='x')
{
//cetak tulisan 'halo' pada kolom=20 & baris=10
gotoxy(20,10);
cout << "hallo";
delay(1000);
//cetak tulisan kosong pada kolom=20 & baris=10
//untuk menimpa tulisan 'halo'
gotoxy(20,10);
cout << " ";
//cetak tulisan 'dunia' pada kolom=30 & baris=10
gotoxy(30,10);
cout << "dunia";
delay(1000);
//cetak tulisan kosong pada kolom=30 & baris=10
//untuk menimpa tulisan 'dunia'
gotoxy(30,10);
cout << " ";
//cek apakah terjadi penekanan tombol,
//jika 'ya', simpan tombol tersebut pada variabel TEKAN
if(kbhit()) tekan = getch();
}
}
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar