-
Fototrend

Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
emitter
#1156
üzenetére
Az aknaz lényegi része valahogy így kellene kinézzen:
for(i=0;i<max_aknak; ) //aknák véletlen elhelyezése
{
int dx, dy;
int cx, cy;
j=rand()%my; //az aknák koordinátája 0,my és 0,mx között lehet
k=rand()%mx;
if(mezo[j][k].akna==0) //ha az adott mezõn már van akna, nem rakunk oda
{
mezo[j][k].akna = 1;
i++;
for(dy = -1; dy <= 1; dy++)
{
cy = j + dy;
if (cy >= 0 && cy < my)
{
for(dx = -1; dx <= 1; dx++)
{
cx = k + dx;
if ((dy != 0 || dx != 0) &&
cx >= 0 && cx < mx)
{
mezo[cy][cx].szomsz++;
}
}
}
}
}
}
A feltárós résznél nem igazán értem, hogy akkor most miben mit számolsz, de úgy sejtem, hogy egy ilyen módosítással jó lehet:
if (mezo[x][y].mark == -1)
{
(*mezoszam)++;
} else {
mezo[x][y].mark = -1;
(*maradt)++;
}
És ez nem kell a hívás elõtt:mezo[j-1][i-1].reveal=1;
mezo[j-1][i-1].mark=-1;
mezoszam++;
A mezoszam felteszem a feltárt vagy megjelölt mezõket számolja. Vagyis az automatikus feltárásnál csak akkor kell növelni, ha nem megjelölt mezõt tárunk fel, hiszen az már egyszer meg lett számolva. Viszont ha már meg volt jelölve, akkor most töröljük a jelölést, hiszen tudjuk, hogy nincs ott akna. Emiatt azonban a maradt változót növelni kell. Amúgy ez a +1/-1 a mark esetén elég sok fejfájást okozott nekem. Mostmár nehogy átírd, de a többi helyen használt 0/1 jobb lett volna.
MOD: szöveg jó, kód rossz
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- -40% ÚJ DOBOZOS Lenovo Thinkpad T14 Gen 5: Ultra 7 165U/32GB DDR5/512GB/400nit/5MP/vil.MAGYAR bill.
- -300e Ft KEDVEZMÉNY:ÚJ Lenovo Thinkpad T14 Gen 5:Ultra 7 165U/64GB DDR5/512GB/400nit/vil.MAGYAR bill
- iPhone 16 128GB Független Karcmentes/2028.12.30.Gar./Akku 100%/p4665
- Intel passzív csúcsgép: 4,7 GHz Intel i7 1255U, 10 mag / 12 szál barebone
- -42% ÚJ Lenovo ThinkCentre M70s G5 SFF: i5 14500 14mag, 16GB RAM, 512GB NVMe SSD, ÚJ HU bill + egér
- iPhone 12 64GB 100% (1év Garancia)
- BESZÁMÍTÁS! Gigabyte H610M i5 12400F 32GB DDR4 1TB SSD RX 6800 16GB Zalman Z1 Plus Seasonic 750W
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3285
- Készpénzes / Utalásos Videokártya és Hardver felvásárlás! Személyesen vagy Postával!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest



