Création d'un générateur d'exercices de calcul mental aléatoire

Création d'un générateur d'exercices de calcul mental aléatoire - Algo - Programmation

Marsh Posté le 17-10-2009 à 05:05:05    

Cheres amies, chers amis du forum
 
J'ai besoin d'aide sur un algo pour un projet en C++ qui doit me permettre de réviser le calcul mental.
 
Contexte général :
 
Dans un temps limité, je dois répondre à un certain nombre de questions avec réponses à choix multiples (4 réponses possibles par question).
 
Chaque question est obligatoirement une opération à deux chiffres.
 
Les chiffres peuvent être entiers (compris entre -10000 et 10000), décimaux (jusqu'à trois chiffres après la virgule), positifs ou négatifs pour de petits chiffres (ex : 0.009) ou à deux chiffres pour ceux compris entre -100 et 100, des fractions.
 
À ce stade de la conception, j'ai besoin d'être aiguillé sur trois choses :
- la génération aléatoire de nombre qui correspondent à la description ci-dessus ;
- le choix aléatoire d'un style opération (addition,...) ;
- et enfin le placement aléatoire de la bonne réponse dans les propositions, les propositions fausses doivent être ressemblantes pour semer le doute.
 
voici une idée de l'algo :
 
Dans l'ordre, je génèrerai d'abord l'opération, car l'intervalle de valeurs pour l'opération dépend de cette opération .
Mes trois problèmes concernent 3 tirages aléatoires successifs mais avec un objectif différent :
1/ Un tirage pour les opérandes dans leur espace de valeur ;
2/ Un tirage aléatoire de 0 -> N, où tu fais correspondre un nombre avec une des opérations ;
3/ Un tirage entre 0 et 3 pour te donner la place de la bonne réponse.
 
étape 1/  j'utiliserais l'opérateur module (%) :
Pour générer une opération aléatoire, je génère un nombre, tu regardes le résultat de ce nombre modulo 4, et en fonction, tu choisis ton opération (0 = addition, 1 = soustraction, etc).
 
Pour la division, pour être sûr de tomber sur une valeur entière, une astuce consiste à générer deux nombres, à faire leur produit, et à proposer comme opération la division du produit par la première opérande (par exemple).
 
Voila ou j'en suis, j'ai surtout besoin d'idées pour les erreurs
 
Merci.

Reply

Marsh Posté le 17-10-2009 à 05:05:05   

Reply

Marsh Posté le 19-10-2009 à 11:36:12    

Tu peux déjà simuler ton algo avec des cas concrets et tu voix si ça fonctionne. Si oui, tu implémentes, sinon, tu corriges et recommence la simu.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed