Познавательный блог Мобильная врсия

Страницы

Промо

Как сделать в консоли символ отскакивающий от стенок

Как сделать в консоли символ отскакивающий от стенок. Отскакивание от стенок любого элемента реализуется простым алгоритмом. В момент когда символ достигаеткрая окна, при условии что размеры окна нам известны, то коэффициент смещения меняет полярность. Становится положительным или отрицательным. И объект движится в другую сторону.

Пример №1.

#include <windows.h>
#include <iostream.h>
#include <conio.h>

int main(int argc, char* argv[])
{
int x,y,k1,k2;
randomize();
//textattr(15<<4);
k1=1;
k2=1;
x=y=2;

do
{
if (x<=1 || x>=77) k1 = -k1;
if (y<=1 || y>=25) k2 = -k2;
x+=k1;
y+=k2;

gotoxy(x,y);
cprintf("o");
gotoxy(x,1);
cprintf("-");
gotoxy(1,y);
cprintf("-");
gotoxy(1,1);
cprintf("X=%ld,Y=%ld\r",x,y);
Sleep(40);
clrscr();
}while(kbhit()==0);
}

Пример №2. (Со звуком)

#include <windows.h>
#include <iostream.h>
#include <conio.h>

int main(int argc, char* argv[])
{
int x,y,k1,k2;
randomize();
//textattr(15<<4);
k1=1;
k2=1;
x=y=2;

do
{
if (x<=1 || x>=77) k1 = -k1;
if (y<=1 || y>=25) k2 = -k2;
x+=k1;
y+=k2;

gotoxy(x,y);
cprintf("o");
gotoxy(x,1);
cprintf("-");
gotoxy(1,y);
cprintf("-");
gotoxy(1,1);
cprintf("X=%ld,Y=%ld\r",x,y);
Beep(x*200,1);
Beep(y*200,1);
Sleep(10);
clrscr();
}while(kbhit()==0);
}

Написать комментарий








Поиск по сайту

Статистика

Мета

  Разработка и дизайн — StvPromo.ru