Kod: Zaznacz cały
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
using namespace std;
class statek
{
public:
int wspolrzednex,wspolrzedney,wspolrzednekompx,wspolrzednekompy,x,y;
int strzelx,strzely,okret;
int iloscteraz,nrokretu;
int punktygracza,punktykomputera;
int wylosujx,wylosujy;
int iloscstatkowgracza,iloscstatkowkomputera;
int mapgracza[10][10],mapkomputera[10][10];
int spacja;
statek();
void status()
{
cout<<"Punkty gracza:"<<punktygracza<<endl;
cout<<"Liczba statkow gracza:"<<iloscstatkowgracza<<endl;
cout<<"Punkty komputera:"<<punktykomputera<<endl;
cout<<"==============="<<endl;
}
void wprowadzdane_i_ustaw()
{
do
{
status();
printf("0 1 2 3 4 5 6 7 8 9
");
for(int i=1; i<10; i++)
{
printf("%d", i);
for (int j=1;j<10;j++)
{
printf(" %d", mapgracza[i][j]);
}
printf("
");
}
printf("=========
Podaj wspolrzedne statkow, najpierw parametr x potem y
");
cin>>wspolrzednex;
cin>>wspolrzedney;
printf("=========
");
okret = 1;
switch(okret)
{
case 1:
mapgracza[wspolrzednex][wspolrzedney]=1;
break;
};
iloscstatkowgracza++;
x=rand()%(8)+1;
y=rand()%(8)+1;
mapkomputera[x][y]=4;
system("cls");
}
while(iloscstatkowgracza!=4);
}
void sprawdz_i_wylosuj()
{
srand(time(NULL));
wspolrzednekompx=rand()%1+(8);
wspolrzednekompy=rand()%(8)+1;
if(mapgracza[wspolrzednekompx][wspolrzednekompy]==1)
{
cout<<"Komputer trafil i zatopil!"<<endl;
punktykomputera=punktykomputera+100;
mapgracza[wspolrzednekompx][wspolrzednekompy]=2;
iloscstatkowgracza--;
}
else
{
cout<<"Komputer niestety nie trafil"<<endl;
}
do
{
status();
printf("0 1 2 3 4 5 6 7 8 9
");
for(int i=1; i<10; i++)
{
printf("%d", i);
for (int j=1;j<10;j++)
{
printf(" %d", mapgracza[i][j]);
}
printf("
");
}
cout<<"Wybierz gdzie chcesz strzelic najpierw parametr x potem y:
";
cin>>strzelx;
cin>>strzely;
if(mapkomputera[strzelx][strzely]!=4)
{
cout<<"Niestety nie trafils"<<endl;
}
else
{
cout<<"Trafiles "<<endl;
punktygracza+100;
}
getch();
iloscstatkowkomputera++;
}
while(iloscstatkowkomputera!=4);
}
void menu_i_gra()
{
cout<<"--------------------"<<endl;
cout<<"Witaj w grze w statki!"<<endl;
wprowadzdane_i_ustaw();
sprawdz_i_wylosuj();
iloscteraz++;
}
};
class kolega : public statek
{
public:
int wspolrzednex,wspolrzedney,wspolrzednekolx,wspolrzednekoly;
int mapkolega[10][10];
kolega();
void status()
{
cout<<"Punkty gracza1:"<<punktygracza<<endl;
cout<<"Ruchy gracza:"<<iloscstatkowgracza<<endl;
cout<<"Punkty gracza2:"<<punktykomputera<<endl;
cout<<"==============="<<endl;
}
void wprowadzdane_i_ustaw()
{
do
{
status();
printf("0 1 2 3 4 5 6 7 8 9
");
for(int i=1; i<10; i++)
{
printf("%d", i);
for (int j=1;j<10;j++)
{
printf(" %d", mapgracza[i][j]);
}
printf("
");
system("cls");
}
printf("=========
Gracz1: Podaj wspolrzedne statkow najpierw parametr x potem y:
");
cin>>wspolrzednex;
cin>>wspolrzedney;
printf("=========
");
okret = 1;
switch(okret)
{
case 1:
mapgracza[wspolrzednex][wspolrzedney]=1;
break;
};
iloscstatkowgracza++;
cout<<"Gracz2: Podaj wspolrzedne statkow najpierw parametr x potem y:"<<endl;
cin>>x;
cin>>y;
mapkolega[x][y]=4;
}
while(iloscstatkowgracza!=6);
}
void sprawdz_i_wylosuj()
{
int i;
for(i=0;i<5;i++){
cout<<"Gracz2: podaj wspolrzedne gdzie chcesz strzelic:"<<endl;
cin>>wspolrzednekolx;
cin>>wspolrzednekoly;
int i;
if(mapgracza[wspolrzednekolx][wspolrzednekoly]==1)
{
cout<<"Gracz2 trafil i zatopil!"<<endl;
punktykomputera=punktykomputera+100;
mapgracza[wspolrzednekolx][wspolrzednekoly]=2;
}
else
{
cout<<"Gracz2 niestety nie trafil minut 1pkt"<<endl;
punktykomputera=punktykomputera-1;
}
}
getch();
do
{
status();
printf("0 1 2 3 4 5 6 7 8 9
");
for(int i=1; i<10; i++)
{
printf("%d", i);
for (int j=1;j<10;j++)
{
printf(" %d", mapkolega[i][j]);
}
printf("
");
}
cout<<"Gracz1 gdzie chcesz strzelic:
";
cin>>strzelx;
cin>>strzely;
if(mapkolega[strzelx][strzely]!=4)
{
cout<<"Gracz1 niestety nie trafiles."<<endl;
}
else
{
cout<<"Gracz1 trafiles i zatopiles!"<<endl;
punktygracza+100;
}
getch();
iloscstatkowkomputera++;
}
while(iloscstatkowkomputera!=4);
}
void menu_i_gra()
{
cout<<"--------------------"<<endl;
cout<<"Witaj w grze w statki!"<<endl;
wprowadzdane_i_ustaw();
sprawdz_i_wylosuj();
iloscteraz++;
}
};
statek::statek():
wspolrzednex(0),
wspolrzedney(0),
wspolrzednekompx(0),
wspolrzednekompy(0)
{
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
mapgracza[i][j]=0;
mapkomputera[i][j]=0;
}
}
}
kolega::kolega():
wspolrzednex(0),
wspolrzedney(0),
wspolrzednekolx(0),
wspolrzednekoly(0)
{
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
mapgracza[i][j]=0;
mapkolega[i][j]=0;
}
}
};
statek uruchom;
kolega wlacz;
int main()
{
int a;
cout<<"Wybierz tryb gry w statki: 1- z komputerem, 2 - ze znajomym, 3- wczytaj stan gry, Aby zakonczyc gre nacisnij dowolnie inny przycisk"<<endl;
cin>>a;
switch(a){
case 1:
cout<<"Tryb gry z komputerem"<<endl;
uruchom.menu_i_gra();
break;
case 2:
cout<<"wybrales tryb ze znajomym"<<endl;
wlacz.menu_i_gra();
case 3:
cout<<"Wczytaj stan gry:"<<endl;
break;
default:
cout<<"Wylaczyles gre. Nacisnij jakis przycisk."<<endl;
break;
}
return 0;
}