Permutation de Matrices, Sudoku
Bonjour, j'essaye de creer un générateur de sudoku en ce moment sur matlab.
Cependant, je me heurte à un problème, je voudrais pouvoir inverser les lignes et colonnes par bloc de 3 (de la ligne 1 à 3 4 à 6 etc...) pour pouvoir modifier ma matrice de base (et donc en faire une nouvelle pour l'utilisateur).
J'ai défini une matrice "originalsudoku", que je souhaite en gros modifier puis mettre des chiffres à 0 et l'afficher pour l'utilisateur.
J'arrive à generer un nombre au hasard entre 1 et 100 (floor(100*rand)) histoire de faire les permutations un assez grand nombre de fois (pour jamais avoir la même matrice), mais je ne vois pas quoi faire en suite.
Je dois aussi faire une fonction qui "cache les nombres" par des 0, j'ai écrit ça :
Code:
1 2 3 4 5 6 7 8 9 10 11
| cnombre=6 % le nombre de chiffre à cacher par ligne
for j=1:9;
for i=1:cnombre;
lhasard=floor(9*rand);
if lhasard==plhasard;
lhasard=floor(9*rand);
originalsudoku(j,lhasard)=0;
plhasard=lhasard ;
end
end
end |
Mais ça ne marche pas sur originalsudoku
Si quelqu'un pouvait m'aider ><
Merci !