Voila en fait dans mon programme de sudoku, je dois générer des grilles de façon aléatoires suivant 4 niveaux de difficultés. POur cela, j'ai créé un programme qui permet de remplacer un certain nombre de cases par des zéros. Or dans mon programme, il se peut qu'il rencontre 2 fois la même case et donc au final au lieu d'avoir 20 cases où il y a des zéros, j'en ai que 17 par exemple. ET je voudrais en avoir toujours 20... Je vous montre le programme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 a=[7 2 8 4 6 5 3 9 1;4 3 1 9 8 7 5 2 6;6 5 9 1 2 3 4 8 7;1 8 5 2 7 4 6 3 9;9 6 2 3 5 8 1 7 4;3 4 7 6 9 1 8 5 2 ;5 7 6 8 4 2 9 1 3;2 1 4 5 3 9 7 6 8;8 9 3 7 1 6 2 4 5]; n=input('Choisissez votre niveau de difficulté :') if n==1 disp('Vous avez choisi le niveau facile') f=20; for q=1:f x=randi(9,1,1); y=randi(9,1,1); if a(x,y)==0, a(x,y)=0; else a(x,y)=0; end end end disp(a);
Partager