Miny - zobrazení sousedních políček – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Miny - zobrazení sousedních políček – C / C++ – Fórum – Programujte.comMiny - zobrazení sousedních políček – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
kukla110
Duch
30. 5. 2008   #1
-
0
-

Dobré odpoledne.

Chtěl jsem se zeptat, jak udělat, že když kliknu na prázdné políčko (myslím takové, které neudává počet min v okolí), tak se mi zobrazí všechny sousední takováto políčka? Radši to ještě upřesním obrázkem - na červeně začmárané políčko jsem kliknul a chci, aby se zobrazily všechny sousední "prázdná" políčka + jedno sousední udávající počet min v okolí: http://img230.imageshack.us/my.php?image=minyvk2.gif

Díky.

Nahlásit jako SPAM
IP: 88.103.71.–
Reklama
Reklama
Quiark0
Věrný člen
30. 5. 2008   #2
-
0
-

Tady se hodí datová struktura zásobník. Na začátku do něj šoupneš políčko, na které jsi klikl.



while (na zasobniku neco je) {
p = zasobnik.pop()

odkryj p

pridej na zasobnik vsechny sousedy policka p, ktere jsou prazdne a jeste nejsou odkryta
}



Tohle by mělo zabrat. Možná to není nejrychlejší možné řešení, ale aspoň je to jednoduché.

Nahlásit jako SPAM
IP: 194.212.43.–
kukla110
Duch
31. 5. 2008   #3
-
0
-

To Quiark : Dobře díky. Jenom ještě...nikdy jsem se se zásobníkem nesetkal, takže vlastně nevím, jak se to napíše. Nemáš nějakej link, kde je ukázaná práce s tím zásobníkem? Nejraději bych to měl v C#. Díky.

Nahlásit jako SPAM
IP: 88.103.71.–
Quiark0
Věrný člen
31. 5. 2008   #4
-
0
-

Zásobník je naprosto základní datová struktura a už o něm bylo napsáno hodně. Určitě něco bude na wikipedii, vygooglit určitě půjde i něco v češtině.

V podstatě je to seznam, jehož nejdůležitější operace jsou push a pop. Push vloží prvek na začátek seznamu (říká se nahoru). Pop vrátí prvek ze začátku (říká se z vrcholu) seznamu a smaže ho z vrcholu zásobníku.

Jo a ještě by sis v tom kódu měl zajistit, aby se zbytečně nepřidávaly na zásobník políčka, která na něm už jsou. Třeba nějakým boolem na políčku.

Nahlásit jako SPAM
IP: 194.212.43.–
kukla110
Duch
31. 5. 2008   #5
-
0
-

To Quiark : To je mi jasný, že musím přidávat jen políčka, která tam nejsou...to bych taky nemusel nikdy spončit.

Zkusím něco najít, kdyžtak se ještě ozvu. Zatím ti děkuju.

Nahlásit jako SPAM
IP: 88.103.71.–
kukla110
Duch
31. 5. 2008   #6
-
0
-

To kukla11 : Ok, tak už to mám pomocí fronty. Díky za nápovědu, trochu mě popostrčila dál.

Nahlásit jako SPAM
IP: 88.103.71.–
Navrhovatel
~ Anonymní uživatel
1 příspěvek
3. 6. 2008   #7
-
0
-

Já bych navrhoval, aby všechny políčka měla své jedinečné x,y a aby políčko, na které je kliknuto vyslalo signál, že právě políčko s xy souřadnicí je odkryté, na což by mohli reagovat vedlejší políčka odkrytím, přičemž "číselná políčka" (případně "minová políčka") by signál (žádost o odkrytí vedlejších polí) dále neposílala.

PS: Toš, je to jenom návrh ;-)

Nahlásit jako SPAM
IP: 85.70.255.–
ian0
Stálý člen
6. 6. 2008   #8
-
0
-

to by určitě šlo, jak návrh Navrhovatele, tak ta fronta, ale tohle je přesně typická úloha pro použití stacku (zásobník), takže bych si dal, už kvůli programátorskému skillu, tu práci si ho naimplementovat

Nahlásit jako SPAM
IP: 194.108.128.–
-- ian
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 158 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý