MMORPG.pl
https://mmorpg.pl/

C++ "obiektowe" - gra planszowa
https://mmorpg.pl/viewtopic.php?f=54&t=40653
Strona 1 z 1

Autor:  zaboleq [ 26 mar 2012, 07:56 ]
Tytuł:  C++ "obiektowe" - gra planszowa

Mam do napisania program, który będzię grą planszową. Ogólnie nie jest to masakrycznie trudne ale mam jeden problem. Domyślnie program ma zawierać 3 klasy : gra, gracz, plansza

Ja mam problem z klasą plansza. Ta część programu na po pierwsze rysować planszę wyglądającą tak:

|
|||
|||||
|||||||

Taką funkcję napisałem rzecz jasna. Problem jednak w tym, że muszę też napisać funkcję, której zadaniem będzie skreślenie odpowiednich kresek z odpowiedniego wiersza(można skreślać tylko z jednego). Domyślam się, że skreślanie mogłoby się odbywać poprzez modyfikowanie wartości tablicy "stangry" ale nie mam pomysłu jak to zrobić. Dodatkowo założenie jest takie, że żadna z dunkcji nie przyjmuje wartości z klawiatury. Ona ma tylko skreślać (mowa o klasie "plansza"). Jest ktoś w stanie pomóc z forumowych speców od programowania? Oczywiście trzeba się pobawić z zwracaniem parametrów przez tą funkcję żeby to w ogóle działało. Pewnie pierdoła jakaś



Cytuj:
#include <iostream>

using namespace std;

class plansza
{

int stangry [4];

public:
plansza();
void wyswietl();
int skresl(int k, int r);
};

plansza::plansza()
{


stangry[0]=1;
stangry[1]=3;
stangry[2]=5;
stangry[3]=9;
}
int plansza::skresl(?????)
{

?????

}

void plansza::wyswietl()
{
for (int i=0; i< 4; i ++)
{
for (int j=0; j< stangry[i]; j++)
{
cout <<" | ";
}
cout<<endl;
}
int main()
{

plansza a;
a.wyswietl();
a.skresl();



return 0;
}

Autor:  Mac [ 26 mar 2012, 10:52 ]
Tytuł: 

Hint: przechowuj gdzies wartosc czy dana kreska jest skreslona czy nie. ;)

Jesli plansze wyswietlasz w konsoli to po prostu przerysuj calosc jesli cos sie zmieni.

Autor:  zaboleq [ 26 mar 2012, 12:05 ]
Tytuł: 

No tam myślałem, żeby to zrobić za pomocą modyfikacji zawartości tablicy "stangry" ale nie wiem jak to zrobić. Może jakoś w ten sposób plansza[r] -= k; ale nie wiem czy to coś da. I czy mam jakoś zmieniać konstruktor.

Autor:  candidoser [ 26 mar 2012, 13:04 ]
Tytuł: 

zrob sobie tablice 4x9 i teraz:
0 - brak kreski
1- kreska normalna
-1 - kreska przekreslona

Autor:  Coval [ 27 mar 2012, 22:06 ]
Tytuł: 

W ramach oszczednosci pamieci to mozesz to zaimplementowac nawet na jednowymiarowej tablicy. Jezeli plansza ma (1+3+5+9) 18 pol, to wystarczy
int plansza[18]
Ty juz bedziesz wiedzial ze indeks 0 to pole 1 na gorze, indeksy 1-3 to 3 pola w drugim rzedzie itp.
Teoretycznie nie ma to znaczenia, ale jakbys chcial pozniej zrobic do tego jakiegos solvera, to wtedy sie przyda.

Autor:  candidoser [ 28 mar 2012, 06:18 ]
Tytuł: 

teoretycznie nie ma znaczenia, w praktyce spada czytelnosc;)
Ja mysle, ze zaboleq juz to dawno zrobil. A jesli nie...
http://demotywatory.pl/1012259/Koszula-flanelowa

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group | Copyright © 2001-2012 MMORPG.pl Team