Commit 313c8812 authored by Louis's avatar Louis

[exercice.InterpolationMatrices] Les coefficients a, b, c ne peuvent plus être...

[exercice.InterpolationMatrices] Les coefficients a, b, c ne peuvent plus être nuls (ou égaux à 0) ; peuvent être décimaux.

Ceci corrige un bug qui arrivait et qui faisaint qu'ils étaient parfois
égaux à 0 ou 1, ce qui :
- rendait l'exercice moins intéressant ;
- produisait des choses bizarres comme : f(x)=0x²-x+0
parent 385502a8
Pipeline #65319 passed with stage
in 42 seconds
......@@ -12,6 +12,8 @@ Version 18.7
* Création d'une commande `pyromaths tags` permettant d'afficher la liste de tous les tags.
* `generate` :
* Ajout d'une option --format, permettant de choisir le format de sortie (LaTeX, pdf, latexmkrc).
* Exercices
* InterpolationMatrices : Correction du choix des coefficients (ils étaint parfois égaux à 0, ce qui provoquait des écritures comme $f(x)=0x²+2x+0$ ; ils peuvent maintenant être décimaux (c'était normalement déjà possible, mais un bug interdisait ce cas).
Version 18.6
* Nouvel exercice niveau terminale ES (spécialité) : Déterminer l'état stable d'un graphe probabiliste (en utilisant un système d'équations).
......
......@@ -100,18 +100,19 @@ class InterpolationMatrices(Jinja2Exercise):
a = Decimal(random.choice([1, -1]) * random.randint(2, 19))
b = Decimal(random.choice([1, -1]) * random.randint(2, 19))
c = Decimal(random.choice([1, -1]) * random.randint(2, 19))
if random.randint(0, 1) == 1:
a = a / 10
b = b / 10
c = c / 10
if len(set([a, b, c])) != 3:
continue
if 10 in (abs(a), abs(b), abs(c)):
continue
if 1 in (abs(a), abs(b), abs(c)):
continue
break
if random.randint(0, 1) == 1:
a = a // 10
b = b // 10
c = c // 10
M = [
[X[0]**2, X[0], 1],
[X[1]**2, X[1], 1],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment