Avatar
dextertrin
Člen
Avatar
dextertrin:

Zdravím měl jsem na pololetní práci udělat hada v C# .. jelikož jsem tento rok dost chyběl učitel mi povolil stáhnout hada a vysvětlit ho .. nechápu tu přesně jeden cyklus
private void newFood() //Places food(umístí jídlo)
{
foodNum = 0;

for (int y = 0; y < 30; y++) // v Stores positions of all the food(ukládá pozici jídla)
{
for (int x = 0; x < 30; x++)
{
if (Box[x, y].BackColor == Color.Blue)
{
foodXPos[foodNum] = x;
foodYPos[foodNum] = y;
foodNum += 1;
Box[x, y].BackColor = Color.Black;
}
} nevím jak to funguje.. prosím o vysvětlení a jestli by se někomu povedlo to změnit aby to dělalo to stejný ale bez Foodnum .. byl bych moc vděčný :) přídam hada na stahnuti .. jde rozjet ve visual studiu 2010 a 2013

 
Odpovědět 17.6.2015 17:41
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na dextertrin
Jan Vargovský:

Najde to všechny modré políčka, změní je na černou a zároveň si je uloží do foodXYPos - to jsou asi 2 pole, které udržují pozice jídel (modrých políček).

Jestli to chceš nějak modifikovat, tak bych udělal asi tohle

public struct Point { public int X, Y;}
List<Point> foodPositions; // nezapomen to inicializovat v konstruktoru

private void newFood() //Places food(umístí jídlo)
{
for (int y = 0; y < 30; y++) // v Stores positions of all the food(ukládá pozici jídla)
{
for (int x = 0; x < 30; x++)
{
if (Box[x, y].BackColor == Color.Blue)
{
foodPositions(new Point{X = x, Y = y});
Box[x, y].BackColor = Color.Black;
}
}
 
Nahoru Odpovědět 17.6.2015 17:54
Avatar
dextertrin
Člen
Avatar
Odpovídá na Jan Vargovský
dextertrin:

nemohl bys mi ten tvůj funkční program sem hodit celej prosím?:)

 
Nahoru Odpovědět 17.6.2015 18:18
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na dextertrin
Jan Vargovský:

To není můj program, jen modifikovaná tvoje metoda.

EDIT: http://pastebin.com/tha4A2HW tohle jsem se někdy nudil a napsal, ale chytrý z toho asi nebudeš :D

Editováno 17.6.2015 18:31
 
Nahoru Odpovědět 17.6.2015 18:29
Avatar
dextertrin
Člen
Avatar
Odpovídá na Jan Vargovský
dextertrin:

dočetl jsem se že konstruktor se používá ve třídách a tu já tam nemám.. takže co ?:D

 
Nahoru Odpovědět 17.6.2015 18:41
Avatar
Jan Vargovský
Redaktor
Avatar
 
Nahoru Odpovědět 17.6.2015 18:45
Avatar
dextertrin
Člen
Avatar
Odpovídá na Jan Vargovský
dextertrin:

ted nerozumím :D tys mi tam předtím napsal "List<Point> foodPositions; // nezapomen to inicializovat v konstruktoru " Kam to mám napsat?

 
Nahoru Odpovědět 17.6.2015 18:47
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na dextertrin
Jan Vargovský:

Jako lokální proměnnou třídy. Ukaž mi tu třídu ve které je ta metoda.

 
Nahoru Odpovědět 17.6.2015 18:48
Avatar
dextertrin
Člen
Avatar
 
Nahoru Odpovědět 17.6.2015 18:51
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na dextertrin
Jan Vargovský:

Tak asi neprogramuješ v C#.

 
Nahoru Odpovědět 17.6.2015 18:57
Avatar
dextertrin
Člen
Avatar
dextertrin:

ja tento jazyk mám chvilku takže se omlouvám že to občas bude vypadat že jsem uplně blbej (skoro pořád a jsem) :D

 
Nahoru Odpovědět 17.6.2015 18:57
Avatar
dextertrin
Člen
Avatar
dextertrin:

Chci v mém programu změnit ten foodnum tím cos mi poslal
public struct Point { public int X, Y;}
List<Point> foodPositions; // nezapomen to inicializovat v konstruktoru

private void newFood() //Places food(umístí jídlo)
{
for (int y = 0; y < 30; y++) // v Stores positions of all the food(ukládá pozici jídla)
{
for (int x = 0; x < 30; x++)
{
if (Box[x, y].BackColor == Color.Blue)
{
foodPositions(new Point{X = x, Y = y});
Box[x, y].BackColor = Color.Black;
}
}'
ale nevím kam mám napsat
List<Point> foodPositions;
Nevím co je to konstruktor, takže nevím ka to mám inicializovat.

 
Nahoru Odpovědět 17.6.2015 19:01
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na dextertrin
Jan Vargovský:

Uploadni někde ten projekt.

 
Nahoru Odpovědět 17.6.2015 19:02
Avatar
denisvu3
Člen
Avatar
Odpovídá na Jan Vargovský
denisvu3:

http://www.mediafire.com/…+Project.rar snažím se o to už pár minut ale moc spamuju mam ban na chat takže druhej učet :D

 
Nahoru Odpovědět 17.6.2015 19:16
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na denisvu3
Jan Vargovský:

To nemá ani cenu přepisovat jak je to dementně napsané :D

 
Nahoru Odpovědět 17.6.2015 19:22
Avatar
denisvu3
Člen
Avatar
Odpovídá na Jan Vargovský
denisvu3:

Potřebuji to jen přepsat, aby to fungovalo bez toho foodnum.

 
Nahoru Odpovědět 17.6.2015 19:23
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na denisvu3
Jan Vargovský:

Mi se to nechce zkoumat, když je to napsané 10x složitěji než by to šlo napsat :D narušil bys tím strukturu celého programu a musel to celé zrefaktorovat.

 
Nahoru Odpovědět 17.6.2015 19:39
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 17 zpráv z 17.