Mapytex/README.md

88 lines
2.9 KiB
Markdown
Raw Normal View History

2017-04-17 13:48:52 +00:00
Mapytex
=======
2016-08-17 11:43:31 +00:00
2017-04-17 13:48:52 +00:00
Mapytex est un module python qui permet la manipulation d'expressions
2016-08-17 11:43:31 +00:00
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.
2016-08-17 11:50:27 +00:00
``` python
2017-04-17 13:48:52 +00:00
>>> from mapytex import Expression
2016-08-17 11:46:18 +00:00
>>> 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 }
```
2016-08-17 11:43:31 +00:00
- *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.
2016-08-17 11:53:17 +00:00
``` python
2017-04-17 13:48:52 +00:00
>>> from mapytex import Expression
2016-08-17 11:53:17 +00:00
>>> ajout_fraction = Expression.random("{a} + {b} / {c}")
>>> print(ajout_fraction)
2 + \frac{ 3 }{ 5 }
```
2016-08-17 11:43:31 +00:00
2017-04-17 13:48:52 +00:00
- *Gérer différents type de données*: Pour le moment, Mapytex est
2016-08-17 11:43:31 +00:00
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.
2016-08-17 11:53:17 +00:00
``` python
2017-04-17 13:48:52 +00:00
>>> from mapytex import Fraction
2016-08-17 11:53:17 +00:00
>>> une_fraction = Fraction(1,2)
>>> print(une_fraction)
1 / 2
2017-04-17 13:48:52 +00:00
>>> from mapytex import Polynom
2016-08-17 11:53:17 +00:00
>>> un_polynom = Polynom([1,2,3])
>>> print(un_polynom)
3 x^{ 2 } + 2 x + 1
```
2016-08-17 11:43:31 +00:00
- *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.
2016-08-17 11:53:17 +00:00
``` python
2017-04-17 13:48:52 +00:00
>>> from mapytex import Expression
2016-08-17 11:53:17 +00:00
>>> 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 }
2017-04-17 13:48:52 +00:00
>>> from mapytex import txt
2016-08-17 11:53:17 +00:00
>>> 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é.
2016-08-17 11:43:31 +00:00
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.