sudoku
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

sudoku



  1. #1
    sinay2244

    sudoku


    ------

    bonjour,je suis en train de coder un programme qui resoud un sudoku en recursif et je bloque sur la fonction valeur qui affecte une valeur a une case vide tout en verifiant qu'elle est unique.voici mon code pour le moment. je precise que je le fais pour le moment sur un tableau a 1 dimension et a 9 case

    Code:
    public static int[] init() {
    		
    		int[] grille = new int[9];
    		int val = 0;
    		int x  = 0;
    		for(int i = 0;i < 2 ;i++) {
    			
    			x =(int)(Math.random() * ((9)));
    			val = 1 +(int)(Math.random() * ((8))+1);
    			grille[x] =val;
    		}
    		return grille;
    		
    	}
    	
    	public static int[] play(int[] tableau,int indice) {
    		
    		if(indice == tableau.length) {
    			
    			return tableau;
    		}
    		else if(tableau[indice] == 0) {
                            tableau[indice] = 1;
    			tableau[indice] = valeur(tableau,indice,0);
    			return play(tableau,indice + 1);
    		}
    		else {
    			
    			return play(tableau,indice + 1);
    		}
    	}
    	
    	
    	
    	
    	
    	
    	
    	
    	public static int valeur(int[] tableau,int indicevaleur,int indice) {
    		
    		if(indice == tableau.length) {
    			
    			return tableau[indicevaleur];
    		}
    		else if(tableau[indice] != 0 && indice != indicevaleur && tableau[indicevaleur] == tableau[indice]) {
    			
    			tableau[indicevaleur] += 1 ; 
    			return valeur(tableau,indicevaleur,indice + 1);
    				
    		}
    		else {
    		
    			 return valeur(tableau,indicevaleur,indice + 1);
    		}
    		
    		
    	}

    -----
    Dernière modification par JPL ; 23/02/2016 à 14h26. Motif: Ajout de la balise Code (#) pour garder l'indentation

  2. #2
    Chanur

    Re : sudoku

    Bonjour,

    Si ça se trouve, avec la balise [ code ], ça deviendrait lisible, sait-on jamais ?
    Ce qui se conçoit bien s'énonce clairement ; et les mots pour le dire arrivent aisément.

  3. #3
    Arzhur

    Re : sudoku

    Bonjour,

    Est-ce que tu peux expliquer ton algo (et ce qui te pose problème) ....parce que je ne vois pas trop ce que tu veux faire avec.

  4. #4
    sinay2244

    Re : sudoku

    la fonction display affiche le sudoku la fonction init genere aleatoirement 6 chiffre entre 1 et 9 a des cases aleatoires.la fonction play parcoure chaque case du sudoku et si il tombe sur une case vide met 1 a la case vide puis appelle valeur,sinon passe a la case suivante.la fonction valeur parcourt chaque case non vide et si la case non vide est egal a la case qu'on recherche on augmente la valeur de 1 de la case vide et ainsi de suite.

  5. A voir en vidéo sur Futura
  6. #5
    sinay2244

    Re : sudoku

    le tout donne presque la solution mais parfois des chiffres se repetent.

  7. #6
    Arzhur

    Re : sudoku

    On peut dire que tu n'aimes pas la simplicité avec tes récurrences !



    la fonction valeur parcourt chaque case non vide et si la case non vide est egal a la case qu'on recherche on augmente la valeur de 1 de la case vide et ainsi de suite.
    Pas tout à fait : quel est l'impact/rôle du paramètre "indice" dans la fonction "valeur" ?

  8. #7
    sinay2244

    Re : sudoku

    c'est bon j'ai trouvé pour la fonction non recursive pour valeur.je passe a des tableaux a 2 dimensions

Discussions similaires

  1. Sudoku
    Par Dormeur74 dans le forum Science ludique : la science en s'amusant
    Réponses: 16
    Dernier message: 18/06/2011, 08h56
  2. Sudoku et Matlab
    Par invite75b3a58d dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 23/05/2010, 13h48
  3. Sudoku
    Par rapporteur dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 06/02/2009, 02h45
  4. Sudoku
    Par invitec526837a dans le forum Mathématiques du collège et du lycée
    Réponses: 2
    Dernier message: 27/06/2006, 11h56
  5. Vous connaissez le Sudoku? A la recherche de l'algorythme du Sudoku!!!
    Par invite95786954 dans le forum Mathématiques du supérieur
    Réponses: 17
    Dernier message: 02/01/2006, 08h57