Problem s grafiki?

11 отговора 449 прегледа
#1

Problem s grafiki?

Imam da pravq na Borland C++ programa s1s slednoto uslovie:da se napravi bubole4ka(po izbor),koqto da se dviji xaoti4no i da reku6ira v stenite na ekrana.Problem1t mi e v tova,4e ne spira do kraq na ekrana.Izpolzvam funkciqta getmaxx i getmaxy.Molq pomognete mi!Mnogo e spe6no!

Отговор
в отговор на alfa #2

Имаш дебъгер

Слагаш си едно условие и спираш програмата там където според теб трябва да спре...
И гледаш какво ти връщат getmax функциите.

Отговор
в отговор на bira_more #3

Re: Имаш дебъгер

uslovieto koeto s1m slojila e while((p+10)<=getmaxx())||((p+10)<=getmaxy())) i ne 6te da spre!Kak da go promenq?

Отговор
в отговор на alfa #4

Re: скица на решението

void drawbug(int x,int y)
{
//...
//викаш функция/ции рисуващи насекомо
}

int getscreenwidth()
{
//викаш функция връщаща ширината на екрана в пиксели
return 640;
}

int getscreenheight()
{
//викаш функция връщаща височината на екрана в пиксели
return 480;
}

int rand(int min,int max)
{
//викаш функция връщаща произволна стойност в границите включително
//...
}

void main()
{
int _key = 0;
int _x = 0,_y = 0;
int _prevx = 0,_prevy = 0;

//влизаш в безкраен цикъл
for(;;)
{
//чакаш за натиснат клавиш
while(!_kbhit())
{
//запазваш предните стойности на насекомото
_prevx = _x;
_prevy = _y;

//търсиш нови
_x += rand(0,1) ? -1 : +1;
_y += rand(0,1) ? -1 : +1;

//ако новите не те задоволяват...взимаш старите
if(_x < 0 || _x > getscreenwidth())
_x = _prevx;

if(_y < 0 || _y > getscreenheight())
_y = _prevy;

//рисуваш насекомото
drawbug(_x, _y);
}

//четеш клавиша
_key = _getch();

//ако е esc излизаш от безкрайния цикъл и програмата завършва
if(_key == '\033')//esc
break;
}
}

Отговор
в отговор на alfa #5

Re: ако намериш кода полезен

едно мило благодаря няма да откажа...

Отговор
в отговор на alfa #7

Re: Имаш дебъгер

а защо и за х и за у сравняваш все с р?

Отговор
в отговор на alfa #8

Re: Имаш дебъгер

while(1)
{
if((p+10)<=getmaxx())
break;
if((p+10)<=getmaxy())
break;
....
}

Отговор
в отговор на зa вac мoжe и дa cъм ниkoй... #9

Re: скица на решението

Така буболечката няма да се движе, а сащо ще се телепортира в различни точки от екрана.

Отговор
в отговор на ¤ Wolfheart ¤ #10

Re: дай обосновка...

нека вникна в грешката си.

Отговор
в отговор на alfa #12

ами ползвай &amp;&amp; вместо || като начало



Отговор