- Fotók, videók mobillal
- iPhone topik
- Samsung Galaxy S23 Ultra - non plus ultra
- Apple iPhone Air - almacsutka
- Milyen okostelefont vegyek?
- Nem tud dönteni az iFold a titán és az alumínium között
- Android alkalmazások - szoftver kibeszélő topik
- Motorola Edge 50 Neo - az egyensúly gyengesége
- One mobilszolgáltatások
- MIUI / HyperOS topik
-
Mobilarena
Ú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!
- Mr. Beast retteg, elveszi az AI a munkát
- Spórolós topik
- Kerékpárosok, bringások ide!
- Mibe tegyem a megtakarításaimat?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Visual Basic
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- KODI (ex-XBMC) Android alapokon, Androidos media-boxok
- Battlefield 6
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- További aktív témák...
- SAPPHIRE NITRO+ Radeon RX 7800 XT GAMING OC 16GB
- Kukirin M4 elektromos roller
- HP EliteBook 840 G7 i5-10210U 16GB 256GB 14" 400nit 100% sRGB 1 év garancia
- Újszerű! HP EliteBook 840 G7 i5-10210U 16GB 512GB FHD 400nit 1 év garancia
- ÚJ akku! Lenovo ThinkPad X1 Extreme Gen2 i7-9850H 32GB 1TB GTX1650 500nit 4K 1 év teljeskörű gar.
- Bomba ár! Lenovo ThinkPad Yoga L13 - i5-10G I 16GB I 512SSD I 13,3" FHD Touch I Cam I W11 I Gari
- HIBÁTLAN iPhone 13 256GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3428
- VADIÚJ Bontatlan! Honor 400 Lite 8/256 AMOLED 120Hz Velvet Grey, Dual SIM 2év telekom gar
- Bomba ár! Fujitsu T936 Convertible: i5-6G I 8GB I 256SSD I 13,3" FHD Touch I Cam I W10 I Gari!
- HIBÁTLAN iPhone 13 Pro Max 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3521
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest