[Ex] Jeu de Calcul mental

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
Avatar du membre
charliegun
Niveau 1
Niveau 1
Messages : 5
Enregistré le : sam. 04 déc. 2010 13:17
Status : Hors ligne

[Ex] Jeu de Calcul mental

#1

Message par charliegun »

Bonjour à tous.
Voici un petit programme de calcul mental.
C'est pour l'instant ma première version.
Je compte l'amélioré avec une belle fenêtre, plutôt que les basiques inputbox.
Je viens de découvrir Koda il y a une semaine je vais m'y essayé.
Je suis ouvert à toutes critique et/ou amélioration.

► Afficher le texte
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [Ex] Jeu de Calcul mental

#2

Message par timmalos »

Vous ne savez pas calculer? Programmez ;)
Une fois le jeu lancé, lancez le script suivant :

Code : Tout sélectionner

Opt('TrayIconDebug',1)
While  1
    $var = ControlGetText ( "[CLASS:#32770]","",1002 )
    $var = StringSplit($var,"=")
    $var = Stringreplace($var[1],"x","*")
    $var = Stringreplace($var,":","/")

    $res = Execute($var)
    ControlSetText("[CLASS:#32770]","",1001,$res)
    Sleep(2000)
    ControlClick("[CLASS:#32770]","",1)
    Sleep(1000)
WEnd
Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 870
Enregistré le : ven. 30 mai 2008 15:08
Status : Hors ligne

Re: [Ex] Jeu de Calcul mental

#3

Message par DimVar »

timmalos a écrit :Vous ne savez pas calculer? Programmez ;)
Une fois le jeu lancé, lancez le script suivant :
Excellent :D

charliegun a écrit : Je suis ouvert à toutes critique et/ou amélioration.
[/spoiler]
Faudrait une fin au programme avec des stats sur les réussites/échecs.
Et aussi pour y mettre un peu de piquant, un mode everest. Ca permet de garder un score de bonne réponses maxi.
Tant qu'on a bon, le script enregistre le nombre de bonnes réponses visualisé avec un compteur. Dés que l'on a faux, le compteur retombe à zéro.
On peut imaginer le choix de difficultés aussi :
Deux chiffres (ex 8x2),
Deux nombre de deux chiffre (10x10),
Un nombre de trois chiffres et l'autre de deux chiffres (231+12),
Deux nombres à trois chiffres (612-524),
etc...
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [Ex] Jeu de Calcul mental

#4

Message par zeshrek »

Suggestion si celles de DimVar (qui sont tres bien) sont implantées : accepter systématiquement la réponse 42 comme étant juste (mais en notant qqpart que c'est de la triche, pour l'indiquer dans le compte rendu de stat)


(pour ceux qui ne comprendraient pas pourquoi 42 est une réponse valable a toutes les questions : http://desencyclopedie.wikia.com/wiki/42 )
Si vis pacem para bellum
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [Ex] Jeu de Calcul mental

#5

Message par timmalos »

Voila un petit script pour s'amuser, donne un score sur 50 et la difficulté est accrue au fur et au mesure de l'avancement du score.
J'ai essayé d'equilibrer au maximum, y'aura peut etre des changements à faire de nouveau:

Voici donc ma version de conception un peu différente de celle proposée ci-dessus, mais ca ne veut pas dire que c'est mieux.

Code : Tout sélectionner

HotKeySet("{ESC}", "Terminate")

Func Terminate()
    Exit 0
EndFunc   ;==>Terminate

MsgBox(4096, "Test de calcul", "Testez vos connaissances en calcul mental. Ce test va devenir de plus en plus dur, vous obtiendrez un score sur 50. Bonne chance ! ECHAP pour quitter.", 0)
$operateur = ""
$score = 0
While $score <50

    ;Debut des calculs d'operateurs
    $op = Random(1, 100, 1)
    $1_min = 1
    $1_max =(100-2*$score)
    $2_min = (100-2*$score)+1
    $2_max = (100-2*$score)+2*$score
    Switch $op
        Case $1_min To $1_max ;Au debut, que des additions, et on en met de moins en moins
            If Random(1, 100, 1) >= $score*2.5 Then
                $operateur = " + "
                $nombre1 = Random(1, 9+4*$score, 1)
                $nombre2 = Random(1, 9+abs(4*$score-$nombre1), 1)
            Else
                $operateur = " - "
                $nombre1 = Random(1, 9+4*$score, 1)
                $nombre2 = Random(1, 9+4*$score, 1)
            EndIf
        Case $2_min To $2_max
            $operateur = " * "
            $nombre1 = Random(1, 2*$score, 1)
            $nombre2 = Random(1, Int(abs(2*$nombre1-$score)), 1)
    EndSwitch

    ;Calcul du resultat, et affichage de l'Input
    $resultat = Execute($nombre1 & $operateur & $nombre2)
    $value = InputBox("Test de calcul", $nombre1 & $operateur& $nombre2 & " = . . .  ", "", " M5")

    If $value = $resultat Then
        $score = $score + 1
        TrayTip("Notification", " CORRECT : Score=" & $score, 5000, 1)
        Sleep(500)
    ElseIf $value <> int($value) Then
        Exit
    Else
        MsgBox(0,"Test de calcul"," FAUX ! La réponse etait : " & $resultat & "Votre score est:"&$score)
        Exit
    EndIf
WEnd
MsgBox(0,"Test de calcul"," FELICITATIONS ! Votre score est MAXIMAL. Ne tardez plus à tenter votre chance au 'Compte est Bon'."&$score)
Exit
Avatar du membre
charliegun
Niveau 1
Niveau 1
Messages : 5
Enregistré le : sam. 04 déc. 2010 13:17
Status : Hors ligne

Re: [Ex] Jeu de Calcul mental

#6

Message par charliegun »

Je n'ai pas internet pour l'instant ou je suis donc je passe vite fais au cyber.

timmalos -> Je vais essayé ton petit script. :roll:

DimVar -> Je vais faire un mode difficile.

et zeshrek -> j'ai enregistré ta page sur le chiffre 42 que je regarderai chez moi.

Je vais entamer aussi un autre petit jeu pour pouvoir "travaillé" sur plusieurs projet à mes heures perdu :lol:
Répondre