Accueil > > > PROGRAMME POUR LES MOTS CROISÉS
PROGRAMME POUR LES MOTS CROISÉS
Information sur la source
Description
voici un petit programme très simple qui ouvre un dico et demande à l'utilisateur un mot avec des espaces et cherche dans le dictionnaire si un mot peut remplir ces espaces. par example : d f le donnera difficile. le zip contient le dico medium et small et la source. Je précise aussi que cette source est compilable par shedskin. j'attends des conseils et des critiques !!
Source
- # variables, a typage statique pour shedskin
- dicostart = []
- tailleok = []
- ok = []
- egal = False
- text = "first time"
- compteur = 0
-
- print "programme de resolution de mots croises par dictionnaire par clem120%\na tout moment vous pouvez taper help pour obtenir de l'aide"
- print "-------------------------------------------------------------------------------"
-
- # selection du dictionnaire de mots
- print "\nentrez small pour avoir le petit dico fr (ultrarapide, petit, tres fiable)"
- print "entrez latin pour avoir le dico latin (rapide, moyen, tres fiable)"
- print "entrez medium pour avoir le dico fr moyen (rapide, gros, moyennement fiable)"
- print "entrez big pour avoir le gros dico fr (lent, tres gros, peu fiable)"
-
- while True:
- print "\nentrez le nom du dico :",
- adresse = raw_input()
-
- # interpretation de la saisie
- if adresse == "small":
- adresse = "top10000fr.txt"
- elif adresse == "medium":
- adresse = "dictionary_french.dic"
- elif adresse == "big":
- adresse = "wordlist.txt"
- elif adresse == "latin":
- adresse = "dictionary_latin.dic"
- if adresse == "help": # l'aide a tout moment
- print "\nentrez small pour avoir le petit dico fr (ultrarapide, petit, tres fiable)"
- print "entrez latin pour avoir le dico latin (rapide, moyen, tres fiable)"
- print "entrez medium pour avoir le dico fr moyen (rapide, gros, moyennement fiable)"
- print "entrez big pour avoir le gros dico fr (lent, tres gros, peu fiable)"
-
- # ouverture du dico
- try:
- if adresse != "help":
- Liste=file(adresse,'r')
- print "ouverture du dico..."
- Ligne=Liste.readline()
- break
- except:
- print "impossible d'ouvrir le fichier indique"
-
- # fichier -> liste de mots, ligne par ligne
- while Ligne<>"":
- dicostart.append(Ligne)
-
- Ligne=Liste.readline()
- Liste.close()
-
- # nouvelle liste de mots sans \n et en minuscule
- dico = []
- for mot in dicostart:
- mot.lower()
- dico.append(mot[0:len(mot)-1])
-
- # entree du mot a rechercher
- while True:
- tailleok = []
- ok = []
- print "veuillez entrer le mot, mettez un espace ou vous ne savez pas :",
- text = raw_input()
- if text == "":
- break
- print "--------------------------------------------------------------------------------"
-
- # nouvelle liste avec les mots de bonne taille
- for mot in dico:
- if len(mot) == len(text):
- tailleok.append(mot)
-
- # test pour savoir si les deux mots peuvent etres ==
- print "tests sur les mots..."
- for mot in tailleok:
- compteur = 0
- for lettre in mot:
- if lettre == text[compteur] or text[compteur] == " ":
- egal = True
- else:
- egal = False
- break
- compteur += 1
- if egal == True:
- ok.append(mot)
-
- # affichage des mots trouves
- if len(ok)>0:
- print "\nvoici la liste des mots possibles :"
- print "-------------------------------------------------------------------------------"
- for mot in ok:
- print mot, " ",
- print "\n--------------------------------------------------------------------------------"
- else:
- print "aucun mot ne correspond"
# variables, a typage statique pour shedskin
dicostart = []
tailleok = []
ok = []
egal = False
text = "first time"
compteur = 0
print "programme de resolution de mots croises par dictionnaire par clem120%\na tout moment vous pouvez taper help pour obtenir de l'aide"
print "-------------------------------------------------------------------------------"
# selection du dictionnaire de mots
print "\nentrez small pour avoir le petit dico fr (ultrarapide, petit, tres fiable)"
print "entrez latin pour avoir le dico latin (rapide, moyen, tres fiable)"
print "entrez medium pour avoir le dico fr moyen (rapide, gros, moyennement fiable)"
print "entrez big pour avoir le gros dico fr (lent, tres gros, peu fiable)"
while True:
print "\nentrez le nom du dico :",
adresse = raw_input()
# interpretation de la saisie
if adresse == "small":
adresse = "top10000fr.txt"
elif adresse == "medium":
adresse = "dictionary_french.dic"
elif adresse == "big":
adresse = "wordlist.txt"
elif adresse == "latin":
adresse = "dictionary_latin.dic"
if adresse == "help": # l'aide a tout moment
print "\nentrez small pour avoir le petit dico fr (ultrarapide, petit, tres fiable)"
print "entrez latin pour avoir le dico latin (rapide, moyen, tres fiable)"
print "entrez medium pour avoir le dico fr moyen (rapide, gros, moyennement fiable)"
print "entrez big pour avoir le gros dico fr (lent, tres gros, peu fiable)"
# ouverture du dico
try:
if adresse != "help":
Liste=file(adresse,'r')
print "ouverture du dico..."
Ligne=Liste.readline()
break
except:
print "impossible d'ouvrir le fichier indique"
# fichier -> liste de mots, ligne par ligne
while Ligne<>"":
dicostart.append(Ligne)
Ligne=Liste.readline()
Liste.close()
# nouvelle liste de mots sans \n et en minuscule
dico = []
for mot in dicostart:
mot.lower()
dico.append(mot[0:len(mot)-1])
# entree du mot a rechercher
while True:
tailleok = []
ok = []
print "veuillez entrer le mot, mettez un espace ou vous ne savez pas :",
text = raw_input()
if text == "":
break
print "--------------------------------------------------------------------------------"
# nouvelle liste avec les mots de bonne taille
for mot in dico:
if len(mot) == len(text):
tailleok.append(mot)
# test pour savoir si les deux mots peuvent etres ==
print "tests sur les mots..."
for mot in tailleok:
compteur = 0
for lettre in mot:
if lettre == text[compteur] or text[compteur] == " ":
egal = True
else:
egal = False
break
compteur += 1
if egal == True:
ok.append(mot)
# affichage des mots trouves
if len(ok)>0:
print "\nvoici la liste des mots possibles :"
print "-------------------------------------------------------------------------------"
for mot in ok:
print mot, " ",
print "\n--------------------------------------------------------------------------------"
else:
print "aucun mot ne correspond"
Conclusion
Voilà avec cela vous n'avez aucune excuse pour ne pas vous mettre aux mots croisés.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Développement particulier [ par davidoff73 ]
Bonjour, <p class="MsoNormal" st
Tkinter + Text + coloration [ par Kickaha59 ]
Bonjour à tous,Je souhaite colorer certains mots afficher dans une fenêtre avec la fonction Text de Tkinter.Par exemple je veux colorer en vert tout l
Module de recherche de Yahoo [ par Jideone ]
Salut tout le monde,Y'a t-il quelqu'un dans ce forum qui a deja utilise le module de recherche de yahoo "pYsearch"?merci
Recherche développeur Python [ par jmvl ]
Nous sommes une société d'informatique spécialisé dans le développement d'application pour grandes entereprises. Dans le cadre d'une de nos missions,
Fichiers [ par Yofure ]
Bien le bonjour à tous. Je suis débutant en programmation (et nouveau sur le forum ^^). Je voudrais créer un programme qui teste toutes les permutat
Nulle en python ,je vous prie de m'aider [ par sawulia ]
Salut! Je suis très nulle en prog, et j'ai un devoir à rendre en progra, il faut faire le jeux master mind.Est ce que quelqu'un peux corriger ma fonc
Recherche de chaine [ par DoudouBidou ]
Bonjour, je souhaite faire une recherche de chaine dans un texte et je pense que le module a utilisé est re mais j'ignore comment. Je voudrais
Comment créer des screenshots sous un dédié ? [ par Chrisvip ]
Bonsoir,Comme je fais un moteur de recherche, j'ai besoin de faire des screens, malgré qu'il y a des services sur le web (toujours un défaut), j'aimer
|
Derniers Blogs
[WP7] AJOUTER DES IMAGES DANS LA MEDIA LIBRARY D'UN WINDOWS PHONE 7[WP7] AJOUTER DES IMAGES DANS LA MEDIA LIBRARY D'UN WINDOWS PHONE 7 par Audrey
L'émulateur Windows Phone 7, fourni avec la version Beta des outils développeurs n'inclut aucune image dans sa bibliothèque. Pas très pratique de tester son application lorsque l'on souhaite que l'utilisateur puisse choisir une image présente dans le télé...
Cliquez pour lire la suite de l'article par Audrey VIVE LES MOCKS ET LES POCOSVIVE LES MOCKS ET LES POCOS par vLabz
J'observe régulièrement autour de moi de la confusion à propos de ces deux termes et j'aimerais juste rappeler ce qu'ils signifient. Je ne suis bien sûr pas le mieux placé pour faire une leçon mais je vais faire de mon mieux pour mettre en valeur ce q...
Cliquez pour lire la suite de l'article par vLabz [WF4] WORKFLOW AND CUSTOM ACTIVITIES - BEST PRACTICES (4/5)[WF4] WORKFLOW AND CUSTOM ACTIVITIES - BEST PRACTICES (4/5) par JeremyJeanson
Vendredi dernier Microsoft a publié le quatrième épisode des bonnes pratiques pour coder ses activités custom dans WF4 : endpoint.tv - Workflow and Custom Activities - Best Practices (Part 4) . Tout comme pour les précédents épisodes, j'ai pris le temps d...
Cliquez pour lire la suite de l'article par JeremyJeanson DéVELOPPEMENT MOBILE : .NET COMPACT FRAMEWORK & LIMITATIONSDéVELOPPEMENT MOBILE : .NET COMPACT FRAMEWORK & LIMITATIONS par Pi-R
Introduction :
Le développement d'applications mobiles est quelque peu différent du développement d'applications sous Windows. En effet, le développement d'applications mobiles se base sur le .NET Compact Fra...
Cliquez pour lire la suite de l'article par Pi-R IPHONE VERSUS WP7 CODINGIPHONE VERSUS WP7 CODING par Nicolas
Je relais une présentation sur slideshare.net, qui compare le développement sur Iphone et Windows Phone 7, qui ma fait sourire. I phone versus windows phone 7 coding View more presentations from www.donburnett.com. J'aurais bien aimé une comparai...
Cliquez pour lire la suite de l'article par Nicolas
Logiciels
Xilisoft HD Vidéo Convertisseur 6 (6.0.3.0421)XILISOFT HD VIDéO CONVERTISSEUR 6 (6.0.3.0421)Xilisoft HD Vidéo Convertisseur est un outil professionnel de conversion HDTV, conçu pour transfo... Cliquez pour télécharger Xilisoft HD Vidéo Convertisseur 6 Xilisoft MP4 Convertisseur 6 (6.0.2.0415)XILISOFT MP4 CONVERTISSEUR 6 (6.0.2.0415)Xilisoft MP4 Convertisseur est un outil puissant pour la conversion de vidéo MP4, qui peut conver... Cliquez pour télécharger Xilisoft MP4 Convertisseur 6 Vade Retro Desktop (3.03)VADE RETRO DESKTOP (3.03)Le logiciel antispam Vade Retro pour Microsoft Outlook®, Outlook Express® et Windows Mail®(Vista)... Cliquez pour télécharger Vade Retro Desktop Malwarebytes Anti Malwares (1.46)MALWAREBYTES ANTI MALWARES (1.46)Malwarebytes' Anti-Malware est un anti-malware qui peut éliminer même les plus avancés des logic... Cliquez pour télécharger Malwarebytes Anti Malwares
|