Poster un nouveau sujet Poster une réponse Page: 1,      >>
générateur de grilles de Sudoku (1000 octets)
Auteur Message
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Mer 25 Avr 2007, 19:41   Citer 

Mon programme permet de générer des grilles de Sudoku.


Code
0->N
0->Xmin
94->Xmax
0->Ymin
62->Ymax
GridOff
AxesOff
FnOff
ClrDraw
ClrHome
Menu ("SUDOKU", "NEW GRILLE",1, "CORRECTION",3,"REPRENDRE",0
Lbl 1
{9,9}->dim [E]
Fill (1,[E]
2->B
Lbl 0
-1->Y
6->S
0->X
int (rand8,99)+1->C
Lbl 6
Y+1->Y
If Y=10
Then
Disp « ABANDON
ClrList L5
{1,1}->dim [E]
Stop
End
If X=10
Then
For (P,1,A-1
1->[E](P,L5(P))
End
End
B->Q
For (B,Q,9
If X[différent de] 10
0->Y
0->X
ClrList L5
11->dim L5
For (A,1,9
Repeat K[différent de] L5(10) and K[différent de] L5(11) and [E](A,C)=1 and C [différent de] L5(1) and C [différent de] L5(2) and C [différent de] L5(3) and C [différent de] L5(4) and C [différent de] L5(5) and C [différent de] L5(6) and C [différent de] L5(7) and C [différent de] L5(8)
X+1->X
If X=10
Gotoo 6
round (9fPart ((C+S)/9)+1,0)->C
iPart ((C-.1)/3)+1->K
End
B->[E](A,C)
round (3fPart (A/3)+1,0)->P
If P=2
K->L5(10)
If P=3
K->L5(11)
If P=1
Then
0->L5(10)
0->L5(11)
End
C->L5(A)
0->X
Text (56,85,B
Text (56,90,A
int (rand7,99)->S
If S=2 or S=5
S+1->S
End
End
Text (56,85, « ..... »
Text (56,90, « ..... »
1->N
Lbl 3
ClrDraw
Line (0,19,78,19
Line (0,41,78,41
Line (24,0,24,62
Line (52,0,52,62
Line (78,0,78,62
If N=1
Then
For (C,0,39
int (rand8,99)+1->A
int (rand8,99)+1->B
7A-7->D
If D=>21
D+1->D
If D=>43
D+1->D
If D=58
57->D
9B-p->E
If E=>27
E+1->E
If E=>55
E+1->E
Text (D,E,[E](A,B)
End
Stop
End
Dim [E]->L5
If L5(1) [différent de] 9 or L5(2) [différent de] 9
Then
Disp « CORRECTION
Disp « EFFACEE
ClrList L5
Stop
End
0->D
For (A,0,57,7
D+1->D
0->C
If A=21
22->A
If A=43
44->A
For (B,0,82,9
If B=27
28->B
If B=55
56->B
C+1->C
Text (A,B,[E](D,C)
End
If A=51
50->A
End
ClrList L5
{1,1}->dim [E]



Le sous-mode "reprendre" est à utiliser qu'après une erreur de mémoire. Il sert à poursuivre la recher d'une grille.

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
PMdej



Autorisation : Membre
Nb de messages : 144
Inscrit le : Mer 07 Mar 2007, 19:10
Posté le : Mer 25 Avr 2007, 21:52   Citer 

mais tu peut y jouer au moins ???
godgrace.gif

----------------------
BIENVENUE DANS LE MONDE DE LA PROGRAMMATION
 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Jeu 26 Avr 2007, 11:39   Citer 

Ca sert à rien de pouvoir y jouer sur calculette, comme tout autre jeux ou il faut bcp réfléchir. Tu uses tes piles pour rien, alors que si tu le recopie sur une feuille t'es tranquille. Et puis dans ce genre de jeux quand t'es absolument sûr, tu écrit au stylo, et quand tu l'es moin au crayon de papier (c'est comme ça que je fais). Sur la caltos c'est impossible.
ça prend environ 1 minute pour recopier les 40 nombres : ça va, c'est raisonable !
Et puis si vraiement tu veux y jouer sur ta calculette, tu rebrousse tes manches et tu fais un mix de mon programme et de celui de Sango. glasses.gif

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
mad67



Autorisation : Membre
Nb de messages : 630
Inscrit le : Sam 23 Jui 2007, 14:05
Posté le : Sam 28 Avr 2007, 11:12   Citer 

il faut le melanger avec le sudoku de sango

 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Sam 28 Avr 2007, 11:14   Citer 

Ouais, mas les piles ne vont pas aimer... Déjà que pour trouver une grille il faut...beaucoup de temps, alors pour jouer !!!

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
Ti-Instructeur



Autorisation : Membre
Nb de messages : 26
Inscrit le : Lun 22 Jan 2007, 9:25
Posté le : Sam 28 Avr 2007, 16:49   Citer 

Que signifie :

Code
int(rand8,99)+1


il s'agit surtout de la virgule qui me dérange....

----------------------
Vive TEXAS INSTRUMENTS !!! Mes sites web (en construction) : trucetastuces.infordi.googlepages.com
cij-softwares.site.voila.fr/index.html
N'hésitez pas à m'envoyer des mails pour des commentaires ou des idées !!!
 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Sam 28 Avr 2007, 17:30   Citer 

Nan ben en fait il s'agit du nombre 8,99, que tu tapera "8.99", car si j'avais mis 9 tout rond, il pourait sortir le nombre 10, ce qui est embêtant étant donné qu'on ne veut que des nombres de 1 à 9. Il y a très peu de chance pour que ça ce produise, mais c'est possible. C'est pourquoi je met un nombre légèrement inférieur à 9.

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Sam 28 Avr 2007, 18:49   Citer 

Non, si tu avait tout simplement mis

Code
int rand 9+1->X


ton code aurait marcher.

Et comment génère tu la grille?

Sangohan38

 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Sam 28 Avr 2007, 19:22   Citer 

Oui, effectivement, je viens de relire le truc sur rand dans le manuel, et il ne peut pas atteindre la valeur 9. Ben sinon pour génèrer la grille tu entre le programme, tu choisis le sous-menu NEW GRILLE. Et au bout d'un certain temps il t'affiche une grille comprtant 40 nombres (il ne reste plus qu'à trouver les autres).

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Jeu 03 Mai 2007, 13:08   Citer 

D'après ce que j'ai compris, ton code génère une grille en choisissant des nombres et leurs emplacements.
Seulement, certaines grilles bloqueront par les nombres aléatoires.
Donc ce prog est une bonne idée pour générer une grille mais elle n'admet pas forcément de solution.

Sangohan38

 Adresse email Haut de page Bas de page 
 
Jcotnys



Autorisation : Membre
Nb de messages : 180
Inscrit le : Lun 20 Mar 2006, 13:28
Posté le : Jeu 03 Mai 2007, 17:05   Citer 

Eh reslt jrevien de vac et je vois que ça n'a pas chomé laugh.gif laugh.gif
Tout compte fait, on ne peut pas jouer au sudoku sur ti82 moodforlove.gif moodforlove.gif

----------------------
le travail c la santé winkle.gif
 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Jeu 03 Mai 2007, 17:41   Citer 

Sango, tu peux préciser ta pensée, parce que j'ai pas bien compris.
Jcotnys, tu peux jouer au sudoku sur TI-82, mais tes piles tiendrons deux parties. Et puis c'est quand même pas très long de recopier 40 nombres sur un bout de papier.

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Ven 04 Mai 2007, 12:45   Citer 

On peut jouer au sudoku bien plus de deux partie sur une 82 puisque j'ai créer un programme différent dans celui de Vibra sur la création des grilles.
En effet, les grilles de ce prog son juste des nombres avec des emplacements.
Ce qui veut dire que la grille n'admet pas forcément des solutions.

Sangohan38

 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Ven 04 Mai 2007, 17:18   Citer 

Oui, voila, c'est le problème. Vas - y, met ton programme, j'avoue que je suis très curieux de voir comment t'as fait pour pas avoir ce problème !! ahh.gif

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
PMdej



Autorisation : Membre
Nb de messages : 144
Inscrit le : Mer 07 Mar 2007, 19:10
Posté le : Ven 04 Mai 2007, 19:05   Citer 

Ouai sango ce serait bien que tu mette la solution .....!!!!!
godgrace.gif

----------------------
BIENVENUE DANS LE MONDE DE LA PROGRAMMATION
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Ven 04 Mai 2007, 21:07   Citer 

Mon prog à déja été posté depuis un moment.
Il s'agit en fait de grille préchargée et donc on pioche des nombres dedan ce qui veut dire que la grille admet au moins une solution.

Sangohan38

 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Ven 04 Mai 2007, 21:16   Citer 

Ouais, mais c'est trop simple !! tu veux dire qu'il y a une grille, et qu'a chaque fois les nombres de la grille sont tirés au sort ? Mais ça veut dire qu'il n'y a qu'une seule grille ?! Mon programme met peut-être du temps pour en trouver une, mais elles sont à chaque fois différentes ! crazy.gif Nan je crois qu'il y a un truc que j'ai pas compris.

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Ven 04 Mai 2007, 21:20   Citer 

Il y a 10 grilles mais comme on ne sait pas laquelle va sortir, on la remplie.
Ta solution est simple efficace mais n'admet pas forcément des solutions.

Sangohan38

 Adresse email Haut de page Bas de page 
 
vibra



Autorisation : Membre
Nb de messages : 595
Inscrit le : Mer 04 Avr 2007, 13:29
Posté le : Ven 04 Mai 2007, 21:50   Citer 

Ah d'accord, j'ai compris. Si il y a 10 grilles, il n'y a pas de problèmes. Mais bon c'est vrai que le fin du fin ce serait d'avoir mon programme mais sans le problème du non-aboutissement.

----------------------
Vive la programmation et vive le vibraphone !!!
 Adresse email Haut de page Bas de page 
 
PMdej



Autorisation : Membre
Nb de messages : 144
Inscrit le : Mer 07 Mar 2007, 19:10
Posté le : Ven 04 Mai 2007, 22:09   Citer 

ouais c'est vrai mais c'est pratiquement imposible a faire en TI-basic mais si on demandais un coup de main a Ratuss il pourrait peut etre réfléchir sur le programme en ASM ...... nan !!???
godgrace.gif

----------------------
BIENVENUE DANS LE MONDE DE LA PROGRAMMATION
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse Page: 1,      >>





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink