FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Générateur de grilles de Sudoku Emptypar papydall Aujourd'hui à 16:57

» PANORAMIC V 1
Générateur de grilles de Sudoku Emptypar papydall Aujourd'hui à 3:22

» select intégrés [résolu]
Générateur de grilles de Sudoku Emptypar jjn4 Hier à 17:00

» number_mouse_up
Générateur de grilles de Sudoku Emptypar jjn4 Hier à 11:59

» Aide de PANORAMIC
Générateur de grilles de Sudoku Emptypar jjn4 Hier à 11:16

» trop de fichiers en cours
Générateur de grilles de Sudoku Emptypar lepetitmarocain Hier à 10:43

» Je teste PANORAMIC V 1 beta 1
Générateur de grilles de Sudoku Emptypar papydall Hier à 4:17

» bouton dans autre form que 0
Générateur de grilles de Sudoku Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
Générateur de grilles de Sudoku Emptypar Klaus Lun 6 Mai 2024 - 11:41

» Gestion d'un système client-serveur.
Générateur de grilles de Sudoku Emptypar Klaus Lun 6 Mai 2024 - 10:23

» @Jack
Générateur de grilles de Sudoku Emptypar Jack Mar 30 Avr 2024 - 20:40

» Une calculatrice en une ligne de programme
Générateur de grilles de Sudoku Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Générateur de grilles de Sudoku Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Générateur de grilles de Sudoku Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Générateur de grilles de Sudoku Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le deal à ne pas rater :
Cdiscount : -30€ dès 300€ d’achat sur une sélection Apple
Voir le deal

 

 Générateur de grilles de Sudoku

Aller en bas 
4 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7008
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Générateur de grilles de Sudoku Empty
MessageSujet: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 4:43

Tout est dans le code.

Code:

rem ============================================================================
rem                  Générateur de grilles de Sudoku
rem ============================================================================
rem Il existe un moyen facile de remplir un puzzle Sudoku complet - remplissage
rem de groupe et décalage circulaire.
rem Remplissez la première ligne avec neuf nombres différents.
rem Remplissez la deuxième ligne qui est un décalage de la première ligne de trois emplacements.
rem Remplissez la troisième ligne qui est un décalage de la deuxième ligne de trois emplacements.
rem Remplissez la quatrième ligne qui est un décalage de la troisième par un seul emplacement.
rem ============================================================================
rem Pour empêcher l’utilisateur de remarquer le motif évident, il peut être judicieux de randomiser
rem l’ordre des lignes et des colonnes afin qu’il n’y ait plus de motif.
rem Tant que les 9 numéros de chaque ligne / colonne se déplacent ensemble en une seule unité,
rem la carte Sudoku restera toujours valide.
rem ============================================================================
dim vecteur(9), ligne$(9),i
label clic
caption 0,"Générateur de Sudoku"
application_title "Générateur de Sudoku"
button 100 : top 100,50 : left 100,400 : width 100,100
caption 100,"Nouveau Sudoku" : on_click 100,clic
button 110 : top 110,100 : left 110,400 : caption 110,"Info" : on_click 110,clic
button 120 : top 120,150 : left 120,400 : caption 120,"Quitter" : on_click 120,clic
color 0,100,150,200
Grille()
Sudoku()
end
rem ============================================================================
clic:
    select number_click
        case 100 : Sudoku()
        case 110 : Info()
        case 120 : terminate
    end_select
return
rem ============================================================================
SUB Grille()    
    dim_local ligne,colonne,objet,w,w1
    w = 20 : w1 = w+10
    for ligne = 1 to 9
        for colonne = 1 to 9
            objet = (ligne-1)*9 + colonne
            edit objet : left objet,10+colonne*w1 : top objet,10+ligne*w1
            width objet,w : height objet,w : color objet,100,250,200
            font_color objet,200,0,0 : font_bold objet
        next colonne
    next ligne

    2d_pen_width 4 : 2d_pen_color 255,0,0
    2d_rectangle w1+5,w1+5,w1*10+5,w1*10+10
    2d_line 4*w1+5,w1+5,4*w1+5,w1*10+7 : 2d_line 7*w1+5,w1+5,7*w1+5,w1*10+7
    2d_line w1+5,4*w1+7,w1*10+2,4*w1+7 : 2d_line w1+5,7*w1+7,w1*10+2,7*w1+7
END_SUB
rem ============================================================================

FNC Sudoku()
    for i = 1 to 9 : vecteur(i) = i : next i  : ' initialisation du vecteur trié
    ligne$(1) = Melanger_Vecteur$()           : ' mélanger les éléments du vecteur
    ligne$(2) = Decaler$(ligne$(1),3)
    ligne$(3) = Decaler$(ligne$(2),3)
    ligne$(4) = Decaler$(ligne$(3),1)
    ligne$(5) = Decaler$(ligne$(4),3)
    ligne$(6) = Decaler$(ligne$(5),3)
    ligne$(7) = Decaler$(ligne$(6),1)
    ligne$(8) = Decaler$(ligne$(7),3)
    ligne$(9) = Decaler$(ligne$(8),3)

    for i = 1 to 9 : Afficher(ligne$(i),i) : next i
