Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2010, 15:58   #1
jooky253
Новичок
Джуниор
 
Регистрация: 30.05.2010
Сообщений: 1
Сообщение Рыбки и корм

#include<conio.h>
#include<math.h>
#include<stdio.h>
#include<iostream.h>
#include<dos.h>
#include<GRAPHICS.h>

void ramka()
{
line(1,30,632,30);
line(632,30,632,479);
line(632,479,1,479);
line(1,479,1,30);
}

class kormig
{
public:
int korm[100][2],nkorm,ikorm,i,k,xkorm,ykorm;
long j;
kormig()
{
nkorm=0;
for(i=0; i<100; i++) {i=0; korm[i][0]=0; korm[i][1]=0; }
j=-1;
k=0; }





void newkorm(int xkorm,int ykorm)
{
nkorm++;
korm[nkorm][0]=xkorm;
korm[nkorm][1]=ykorm;
setcolor(2);
setfillstyle(1,2);
fillellipse(korm[nkorm][0],korm[nkorm][1]+20,2,2);
}

void oldkorm()
{
setcolor(0);
setfillstyle(1,0);
fillellipse(korm[i][0],korm[i][1],2,2);
k=j/75;
korm[i][1]=korm[i][1]+k;
setcolor(2);
setfillstyle(1,2);
fillellipse(korm[i][0],korm[i][1],2,2);
i++;
}

};



class aqua
{
public:
int nri;
int eat,nribk,ribkax,ribkay,ribkar,ribk ar2,ribkaclr,ribkadx;
aqua(int nri)
{
if(nri==0){ ribkar=10; ribkadx=1; ribkax=240; ribkay=300; ribkaclr=10; ribkar2=15; }
if(nri==1){ ribkar=15; ribkadx=2; ribkax=240; ribkay=340; ribkaclr=5; ribkar2=20; }
if(nri==2){ ribkar=20; ribkadx=3; ribkax=240; ribkay=400; ribkaclr=3; ribkar2=25; }
if(nri==3){ ribkar=25; ribkadx=4; ribkax=240; ribkay=200; ribkaclr=1; ribkar2=30; }
eat=0;
nribk=0;
}

void goribka()
{
setcolor(0);
setfillstyle(0,0);
fillellipse(ribkax,ribkay,ribkar,ri bkar2);
ribkax=ribkax+ribkadx;
setcolor(ribkaclr);
setfillstyle(1,ribkaclr);
fillellipse(ribkax,ribkay,ribkar,ri bkar);
if(ribkax<=75) ribkadx=-ribkadx;
if(ribkax>=565) ribkadx=-ribkadx;
}
};

class ryka
{
public:
int xkormushka,ykormushka,rkormushka;

ryka() { xkormushka=320; ykormushka=15; rkormushka=4; }


void kormushka(char c)
{
if(c!=0)
{
setcolor(0);
setfillstyle(1,0);
fillellipse(xkormushka,ykormushka,r kormushka,rkormushka+6);
if(c==77) xkormushka=xkormushka+5;
if(c==75) xkormushka=xkormushka-5;
setcolor(15);
setfillstyle(1,15);
fillellipse(xkormushka,ykormushka,r kormushka,rkormushka+6);
}
}

};

void main()
{
int gdriver,gmode,nr;
char c=0;
gdriver=DETECT;
gmode=0;
initgraph(&gdriver,&gmode,"C:\\TC\\ BGI\\");
cout<<"1";
getch();
aqua* riblist[4];
riblist[0] = new aqua(0);
riblist[1] = new aqua(1);
riblist[2] = new aqua(2);
riblist[3] = new aqua(3);
cout<<"2";
getch();
kormig* kormi;
cout<<"3";
getch();
kormi = new kormig();
cout<<"4";
getch();
ryka* ryk;
ryk = new ryka();

do
{
setcolor(1);
ramka();
if(kbhit()) c=getch();
if( c==27)break;
ryk->kormushka(c);
if(c==32)
{
kormi->newkorm(ryk->xkormushka,ryk->ykormushka);
}
c=0;
if( kormi->nkorm!=0)
{
kormi->i=0;
do
{
kormi->oldkorm();
}
while(kormi->korm[kormi->i][0]!=0);
}
if (c==27)break;
kormi->j++;if (kormi->j>=100) kormi->j=0;
if(( kormi->j/30)*30==kormi->j)
{
for(nr=0; nr<4; nr++) riblist[nr]->goribka();
}
}
while(1);
}










Компилится, но при запуске чёрный экран.

По экрану плавают рыбки и по пробелу кидается корм.

Нужно чтобы рыбки плыли к корму
jooky253 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рыбки в аквариуме demiurger Свободное общение 0 05.12.2008 21:05