Scrierea unui generator de cuvinte încrucișate pe blogul delphi, blog tehnic

Scrierea unui generator de cuvinte încrucișate pe blogul delphi, blog tehnic
Am scos discul în programul său de generație arhive cuvinte încrucișate, pe care am făcut-o acum câțiva ani pe ordinea de student în clasa a 11. Din acest motiv, în mod intenționat, multe locuri în program sunt simplificate și scrise amator. astfel încât elevul să poată da codul propriu. Din același motiv, numărul de cuvinte și celule plasate pentru introducerea răspunsurilor este fixat - 12 bucăți. Dar cred că dacă cineva vrea să termine acest lucru nu va fi dificil.







Vă atrag atenția că acest lucru nu este un produs finit, pentru amatorii de cuvinte încrucișate, programul este baza de date foarte mic de întrebări - doar 56, și nu există nici o dimensiune ușor de cuvinte încrucișate de ajustare și numărul de probleme plasate.







Algoritm pentru generarea unui cuvânt încrucișat

Am dezvoltat un algoritm pentru selectarea și plasarea cuvintelor pe tablă, sarcina căreia este obținerea numărului maxim de intersecții cu alte cuvinte. Algoritmul selectarea un alt cuvânt aleatoriu pentru plasarea, pe rând încercând să-l plaseze pe orizontală și pe verticală, se deplasează treptat de la colțul din stânga sus spre dreapta jos a plăcii. În acest caz, dacă nu dau nici o trecere sau cuvânt suprapus pe deja plasat cuvântul nu este corect ca aceste opțiuni sunt eliminate, iar în cazul în care consideră că plasarea cu succes a numărului stocat de intersecții obținute pentru a alege apoi opțiunea cu cel mai mare număr.

Când plasați un cuvânt, algoritmul ia în considerare unele limitări. De exemplu, nu puteți pune două cuvinte unul după altul înapoi în spate, altfel nu va fi clar unde se termină și începe un altul.

Proceduri MapWord și MapWordCheck - conține partea principală a algoritmului pentru plasarea cuvintelor pe tablă.







Trimiteți-le prietenilor: