Sunteți pe pagina 1din 11

Stagiu de practica

Sudoku

Proiect realizat de:

Dumangiu Marian

Data trimiterii:
24.05.2017

Destinatar:
Mafteiu-Scai Liviu Octavian

1
Cuprins:

Rezumat 3

Scop / Utilitatea proiectului 3

Grupul tinta 3

Introducere 4

Functionalitate 4

Interfata utilizator 5

Rularea / Executia programului 6

Input / Output 6

Structura aplicatiei 7

Imbunatatiri si extensii 8

Concluzii 8

Referinte 8

Anexe 9

2
Rezumat
Sudoku este un joc format dintr-un puzzle de numere pe o foaie de 9 patratele, fiecare
cu cate 9 alte patratele in interior. In aceste casute, exista deja anumite numere. Scopul
jocului este de a umple restul de casute goale in asa fel incat fiecare patrat mare (de 3 x
3) sa contina numere de 1 la 9, toate aparand doar o singura data. Desi suna destul de
simplu, si ai crede ca oricine stie sa numere de la 1 la 9 poate juca acest joc, cand vine
vorba de sudoku, totul se reduce la viteza. Toata lumea va reusi sa completeze un
puzzle in cele din urma, dar ceea ce conteaza este cat de repede veti reusi sa umpleti
toate casutele in mod corect.

Scop / Utilitatea proiectului


Este un lucru dovedit c generaia actual petrece foarte mult timp n fa a dispozitivelor
electronice. nc de la o vrst fraged, un copil are contact cu calculatorul, nv nd s
l foloseasc i s se joace pe el. Dei expunerea zilnic la acest dispozitiv nu este
tocmai sntoas, ea are i unele avantaje. Tot mai multe jocuri sunt folosite pentru a
dezvolta imaginaia, creativitatea i logica copilului.

Grupul tinta

Vrsta, sexul i nici confesiunea nu sunt limitative. Singura condi ie adevrat este s
avei o voin de fier, rbdare i creierul pregtit pentru efort sus inut. Pe scurt, poate
juca oricine vrea i are poft.

Introducere

Sudoku este un joc popular de logic, un puzzle. Denumirea a aprut din japonezul
"Sji wa dokushin ni kagiru," dar originea lui nu este japonez. Jocul a fost cunoscut n
anii optzeci sub denumirea de "Number Place" ("Pune cifre") n revista american de
integrame. n Japonia a devenit aceast ntegram de cifre foarte rapid popular
poate de aceea, pentru c n japonez nu pot fi create integrame de cuvinte. n anul
3
2004 a adus Wayne Gould SuDoku n Anglia i de atunci au nceput s aprecieze
frumuseea i aparenta uurin a acestua i oamenii din civiliza ia vestic. n prezent,
este oferit ca o anex de ziarele cotidiene n lumea ntreag.

Scopul jocului

Scopul vostru este ca n cel mai scurt timp posibil sa completati tabelul
Sudoku cu restul de cifre de la 1 pana la 9, asa incat nici o cifra din nici o
coloana, rand si in niciunul dintre cele 9 patrate cu latura de 3 patratele sa
nu se mai repete.

Asta nseamn c, n fiecare rnd, coloan, i ptratul delimitat cu linie


groas, trebuie s fie tocmai cifrele de 1-9 (1, 2, 3, 4, 5, 6, 7, 8, 9).

Interfata utilizator

Acest proiect include o interfa intuitiv, cu posibilitatea de a utiliza i de


ajutor pentru a verifica dac exist erori. Pornirea de ajutor va marca toate
cmpurile posibile pentru numrul selectat. Dup verificarea pentru erori,
programul marcheaz cmpurile valide verde i cmpuri nevalide
rou. Regulile folosite n aceast implementare sunt urmtoarele:
Un numr ntreg poate aprea doar o dat n ...
o ... acelai rnd.
o ... aceeai coloan.
o ... aceeai regiune 3x3.
Un joc are doar o singur soluie.

4
Rularea / Executia programului

Un joc valabil are n fiecare rnd, fiecare coloan, i fiecare regiune numerele
de la 1 la 9. n plus, ar trebui s existe doar o singur soluie
existent. Pentru a realiza acest lucru, toate cmpurile deschise sunt
umplute cu prima valoare valid. Chiar i dup gsirea unei soluii, cutarea
continu prin punerea urmtoarei valori valide ntr - un cmp deschis. n
cazul n care o a doua soluie este gsita, atunci cutarea va fi oprit i
metoda se ntoarce false . Nu va fi ntotdeauna cel puin o soluie (prin
urmare , este o soluie incomplet), aa c , dac exist mai puin de dou
soluii, jocul este valabil i revine metoda true.

Input / Output

Comenzile de input sunt introduse de utilizator cu ajutorul mouse-ului.


Panourile reacioneaz la datele introduse de utilizator i punerea n aplicare
a modificrilor aduse modelului. Modelul a a fost modificat. Actualizarile sunt
limitate la schimbarea culorilor i la schimbarea numrului unui cmp.

Structura aplicatiei

nainte de a putea ncepe s genereze un joc, trebuie s generm mai nti o


soluie. Acest lucru se realizeaz prin metoda de mai jos, care trebuie s fie numit de
ctre utilizator ca generateSudoku(new int[9][9], 0). Sunt luate urmtoarele msuri:
1. Verificai dac se gsete o soluie.
a)Gsit -> soluie este returnat.
b) gsit -> continua.
2. X (cmp curent) este gsit prin gsirea restul divizrii indicelui curent prin
numrarea cmpurilor la rnd folosind opera ia modulo.
3. Y (cmp curent) se calculeaz prin mprirea indicelui curent prin numrarea
cmpurilor ntr-un rnd.
4. Un ArrayListeste umplut cu numere de la 1 la 9 i amestecate. Amestecare este
important , deoarece altfel vei obine ntotdeauna aceea i solu ie.

5
5. Atta timp ct exist un numr n ArrayList, vor fi executate urmtoarele:
a) Urmtorul numr posibil este obinut prin metoda getNextPossibleNumber(int[][],
int, int, List<Integer>), care va fi explicat mai trziu. Dac nu exist un numr
de lng posibile (valoarea returnat -1), nulleste returnat.
b) Numrul gsit este plasat pe locaia curent.
c) Metoda se numete recursiv cu o cretere a indicelui, iar valoarea revenirea este
stocat ntr-o variabil.
d) Dac aceast variabil nu este null, acesta este returnat; n caz contrar, locaia
curent este pus din nou la 0 (adic cmpul este gol).

6.nulleste returnat. Aceast parte nu va fi atins, sperm.

Imbunatatiri si extensii

Programul va fi imbunatatit prin crearea unui buton de help si imbunatatirea butonului


check

Concluzii

Aplicatia este un joc interactiv si educativ care va atrage utilizatorii din grupul tinta
precizat anterior si ii va ajuta sa isi dezvolte creativitatea si gandirea practica intr-un
mod distractiv si atractiv

Referinte

6
1. https://www.youtube.com/watch?v=0wd0Cu6dpic - data accesarii
20.03.2017
2. https://www.youtube.com/watch?v=HhW0OZC21kc data accesarii
10.04.2017
3. https://www.youtube.com/watch?v=gN8xrMwrLSc data accesarii
25.04.2017
4. https://www.roportal.ro/articole/despre/cum_se_joaca_sudoku_1894/ -data
accesarii 24.05.2017
5. http://sudokumeu.ro/info/ - data accesarii 20.05.2017

7
8
9
10
11

S-ar putea să vă placă și