Correction : Équations en troisième

Les propositions de correctifs ou d'exercices pour Pyromaths.

Modérateur : Développeurs

spalax
Messages : 86
Inscription : 20 juil. 2011, 02:23
Localisation : Isère
Contact :

Correction : Équations en troisième

Message par spalax » 10 sept. 2014, 19:34

Bonjour,
voici trois correctifs pour l'exercice sur les équations en troisième.

* Parenthèses manquantes 1

Dans la correction, en passant de la ligne 3 à 4 lorsqu'il y a un signe moins, on passe de (x+4)/8 - (6x+2)/8 à (x+4-6x+2)/8. La suite est correcte, mais il manque des parenthèses : on devrait obtenir (x+4-(6x+2))/8. Voici un correctif qui ajoute les parenthèses.

Code : Tout sélectionner

diff --git a/src/pyromaths/ex/troisiemes/equations.py b/src/pyromaths/ex/troisiemes/equations.py
index 7526570..94e837a 100644
--- a/src/pyromaths/ex/troisiemes/equations.py
+++ b/src/pyromaths/ex/troisiemes/equations.py
@@ -96,8 +96,12 @@ def tex_equation1(valeurs):  # renvoie l'ecriture de la mise au meme denominateu
 def tex_equation2(valeurs):  # renvoie l'ecriture des quotients au meme denominateur
     texte = '\\cfrac{'
     for i in range(3):
