DEVINER LE MOT ;; UN JEU AVEC TROIS NIVEAUX "FACILE // MOYEN // MASTER"

cs_SDan Messages postés 288 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 13 juin 2008 - 11 déc. 2004 à 10:05
CrazyMan19 Messages postés 163 Date d'inscription samedi 2 août 2003 Statut Membre Dernière intervention 4 novembre 2013 - 12 déc. 2004 à 20:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28126-deviner-le-mot-un-jeu-avec-trois-niveaux-facile-moyen-master

CrazyMan19 Messages postés 163 Date d'inscription samedi 2 août 2003 Statut Membre Dernière intervention 4 novembre 2013 15
12 déc. 2004 à 20:48
merci MasterHack
je vais le voir
mais tu m as pas dit ton avis sur le prog d une façon generale ?? :)
cs_MasterHack Messages postés 586 Date d'inscription jeudi 18 septembre 2003 Statut Membre Dernière intervention 13 février 2008 2
12 déc. 2004 à 19:42
mots restants -1
c'est un bug à rectifier,Merci
keke4483 Messages postés 17 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 6 mars 2008
11 déc. 2004 à 14:37
Bonjour à tous,
pour essayer de résoudre ton problème, il faut te dire que la fonction split("texte",argument) permet de transferer une chaine de caractere en un table de string. Le principe est le suivant la chaine est scanner et à chaque fois que le caractère argument est trouvé le morceaux du mot scanner auparavant est transmis dans une colonne de tableau.
Ex :
Dim strTableauMot() as string
mot = "Je fais un test"
strTableauMot = Split(mot," ")
'alors le tableau de string strTableauMot contiendra les 'infos suivantes :
'strTableauMot (0) <=> "Je"
'strTableauMot (1) <=> "fais"
'strTableauMot (2) <=> "un"
'strTableauMot (3) <=> "test"

Donc ce que je te suggère de faire est une boucle :
Private function Split() as string()
Dim intBoucle as integer
Dim tMots() as string
redim tMots(0)
For intBoucle = 1 to len(mot)
if Mid(mot,intBoucle,1) = vbCrLf) then
redim preserve tMots(ubound(tMots)+1)
else
tMots(ubound(tMots))=Mid(mot,intBoucle,1)
end if
next intBoucle
split=tMots
end function

Bon voila je sais pas si ca marche mais la logique c'est a peux près ca, le mieux c meme de passer en parametre le mot et son argument, mais comme g plus VB6 j'ai pas pu tester, désolé.

Je suis pas sur que le code marche directe apres un copier coller dans votre source, n'hésitez pas a poster vos correction.

@++
cs_SDan Messages postés 288 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 13 juin 2008
11 déc. 2004 à 13:11
re re,

Tout à fait d'accord avec toi mais malheureusement, je ne possède pas la verdion 6.
CrazyMan19 Messages postés 163 Date d'inscription samedi 2 août 2003 Statut Membre Dernière intervention 4 novembre 2013 15
11 déc. 2004 à 12:01
salut cher ami
1erment je te conseille d utiliser la 6eme V du VB pour bien explorer pas seulement mon prog mais tt les prog au VBfrance
2ement : 60 second ds le 1er niveau et faite pour les 10 mots parceque la plus long mot ds ce niveau ne déppasse pas 4 lettres, et non pas que 60sec est pour chaque mot. si c le cas tu ne perderas jamais :)
et merci
cs_SDan Messages postés 288 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 13 juin 2008
11 déc. 2004 à 10:16
re bonjour,

Encore une petite chose que je constate en testant le prog : si tu as un mot dans le désordre et si tu tapes une solution possible et que tu cliques sur Solution, il t'indique la bonne réponse mais si tu cliques sur Suivant pour avoir un nouveau mot, le temps que tu as mis pour trouver le premier mot, ne se remet pas à 60 pour l esecond et donc si dans le niveau1, pour le premier mot, tu as mis 50 secondes, il te reste 10 secondes pour le second.

Il y a encor edu travail et vonne prog
cs_SDan Messages postés 288 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 13 juin 2008
11 déc. 2004 à 10:05
Bonjour,

Ton jeu à l'air intéressant mais néanmoins, j'ai un petit bug. En effet, j'utilise la version 5.0 de Microsoft Visual Basic et quand je teste ton prog, je choisis le niveau puis je clique sur Appliquer puis sur Commencer et là, j'ai le message suivant :

Erreur de compilation

Procedure Sub ou Function non définie

et quand je clique sur OK, c'est dans Peivate Sub Choisi mot ()
tMots = Split(Mots, vbCrLf)

C'est Split qui pose un problème.

Par quoi puis-je le remplacer ou que faire?

Dommage car c'est un jeu comme ça que j'aimerais faire

Bonne chance pour tes exos et à bientôt;
Rejoignez-nous