Informatika2-2012/Hazi04

A MathWikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „=== 4. házi feladat: Sudoku megoldását segítő kis program === A [http://hu.wikipedia.org/wiki/Sz%C3%BAdoku Sudoku] egy számkitöltögetős játék, amit általá…”)
 
a (Segítség a teszteléshez)
17. sor: 17. sor:
 
Néhány bemenet és elvárt kimenet pár:
 
Néhány bemenet és elvárt kimenet pár:
  
1 1 1 -> I
+
  1 1 1 -> I
1 2 9 -> N
+
  1 2 9 -> N
7 1 1 -> N
+
  7 1 1 -> N
7 2 2 -> I
+
  7 2 2 -> I

A lap 2012. március 2., 23:16-kori változata

4. házi feladat: Sudoku megoldását segítő kis program

A Sudoku egy számkitöltögetős játék, amit általában 9x9-es táblán játszanak.

A feladat, hogy egészítsd ki a lenti C kódot (legalább) hat függvénnyel, melyek a következő feladatokat végzik el:

  • kitölti a táblát 0 értékekkel (void ures_tabla() , ez már meg is van hívva a main()-ben)
  • eldönti hogy egy adott sorban szerepelhet-e egy adott érték (vagyis hogy nincs még ott olyan)
  • eldönti hogy egy adott oszlopban szerepelhet-e egy adott érték (vagyis hogy nincs még ott olyan)
  • egy pozícióhoz (sor, oszlop) meghatározza annak a 3x3-as kis négyzetnek a határait, amibe az tartozik. (itt mivel több értéket kellene egyszerre visszaadni, használj mutatót paraméterként!)
  • eldönti hogy egy adott pozíción szerepelhet-e egy adott érték a pozícióhoz tartozó 3x3-as négyzetben levő számokat tekintve (vagyis hogy nincs még ott olyan) (használd az előző függvényt)
  • eldönti hogy egy adott pozícióban(sor és oszlop) szerepelhet-e egy adott érték (int lehet_e_itt(int ertek, int sor, int oszlop) , ez használja az előzőeket)

Nem kötelező, de a main() függvényt kiegészítheted azzal, hogy érvénytelen bemenet (1-nél kisebb vagy 9-nél nagyobb értékek) esetén 'H' betűt írjon ki.


Segítség a teszteléshez

Néhány bemenet és elvárt kimenet pár:

 1 1 1 -> I
 1 2 9 -> N
 7 1 1 -> N
 7 2 2 -> I
Személyes eszközök