"GRA" w C# :) Statki :) Do podejrzenia, oceny :)

Gra zrobiona jako praca domowa zadana mi przez hmmm powiedzmy nauczyciela :). Wykonanie zajeło mi jakieś 5–6 godzin pracy.

Ta gra to statki, w kodzie wpisane są współrzędne.

pole nr 1 ma zakres na osi x od 1 do 15 a na y od 1 do 10.

Pole nr 2. ma zakres na osi x od 15 do 30 a na y od 1 do 10.

nie zmieniałem współrzednych tak aby oba były od 1 do 15 bo sądze źe nie jest to konieczne, wkońcu to tylko prymitywny twór, a waźna była to źebym jakoś doszedł do tego by to działało poprawnie :wink:

No to wam sie pochwale i czekam na jakieś uwagi, komentarze itd.

http://adik154player.republika.pl/statki.rar

#include
#include
#include
#include



struct zaone // powtórki u 1
{
int liczba1x;
int liczba1y;
};

struct zatwo // powtórki u 2
{
int liczba2x;
int liczba2y;
};


int main(int argc, char *argv[])
{



// dane pozycji statków dla zawodnika nr1
int player1x[]={4,5,6,7,2,2,2,5,6,10,10,10};
int player1y[]={2,2,2,2,3,4,5,4,4,4,5,6};


// dane pozycji statków dla zawodnika nr2
int player2x[]={19,20,21,22,17,17,17,24,25,27,27,27};
int player2y[]={3,3,3,3,7,8,9,7,7,3,4,5};

// trafione pozycje graczowi 1
int trafione1x[12];
int trafione1y[12];

// trafione pozycje graczowi 2
int trafione2x[12];
int trafione2y[12];


// pętla rysująca statki na ekranie dla zawodnika nr1
for (int ile=0 ; ile
{
gotoxy(player1x[ile],player1y[ile]);
cout <
}

// pętla rysująca statki na ekranie dla zawodnika nr2
for (int ile=0 ; ile
{
gotoxy(player2x[ile],player2y[ile]);
cout <
}

// tutaj narysujemy tabelke i podpiszemy zawodników

for (int rys=1 ; rys
{
gotoxy(rys,10);
cout <
if(rys==30)
{
for (int ile=1 ; ile
{
gotoxy(15,ile);
cout<
if (ile==9)
{
for (int pion=1 ; pion
{
gotoxy(30,pion);
cout <
}
}
}
}
}

// opis programu i jakieś tam duuperelki :)
gotoxy(45,1);
cout <
gotoxy(36,3);
cout <
gotoxy(36,4);
cout <
gotoxy(30,12);

cout <

int one=12; // przydzielam obu stat 12
int two=12; // przydzielam obu stat 12





// podziałka obrazu i wypisanie zdań

for (int dol=15 ; dol
{
gotoxy(40,dol);
cout <
}

gotoxy(3,14);
cout <
gotoxy(47,14);
cout <


int koniec=0;
int wygrany=0; // temu zostanie przydzielona wartosc 1 lub 2 oznaczajaca wygranego
int osoba=1; // kogo mam pytać

int miejsce=16; // pytania zaczynające sie dla zawodnika nr 1.
int miejsce2=16; // pytania zaczynajace sie dla zawodnika nr2.
int powtorka=0;

int x;
int y; // zmienne do miejsc



zaone dane[10];
zatwo dane2[10];

int dane2nr=0;
int danenr=0;

// no i całe serce programu

while (koniec
{


if((one==0) || (two==0))
{
if(one==0)
{ // jeźeli one albo two jest równe 0 to mamy zwyciezce
wygrany=2; // jeźeli one albo two jest równe 0 to mamy zwyciezce
koniec = 1; // jeźeli one albo two jest równe 0 to mamy zwyciezce
} // jeźeli one albo two jest równe 0 to mamy zwyciezce
else // jeźeli one albo two jest równe 0 to mamy zwyciezce
{ // jeźeli one albo two jest równe 0 to mamy zwyciezce
wygrany=1; // jeźeli one albo two jest równe 0 to mamy zwyciezce
koniec = 1; // jeźeli one albo two jest równe 0 to mamy zwyciezce
}

}
else
{

if ( osoba==1) // pytania dla zawodnika nr 1
{

powtorka=0;
gotoxy(1,miejsce);
cout <
cin >> x;
cout <
cin >> y;
miejsce = miejsce + 2;
for(int ile=0 ; ile
{
if ((player2x[ile]==x) && (player2y[ile]==y)) // sprawdza czy x i y zgadza sie z jakąs parą
{
for ( int iles=0 ; iles
{
if ((x==dane2[iles].liczba2x) && (y==dane2[iles].liczba2y))
{
cout <
miejsce=miejsce+1;
powtorka=1;
}
else if ((iles==11) && (powtorka==0))
{
cout <
miejsce=miejsce+1;
two=two–1;
dane2[dane2nr].liczba2x=x;
dane2[dane2nr].liczba2y=y;
dane2nr=dane2nr+1;

osoba=2;

}
}
}
else
{
osoba=2;
}

}


}
else // pytania dla zawodnika nr 2
{
powtorka=0;
gotoxy(43,miejsce2);
cout <
cin >> x;
miejsce2 = miejsce2 + 1;
gotoxy(43,miejsce2);
cout <
cin >> y;
miejsce2 = miejsce2 + 1;
for(int ile=0 ; ile
{
if ((player1x[ile]==x) && (player1y[ile]==y)) // sprawdza czy x i y zgadza sie z jakąs parą
{
for ( int iles=0 ; iles
{
if ((x==dane[iles].liczba1x) && (y==dane[iles].liczba1y))
{
gotoxy(43,miejsce2);
cout <
miejsce2=miejsce2+1;
powtorka=1;
}
else if ((iles==11) && (powtorka==0))
{
gotoxy(43,miejsce2);
cout <
miejsce2=miejsce2+1;
one=one–1;
dane[danenr].liczba1x=x;
dane[danenr].liczba1y=y;
danenr=danenr+1;
osoba=1;
}
}
}
else
{
osoba=1;
}

}


}


}






}// koniec while


gotoxy(43,7);
textcolor(GREEN);
if (wygrany==2)
{
cout <
}
else
{
cout <
}




getch();
return 0;
}

Odpowiedzi: 1

1. Ileź razy moźna wałkować ? kaźde inne jest niezgodne ze standardem ANSII C++ .

2. Nie ma conio.c tylko conio.h

3. I po co stosujesz goto ? To najgorszy nawyk jaki moźe być.

A dla wszystkich i dla Ciebie teź:
Programowanie to sztuka i nie wypada go kalać jakimś goto czy inym

Dalej nie czytam bo nie chce se włosów z głowy wyrwać.
Anonymous
Dodano
18.03.2006 10:29:00
adik154
Dodano:
18.03.2006 02:42:08
Komentarzy:
1
Strona 1 / 1