-        texte = texte + str(Polynome('%sx+%s' % (valeurs[4][i * 2], valeurs[4][i * 2 + 1])))
-        if i == 0 and valeurs[3][1] < 0:
+        polynome = str(Polynome('%sx+%s' % (valeurs[4][i * 2], valeurs[4][i * 2 + 1])))
+        if i == 1 and valeurs[3][0] == '-':
+            texte += r"\left(%s\right)" % polynome
+        else:
+            texte += polynome
+        if i == 0:
             texte = texte + valeurs[3][0]
         elif i == 1:
             texte = texte + '}{\\cancel{%s}}=\cfrac{' % (valeurs[1][0] *
* Parenthèses manquantes 2

Toujours dans la correction de l'exercice, lorsqu'on multiplie numérateur et dénominateur par un même nombre (en préparation de la réduction au même dénominateur), il manque des parenthèses au numérateurs : en effet, le numérateur 3x+4*2 est affiché, alors qu'on devrait voir (3x+4)*2.

Code : Tout sélectionner

diff --git a/src/pyromaths/ex/troisiemes/equations.py b/src/pyromaths/ex/troisiemes/equations.py
index 755a32d..7526570 100644                                                       
--- a/src/pyromaths/ex/troisiemes/equations.py                                      
+++ b/src/pyromaths/ex/troisiemes/equations.py                                      
@@ -66,7 +66,7 @@ def tex_quotient1(a, b, c, d):  # renvoie l'ecriture de la mise au meme denomina
     if d == 1:                                                                     
         return tex_quotient0(a, b, c)                                              
     else:                                                                          
-        return '\\cfrac{%s_{\\times%s}}{%s_{\\times%s}}' % (str(Polynome('%sx+%s' % (a, b))), d, c, d)
+        return '\\cfrac{\\left(%s\\right)_{\\times%s}}{%s_{\\times%s}}' % (str(Polynome('%sx+%s' % (a, b))), d, c, d)
·                                                                                   
·                                                                                   
 def tex_equation0(valeurs):  # renvoie l'ecriture des quotients de l'enonce        
* Mauvais import

Enfin, dans le programme principal, référence est faite à la variable *path*, qui n'existe pas.

Code : Tout sélectionner

diff --git a/pyromaths b/pyromaths
index b8f50a1..47770a1 100755
--- a/pyromaths
+++ b/pyromaths
@@ -2,7 +2,7 @@
 try:
     from pyromaths import pyromaths
 except ImportError:
-    import sys, os.path
+    import sys, os.path as path
     basedir = path.dirname(path.realpath(__file__))
     sys.path.insert(0, path.join(basedir,'src'))
     from pyromaths import pyromaths

* Question

Comment vous sont apportés les correctifs d'habitude ? Pour vous apportez ces correctifs, j'ai dû décompresser l'archive, faire mes corrections, me rendre compte que je n'avais plus les fichiers originaux (et donc que je ne savais plus ce que j'avais modifié), décompresser l'archive à nouveau, y initialiser un dépôt git, déplacer tous les fichiers de mon premier répertoire de travail vers ce nouveau, et enfin visualiser et vous reporter le diff des modifications.

Comment font les autres contributeurs ? Ils vous fournissent un fichier / une archive complète, et à vous de faire le diff ? C'est pour cette raison que je trouve qu'un dépôt git public serait pratique (désolé de revenir à la charge trois ans plus tard)…

fabienm
Messages : 28
Inscription : 06 nov. 2012, 00:20

Re: Correction : Équations en troisième

Message par fabienm » 16 sept. 2014, 14:11

Je suis un peu hors sujet mais j'appuie ta dernière remarque, ça serait tellement plus pratique...

spalax
Messages : 86
Inscription : 20 juil. 2011, 02:23
Localisation : Isère
Contact :

Re: Correction : Équations en troisième

Message par spalax » 09 oct. 2014, 15:54

Up ?

Avatar de l’utilisateur
Jérôme
Administrateur - Site Admin
Messages : 1083
Inscription : 26 août 2006, 13:10
Localisation : Nantes
Contact :

Re: Correction : Équations en troisième

Message par Jérôme » 09 oct. 2014, 17:26

Pardon, je suis passé à côté de ce message. J'ai un peu le nez dans le guidon en ce moment.
Les autres contributeurs demandent à avoir un accès au dépôt git en suivant le guide mis à disposition. Un accès en lecture seule ne réglerait pas le problème ici je pense. Les diff font également l'affaire.
Concernant les correctifs, c'est chouette. Cela dit, l'affichage des expressions mathématiques devrait se faire via pyromaths.outils.Priorites3.texify(liste_calculs). Je pense que la modification devrait plutôt se faire pour que le module equations.py utilise cette fonction.
Cela dit, je veux bien intégrer ces modifications en attendant que quelqu'un se penche sur le problème.
La 3e modification ne doit plus être d'actualité, car le fichier src/pyromaths.py ne contient que
from pyromaths import pyromaths
pyromaths.main()
Pyromaths génère des fiches d'exercices et leur corrigé en toute simplicité.
Un programme multi-plateformes libre et gratuit sous licence GPL

spalax
Messages : 86
Inscription : 20 juil. 2011, 02:23
Localisation : Isère
Contact :

Re: Correction : Équations en troisième

Message par spalax » 09 oct. 2014, 20:45

Jérôme a écrit : La 3e modification ne doit plus être d'actualité, car le fichier src/pyromaths.py ne contient que
from pyromaths import pyromaths
pyromaths.main()
Il s'agit du fichier pyromaths (à la racine du projet), pas de src/pyromaths.py.

Avatar de l’utilisateur
Jérôme
Administrateur - Site Admin
Messages : 1083
Inscription : 26 août 2006, 13:10
Localisation : Nantes
Contact :

Re: Correction : Équations en troisième

Message par Jérôme » 09 oct. 2014, 21:12

Ah oui, pardon. Cela dit, chez moi, ça fonctionne sans soucis.
Pyromaths génère des fiches d'exercices et leur corrigé en toute simplicité.
Un programme multi-plateformes libre et gratuit sous licence GPL

spalax
Messages : 86
Inscription : 20 juil. 2011, 02:23
Localisation : Isère
Contact :

Re: Correction : Équations en troisième

Message par spalax » 12 nov. 2014, 10:35

Bonjour,
Jérôme a écrit :Ah oui, pardon. Cela dit, chez moi, ça fonctionne sans soucis.
Ce doit être parce que tu n'exécutes pas la partie récupérant une exception. Si tu insères une exception dans la première partie (ligne 3), tu devrais voir l'erreur.
#!/usr/bin/env python
try:
    raise ImportError
    from pyromaths import pyromaths
except ImportError:
    import sys, os.path
    basedir = path.dirname(path.realpath(__file__))
    sys.path.insert(0, path.join(basedir,'src'))
    from pyromaths import pyromaths
pyromaths.main()
$ ./pyromaths 
Traceback (most recent call last):
  File "./pyromaths", line 7, in <module>
    basedir = path.dirname(path.realpath(__file__))
NameError: name 'path' is not defined
# Différents comportements

Si je lance pyromaths avec la commande "./pyromaths", dans la racine du projet, je vois les onglets du collège, et un seul onglet "Lycée" pour les exercices du lycée.
En revanche, si je lance pyromaths avec "python pyromaths.py", dans le dossier "src", je vois les onglets du collège, et des onglets "Seconde", "1èreS", etc. pour le lycée.

Je pense que c'est une erreur : le comportement devrait être le même dans les deux cas.


# Bug tracker

Ces remarques me font poser la question suivante : y a-t-il un bug tracker pour pyromaths, ou est-ce que le forum fait office de bug tracker ?

-- Louis

Avatar de l’utilisateur
Yves
Messages : 456
Inscription : 21 janv. 2009, 20:40
Contact :

Re: Correction : Équations en troisième

Message par Yves » 12 nov. 2014, 14:51

Le forum est effectivement utilisé pour remonter les bugs. Concernant le fichier pyromaths à la racine du projet, je confirme qu'en l'état actuel il génère une erreur et que le correctif proposé par Louis résout le problème.

Avatar de l’utilisateur
Jérôme
Administrateur - Site Admin
Messages : 1083
Inscription : 26 août 2006, 13:10
Localisation : Nantes
Contact :

Re: Correction : Équations en troisième

Message par Jérôme » 18 nov. 2014, 20:56

Bien vu en effet. Dès que ton compte git sera créé, tu pourras insérer ton code.
À plus.
Pyromaths génère des fiches d'exercices et leur corrigé en toute simplicité.
Un programme multi-plateformes libre et gratuit sous licence GPL

Répondre