Go to file
Benjamin Bertrand 30a6402e40 PEP
2017-04-16 11:27:06 +03:00
debug solve bug with some poly evaluation!! 2015-06-21 20:43:38 +02:00
documentation mod rsync_upload for Embrevade 2016-08-18 09:44:07 +03:00
pymath PEP 2017-04-16 11:27:06 +03:00
.gitignore add cache in gitignore 2016-01-17 19:10:49 +03:00
bugs slitely update TODO and bugs 2016-03-22 08:39:20 +03:00
LICENSE Initial commit 2015-05-14 12:43:15 +02:00
MANIFEST Ready to tag? 2015-05-14 14:00:33 +02:00
README.md Formating in README 2016-08-17 14:53:17 +03:00
requirements.txt add sympy in requirements 2015-05-16 11:45:50 +02:00
setup.py change distutils.core to setuptools 2015-05-14 14:10:11 +02:00
TODO slitely update TODO and bugs 2016-03-22 08:39:20 +03:00

pyMath

pyMath est un module python qui permet la manipulation d'expressions mathématiques. Voici ce qu'il est capable de faire:

  • Calculer comme un collégien: Pour faire de la correction automatisé d'exercice, un logiciel de calcul formel ne suffit pas. Si les étapes de calculs ne sont pas présentes, l'élève ne pourra pas analyser ses erreurs ou s'inspirer de la correction.

    >>> from pymath import Expression
    >>> ajout_fractions = Expression("2 / 5 + 2 / 3")
    >>> resultat = ajout_fractions.simplify()
    >>> print(resultat)
    \frac{ 16 }{ 15 }
    >>> for i in resultat.explain():
    ...      print(i)
    ...
    \frac{ 2 }{ 5 } + \frac{ 2 }{ 3 }
    \frac{ 2 \times 3 }{ 5 \times 3 } + \frac{ 2 \times 5 }{ 3 \times 5 }
    \frac{ 6 }{ 15 } + \frac{ 10 }{ 15 }
    \frac{ 6 + 10 }{ 15 }
    \frac{ 16 }{ 15 }
    
  • Créer des exercices aléatoirement: Pour faire des devoirs personnels, des fiches de révisions ou des exercices en classe, un générateur d'expressions est inclus.

    >>> from pymath import Expression
    >>> ajout_fraction = Expression.random("{a} + {b} / {c}")
    >>> print(ajout_fraction)
    2 + \frac{ 3 }{ 5 }
    
  • Gérer différents type de données: Pour le moment, pyMath est capable de gérer les entiers naturels, les rationnels (sous forme de fractions) et les polynômes. L'utilisation des nombres à virgules et des racines devraient être ajoutés dans les prochaines versions.

    >>> from pymath import Fraction
    >>> une_fraction = Fraction(1,2)
    >>> print(une_fraction)
    1 / 2
    >>> from pymath import Polynom
    >>> un_polynom = Polynom([1,2,3])
    >>> print(un_polynom)
    3 x^{ 2 } + 2 x + 1
    
  • Afficher avec deux types de rendus: Un en mode texte pour l'affichage dans une console. Un deuxième spécialement pour écrire des documents latex.

    >>> from pymath import Expression
    >>> ajout_fractions = Expression("2 / 5 + 2 / 3")
    >>> for i in ajout_fractions.simpliy().explain():
    ...      print(i)
    ...
    \frac{ 2 }{ 5 } + \frac{ 2 }{ 3 }
    \frac{ 2 \times 3 }{ 5 \times 3 } + \frac{ 2 \times 5 }{ 3 \times 5 }
    \frac{ 6 }{ 15 } + \frac{ 10 }{ 15 }
    \frac{ 6 + 10 }{ 15 }
    \frac{ 16 }{ 15 }
    >>> from pymath import txt
    >>> with Expression.tmp_render(txt):
    ...      for i in ajout_fractions.simpliy().explain():
    ...          print(i)
    ...
    2 / 5 + 2 / 3
    ( 2 * 3 ) / ( 5 * 3 ) + ( 2 * 5 ) / ( 3 * 5 )
    6 / 15 + 10 / 15
    ( 6 + 10 ) / 15
    16 / 15
    

    Le rendu latex permet ensuite d'être directement compilé.

Ce module a pour but d'être un outil pour faciliter la construction d'exercices et leurs correction. Il a pour but d'être le plus simple possible d'utilisation afin que tout le monde avec un minimum de connaissance en programmation puisse créer librement des exercices.