end
rem ============================================================================
' Mélanger les éléments d'un tableau trié
FNC Melanger_Vecteur$()
    dim_local pos,sauve,hasard,ret$
    for pos = 9 to 1 step -1
        hasard = int(rnd(pos)+1)
        sauve  = vecteur(pos)
        vecteur(pos) = vecteur(hasard)
        vecteur(hasard) = sauve
    next pos
    for pos = 1 to 9 : ret$ = ret$ + str$(vecteur(pos)) : next pos
    result ret$
  
END_FNC
rem ============================================================================
' décalage de n positions à gauche des éléments d'une ligne (vecteur)
FNC Decaler$(l$,n)
    result right$(l$,9-n) + left$(l$,n)    
END_FNC
rem ============================================================================
' Affichage du Sudoku
SUB Afficher(ligne$,j)
    dim_local i,c$
    for i = 1 to 9
        c$ = mid$(ligne$,i,1) : text (j-1)*9+i," " + c$
    next i
END_SUB
rem ============================================================================
SUB Info()
    dim_local t$
    t$ = "Le but du jeu est de remplir la grille avec une série de chiffres" +chr$(13)
    t$ = t$ + "(ou de lettres ou de symboles) tous différents, qui ne se trouvent jamais"+chr$(13)
    t$ = t$ + "plus d’une fois sur une même ligne, dans une même colonne ou dans une même"+chr$(13)
    t$ = t$ + "région (également appelée « bloc », « groupe », « secteur » ou « sous-grille »)." +chr$(13)
    t$ = t$ + "La plupart du temps, les symboles sont des chiffres allant de 1 à 9,"+chr$(13)
    t$ = t$ + "les régions étant alors des carrés de 3 × 3"
    
    message t$
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 8:09

Bonjour Papydall et bonjour à tous !

Merci pour ce Générateur de grilles de Sudoku.

Pour ma part je suis un habitué de ces petites cases...  Laughing

Une petite question tout de même sur ce générateur...
Lors de la création de la grille, comment on peux faire pour savoir quelle case laisser vide et quelle case remplir ?
Il ne s'agit pas de faire un choix au hasard, car sinon l'utilisateur risque de ne jamais pouvoir finir la grille...

J'avais lu qu'il fallait un minimum de chiffres dans la grille. Je ne sais plus le nombre exactement. je crois que c'était une quinzaine.
Mais cela ne résout pas le problème. Quelles cases laisser visibles ????

Cela dit Bravo pour cette réalisation.  sunny
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
jjn4

jjn4


Nombre de messages : 2704
Date d'inscription : 13/09/2009

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 16:56

Je n'ai jamais été passionné par les sudokus...
Et alors, ça se joue comment ?
scratch
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 17:31

C'est extrêmement simple (la règle, pas forcément la solution !), il faut remplir chaque case vide avec un chiffre entre 1 et 9,
en se basant sur les chiffres déjà présents, sachant que:
Chaque rangée, chaque colonne et chaque groupe de 9 cases (donc 9 groupes) doivent contenir TOUS les chiffres 1 à 9
(et donc jamais deux fois le même chiffre dans un de ces éléments).
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 18:19

Je n'avais pas fait suffisamment attention ce matin mais en fait c'est toujours la même série de chiffres sur chaque ligne qui se répète.
Ce qui enlève du coup tout intérêt à ce jeu de réflexion !  Mad

Il faudrait pouvoir remplir les cases d'une façon plus 'aléatoire'. Quoi que 'Aléatoire' n'est certainement pas le bon mot.
Puisqu'il s'agit plutôt d'une organisation complexe...
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 19:09

Générer des grilles avec des niveaux de difficulté variables me semble assez compliqué !
Personnellement je me suis fait un programme de génération en panoramic qui utilise un exécutable externe,
appelable en ligne de commande, qui permet de générer 4 niveaux différents de difficulté :
https://qqwing.com/qqwing-1.0.1-1.windows.bin.zip
Je génère ainsi des feuilles de 12 grilles au format A4, de niveau au choix 1 à 4 (perso, 1 ça me suffit !)
Il y a un tas d'autres possibilités, à voir dans l'aide, notamment de résoudre des grilles.
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku EmptyVen 17 Déc 2021 - 20:31

Huuum ça peut être intéressant effectivement.

Merci pour le partage JL35. Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Contenu sponsorisé





Générateur de grilles de Sudoku Empty
MessageSujet: Re: Générateur de grilles de Sudoku   Générateur de grilles de Sudoku Empty

Revenir en haut Aller en bas
 
Générateur de grilles de Sudoku
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» générateur de QCM
»  Générateur de paysages
» un p'tit sudoku a resoudre
» SUDOKU solution
» Générateur de mots de passe

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: