http://wiki.math.bme.hu/history/Informatika2-2016/Gyakorlat9?feed=atom&Informatika2-2016/Gyakorlat9 - Laptörténet2024-03-29T00:30:45ZAz oldal laptörténete a wikibenMediaWiki 1.18.1http://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=12639&oldid=prevNyida: /* Feladatok */2017-04-06T07:04:36Z<p><span class="autocomment">Feladatok</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2017. április 6., 07:04-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">20. sor:</td>
<td colspan="2" class="diff-lineno">20. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* A '''Board''' osztályon belül definiáljunk egy '''check''' metódust. Térjen vissza azzal a színnel, amelyik király sakkban áll!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* A '''Board''' osztályon belül definiáljunk egy '''check''' metódust. Térjen vissza azzal a színnel, amelyik király sakkban áll!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>** Definiáljuk át a lépést, hogy az csak akkor legyen szabályos, ha a <del class="diffchange diffchange-inline">király </del>nem áll sakkban a lépés után!</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>** Definiáljuk át a lépést, hogy az csak akkor legyen szabályos, ha a <ins class="diffchange diffchange-inline">lépő játékos királya </ins>nem áll sakkban a lépés után!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen '''__repr__''' függvénye a '''Board'''-nak!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen '''__repr__''' függvénye a '''Board'''-nak!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11547&oldid=prevNyida: /* Sakk */2016-04-14T09:18:09Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 14., 09:18-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">12. sor:</td>
<td colspan="2" class="diff-lineno">12. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a '''PieceMoveError''' osztályt. Ha szabálytalan a lépés, dobjunk egy ilyen exceptiont és kezeljük le!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a '''PieceMoveError''' osztályt. Ha szabálytalan a lépés, dobjunk egy ilyen exceptiont és kezeljük le!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' <del class="diffchange diffchange-inline">metódust</del>, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' <ins class="diffchange diffchange-inline">metódusa</ins>, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos<ins class="diffchange diffchange-inline">! Ehhez definiáljuk át a '''King''' és a '''Pawn''' osztályok '''move''' metódusát, hogy paraméterül kapjon egy '''board''' változót, ami a tábla</ins>!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha az a bábu sajátunk, a lépés szabálytalan, ha az ellenfél bábuja, akkor távolítsuk el a pályáról, hiszen leütöttük!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha az a bábu sajátunk, a lépés szabálytalan, ha az ellenfél bábuja, akkor távolítsuk el a pályáról, hiszen leütöttük!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Írjuk meg a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Írjuk meg a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat!</div></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11546&oldid=prevNyida: /* Sakk */2016-04-14T08:40:17Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 14., 08:40-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">9. sor:</td>
<td colspan="2" class="diff-lineno">9. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Definiáljuk a '''Piece''' osztályt. Ez reprezentál egy sakkbábut, tároljuk a pozícióját a táblán két koodinátával, a színét (black/white), illetve a '''__repr__''' írja ki, hogy hol áll (A2, G3 etc.)!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Definiáljuk a '''Piece''' osztályt. Ez reprezentál egy sakkbábut, tároljuk a pozícióját a táblán két koodinátával, a színét (black/white), illetve a '''__repr__''' írja ki, hogy hol áll (A2, G3 etc.)!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a bábu leszármazottjaként a '''King''' és a '''Pawn''' osztályokat!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a bábu leszármazottjaként a '''King''' és a '''Pawn''' osztályokat!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>* Minden leszármazottnak legyen egy '''move(pos)''' metódusa, ahol a '''pos''' egy sztring (A3, G2 etc.)! Mozgassuk el a bábut, ha szabályos a lépés!</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>* Minden leszármazottnak legyen egy '''move(pos)''' metódusa, ahol a '''pos''' egy sztring (A3, G2 etc.)! Mozgassuk el a bábut, ha szabályos a lépés<ins class="diffchange diffchange-inline">! Ha a lépés szabályos volt, térjünk vissza '''True'''-val, egyébként '''False'''-szal</ins>!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a '''PieceMoveError''' osztályt. Ha szabálytalan a lépés, dobjunk egy ilyen exceptiont és kezeljük le!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a '''PieceMoveError''' osztályt. Ha szabálytalan a lépés, dobjunk egy ilyen exceptiont és kezeljük le!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11545&oldid=prevNyida: /* Sakk */2016-04-13T12:17:34Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 13., 12:17-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">14. sor:</td>
<td colspan="2" class="diff-lineno">14. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' metódust, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' metódust, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha az a bábu sajátunk, a lépés szabálytalan, ha az ellenfél bábuja, akkor távolítsuk el a pályáról, hiszen leütöttük!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha az a bábu sajátunk, a lépés szabálytalan, ha az ellenfél bábuja, akkor távolítsuk el a pályáról, hiszen leütöttük!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>** Írjuk meg a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat<del class="diffchange diffchange-inline">.</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>** Írjuk meg a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat<ins class="diffchange diffchange-inline">!</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>*** Kezdjük a '''Rook'''-kal, ez a legegyszerűbb<del class="diffchange diffchange-inline">. </del>Ügyeljünk rá, hogy a ne lépjünk át másik bábun, hiszen ez szabálytalan<del class="diffchange diffchange-inline">. </del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>*** Kezdjük a '''Rook'''-kal, ez a legegyszerűbb<ins class="diffchange diffchange-inline">! </ins>Ügyeljünk rá, hogy a ne lépjünk át másik bábun, hiszen ez szabálytalan<ins class="diffchange diffchange-inline">!</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>*** Másodikként a '''Knight''' osztályt írjuk meg<del class="diffchange diffchange-inline">. </del>A ló ugorhat, tehát a szabályok írásánál ezt nem kell figyelembe venni.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>*** Másodikként a '''Knight''' osztályt írjuk meg<ins class="diffchange diffchange-inline">! </ins>A ló ugorhat, tehát a szabályok írásánál ezt nem kell figyelembe venni.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** A '''Bishop''' után a '''Queen''' lépését könnyű összerakni.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** A '''Bishop''' után a '''Queen''' lépését könnyű összerakni.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* A '''Board''' osztályon belül definiáljunk egy '''check''' metódust. Térjen vissza azzal a színnel, amelyik király sakkban áll!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* A '''Board''' osztályon belül definiáljunk egy '''check''' metódust. Térjen vissza azzal a színnel, amelyik király sakkban áll!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>** Definiáljuk át a lépést, hogy az csak akkor legyen szabályos, ha a király nem áll sakkban a lépés után<del class="diffchange diffchange-inline">.</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>** Definiáljuk át a lépést, hogy az csak akkor legyen szabályos, ha a király nem áll sakkban a lépés után<ins class="diffchange diffchange-inline">!</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen '''__repr__''' függvénye a '''Board'''-nak!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen '''__repr__''' függvénye a '''Board'''-nak!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11544&oldid=prevNyida: /* Sakk */2016-04-13T12:13:29Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 13., 12:13-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">7. sor:</td>
<td colspan="2" class="diff-lineno">7. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>## Kezejük le kivételként, ha a bemeneten nem egész számot adtak meg a szó gyakoriságára!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>## Kezejük le kivételként, ha a bemeneten nem egész számot adtak meg a szó gyakoriságára!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Sakk ==</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>== Sakk ==</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">Ha még maradt idő.</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Definiáljuk a '''Piece''' osztályt. Ez reprezentál egy sakkbábut, tároljuk a pozícióját a táblán két koodinátával, a színét (black/white), illetve a '''__repr__''' írja ki, hogy hol áll (A2, G3 etc.)!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Definiáljuk a '''Piece''' osztályt. Ez reprezentál egy sakkbábut, tároljuk a pozícióját a táblán két koodinátával, a színét (black/white), illetve a '''__repr__''' írja ki, hogy hol áll (A2, G3 etc.)!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a bábu leszármazottjaként a '''King''' és a '''Pawn''' osztályokat!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Definiáljuk a bábu leszármazottjaként a '''King''' és a '''Pawn''' osztályokat!</div></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11543&oldid=prevNyida: /* Sakk */2016-04-13T11:49:53Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 13., 11:49-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">20. sor:</td>
<td colspan="2" class="diff-lineno">20. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** A '''Bishop''' után a '''Queen''' lépését könnyű összerakni.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>*** A '''Bishop''' után a '''Queen''' lépését könnyű összerakni.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* A '''Board''' osztályon belül definiáljunk egy '''check''' metódust. Térjen vissza azzal a színnel, amelyik király sakkban áll!</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">** Definiáljuk át a lépést, hogy az csak akkor legyen szabályos, ha a király nem áll sakkban a lépés után.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Legyen '''__repr__''' függvénye a '''Board'''-nak!</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">Miután mindez megvan, közel állunk ahhoz, hogy tudjunk sakkozni. Definiáljuk a '''start''' metódust, ami kezdőállípotba teszi a táblát.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">=== Ínyenceknek ===</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Módosítsuk a gyalogot az ''en passant'' szabály értelmében.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Értelmezzük az algebrai notációt (Bf5, Qc3, Ne2, Kcd4, Kxd5 stb.) és lépjünk eszerint!</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Legyen lehetőségünk sáncolni, ha még nem tettük meg (0-0 és 0-0-0 az algebrai jel)!  </ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Soroljuk fel egy játékos összes lehetséges szabályos lépését!</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">* Definiáljuk a mattot!</ins></div></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11542&oldid=prevNyida: /* Sakk */2016-04-13T11:41:28Z<p><span class="autocomment">Sakk</span></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">←Régebbi változat</td>
<td colspan='2' style="background-color: white; color:black;">A lap 2016. április 13., 11:41-kori változata</td>
</tr><tr><td colspan="2" class="diff-lineno">14. sor:</td>
<td colspan="2" class="diff-lineno">14. sor:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' metódust, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' metódust, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha <del class="diffchange diffchange-inline">saját bábu áll </del>a <del class="diffchange diffchange-inline">mezőn</del>, a lépés szabálytalan, ha ellenfél bábuja, akkor távolítsuk el a pályáról!</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha <ins class="diffchange diffchange-inline">az </ins>a <ins class="diffchange diffchange-inline">bábu sajátunk</ins>, a lépés szabálytalan, ha <ins class="diffchange diffchange-inline">az </ins>ellenfél bábuja, akkor távolítsuk el a pályáról<ins class="diffchange diffchange-inline">, hiszen leütöttük</ins>!</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>** <del class="diffchange diffchange-inline">Ha maradt időnk, kezdjük el írni </del>a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>** <ins class="diffchange diffchange-inline">Írjuk meg </ins>a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat<ins class="diffchange diffchange-inline">.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">*** Kezdjük a '''Rook'''-kal, ez a legegyszerűbb. Ügyeljünk rá, hogy a ne lépjünk át másik bábun, hiszen ez szabálytalan. </ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">*** Másodikként a '''Knight''' osztályt írjuk meg. A ló ugorhat, tehát a szabályok írásánál ezt nem kell figyelembe venni.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">*** A '''Bishop''' után a '''Queen''' lépését könnyű összerakni</ins>.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div></td></tr>
</table>Nyidahttp://wiki.math.bme.hu/index.php?title=Informatika2-2016/Gyakorlat9&diff=11541&oldid=prevNyida: Új oldal, tartalma: „=Feladatok= == Overload == # Írjunk egy függvényt, aminek az első argumentuma '''n''', egy '''int''' típusú változó. A függvény térjen vissza '''True'''-val,…”2016-04-13T10:55:43Z<p>Új oldal, tartalma: „=Feladatok= == Overload == # Írjunk egy függvényt, aminek az első argumentuma '''n''', egy '''int''' típusú változó. A függvény térjen vissza '''True'''-val,…”</p>
<p><b>Új lap</b></p><div>=Feladatok=<br />
== Overload ==<br />
# Írjunk egy függvényt, aminek az első argumentuma '''n''', egy '''int''' típusú változó. A függvény térjen vissza '''True'''-val, ha annyi extra paraméterrel hívták meg, mint az első bemeneti paraméter értéke, egyébként térjen vissza '''False'''-szal.<br />
# Definiáljunk egy '''szumma''' függvényt, ami tetszőlegesen sok bemeneti paraméterének összegével tér vissza!<br />
## Kezeljük le a kivételt, ha a paraméterek típusa nem azonos!<br />
# Definiáljunk egy '''print_words''' függvényt, úgy, hogy a megadott (akármennyi) szavakat annyiszor írja ki, amennyit megadunk bemenetnként (szavanként)!<br />
## Kezejük le kivételként, ha a bemeneten nem egész számot adtak meg a szó gyakoriságára!<br />
== Sakk ==<br />
Ha még maradt idő.<br />
Definiáljuk a '''Piece''' osztályt. Ez reprezentál egy sakkbábut, tároljuk a pozícióját a táblán két koodinátával, a színét (black/white), illetve a '''__repr__''' írja ki, hogy hol áll (A2, G3 etc.)!<br />
* Definiáljuk a bábu leszármazottjaként a '''King''' és a '''Pawn''' osztályokat!<br />
* Minden leszármazottnak legyen egy '''move(pos)''' metódusa, ahol a '''pos''' egy sztring (A3, G2 etc.)! Mozgassuk el a bábut, ha szabályos a lépés!<br />
* Definiáljuk a '''PieceMoveError''' osztályt. Ha szabálytalan a lépés, dobjunk egy ilyen exceptiont és kezeljük le!<br />
Legyen most egy '''Board''' osztályunk! Két listát tároljunk: '''white''' és '''black''', a játékosok bábuival!<br />
* Legyen a '''Board''' osztálynak egy '''move(player, pos1, pos2)''' metódust, ami a '''pos1''' pozícióban álló bábut a '''pos2''' helyre mozgatja, ha a lépés szabályos!<br />
** A normál szabályok mellett vegyük figyelembe, hogy áll-e ott más bábu! Ha saját bábu áll a mezőn, a lépés szabálytalan, ha ellenfél bábuja, akkor távolítsuk el a pályáról!<br />
** Ha maradt időnk, kezdjük el írni a '''Knight, Rook, Bishop''' és '''Queen''' osztályokat.<br />
** Oldjuk meg, hogy a '''Pawn''' ne állhasson az ellenfél alapvonalán!</div>Nyida