Commit 8d73596b by Jérôme Ortais

### Modification de la classe Fractions et adaptation du code à cette

```nouvelle classe.
Amélioration du code de ex.troisiemes.affine pour qu'il utilise
pleinement les classes Fractions et polynomesCollege```
parent fe62fcaf
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
 ... ... @@ -88,7 +88,7 @@ :rtype: integer """ while b: a, b = b, a%b a, b = b, a % b return a
[docs]def ppcm(a, b): ... ... @@ -105,7 +105,7 @@ :rtype: integer """ return a*b/pgcd(a, b) return a * b / pgcd(a, b)
[docs]def premier(n): """**premier**\ (*n*) ... ... @@ -121,8 +121,8 @@ :rtype: boolean """ return not [x for x in xrange(2,int(math.sqrt(n)) + 1) if n%x == 0] return not [x for x in xrange(2, int(math.sqrt(n)) + 1) if n % x == 0]
[docs]def eratosthene(n): """**eratosthene**\ (*n*) ... ... @@ -158,12 +158,12 @@ :rtype: list """ premiers = [] candidats = xrange(2,n+1) candidats = xrange(2, n + 1) candidat = 2 while not premiers and candidat in candidats: if n%candidat == 0 and premier(candidat): if n % candidat == 0 and premier(candidat): premiers.append(candidat) premiers = premiers + factor(n/candidat) premiers = premiers + factor(n / candidat) candidat += 1 return premiers ... ... @@ -184,17 +184,16 @@ :rtype: tuple """ primes = [] temp = n etapes = [] primes_etapes = [] limite=int(math.sqrt(n))+1 limite = int(math.sqrt(n)) + 1 candidate = 2 while (candidate < limite): if n % candidate == 0: primes.append(candidate) primes_etapes.append(str(candidate)) n = n / candidate if n == 1: if n == 1: break primes_etapes.append(str(n)) etapes.append(primes_etapes) ... ... @@ -257,17 +256,17 @@ :rtype: integer """ if round(math.sqrt(n), 0)==math.sqrt(n): if round(math.sqrt(n), 0) == math.sqrt(n): return 1 elif n<=0: elif n <= 0: return n else: primes = factorise(n)[0] q = {} for element in primes: if (primes.count(element) % 2 == 1): q[element]=1 ncar=1 q[element] = 1 ncar = 1 for element in q.iterkeys(): ncar *= element return ncar ... ... @@ -288,13 +287,13 @@ :rtype: integer """ if k > n//2: k = n-k if k > n // 2: k = n - k x = 1 y = 1 i = n-k+1 i = n - k + 1 while i <= n: x = (x*i)//y x = (x * i) // y y += 1 i += 1 return x ... ... @@ -343,16 +342,16 @@ # A supprimer dès que quatriemes/developpements.py aura été corrigé #---------------------------------------------------------------------
[docs]def ecrit_tex(file, formule, cadre=None, thenocalcul='\\thenocalcul = ',
[docs]def ecrit_tex(fichier, formule, cadre=None, thenocalcul='\\thenocalcul = ', tabs=1): """**ecrit_tex**\ (*n*) **TODO :** À supprimer dès que quatriemes/developpements.py aura été corrigé Écrit `formule` dans `file`. Écrit `formule` dans `fichier`. :param file: Fichier dans lequel écrire :type file: I/O :param fichier: Fichier dans lequel écrire :type fichier: I/O :param formule: formule à insérer :type formule: string :param cadre: faut-il entourer la formule ? ... ... @@ -362,14 +361,14 @@ :param tabs: combien de tabulation insérer pour l'indentation du fichier ? :type tabs: integer :rtype: file :rtype: fichier """ if formule != '': if cadre == None or not cadre: file.write((u' \\[ %s%s \\] \n') % (thenocalcul, formule)) fichier.write((u' \\[ %s%s \\] \n') % (thenocalcul, formule)) else: file.write((u' \\[ \\boxed{%s%s} \\] \n') % (thenocalcul, formule))
fichier.write((u' \\[ \\boxed{%s%s} \\] \n') % (thenocalcul, formule))
... ...
 ... ... @@ -86,7 +86,7 @@ :rtype: float """ return alpha*math.pi/180 return alpha * math.pi / 180
[docs]def degres(alpha): """**radians**\ (*alpha*) ... ... @@ -103,7 +103,7 @@ :rtype: float """ return alpha*180/math.pi
return alpha * 180 / math.pi ... ...
This diff is collapsed.
No preview for this file type
This diff is collapsed.
 ... ... @@ -61,17 +61,14 @@ permet de faire des calculs détaillés sur les polynômes.

class pyromaths.classes.PolynomesCollege.Polynome(monomes, var=None)[source]
Cette classe crée la notion de polynômes.
>>> from pyromaths.classes.PolynomesCollege import Polynome

Cette classe crée la notion de polynômes.

>>> from pyromaths.classes.PolynomesCollege import Polynome
>>> Polynome([[2,2],[3,1],[4,0]], 'z')
Polynome([[2, 2], [3, 1], [4, 0]], "z")
>>> Polynome("2y^2+3y+4")
Polynome([[2.0, 2], [3.0, 1], [4.0, 0]], "y")

Les variables e, i, j, l, o, O sont interdites pour des raisons de lisibilité (l, o, O) ou parce qu’elles sont utilisées comme constantes (e, i, j).

... ... @@ -182,14 +179,18 @@ cette fonction ?Vérifier si elle est utilisée.

__init__(monomes, var=None)[source]

Crée un polynôme. Si var == None alors la variable est x. >>> from pyromaths.classes.PolynomesCollege import Polynome >>> Polynome([[2,2],[3,1],[4,0]], ‘z’) Polynome([[2, 2], [3, 1], [4, 0]], “z”) >>> Polynome(“2y^2+3y+4”) Polynome([[2.0, 2], [3.0, 1], [4.0, 0]], “y”) >>> Polynome([[1, 1], [2, 2]]) Polynome([[1, 1], [2, 2]], “x”)

Crée un polynôme. Si var == None alors la variable est x.

>>> from pyromaths.classes.PolynomesCollege import Polynome
>>> Polynome([[2,2],[3,1],[4,0]], 'z')
Polynome([[2, 2], [3, 1], [4, 0]], "z")
>>> Polynome("2y^2+3y+4")
Polynome([[2.0, 2], [3.0, 1], [4.0, 0]], "y")
>>> Polynome([[1, 1], [2, 2]])
Polynome([[1, 1], [2, 2]], "x")
>>> Polynome("Fraction(1,7)x^2-Fraction(3,8)x-1")
Polynome([[Fraction(1, 7), 2], [Fraction(-3, 8), 1], [-1, 0]], "x")

... ... @@ -450,9 +451,10 @@ de rang 1, on effectue toutes les multiplications en une fois
Renvoie une version LaTeX du polynôme.
>>> from pyromaths.classes.PolynomesCollege import Polynome
>>> p=Polynome([[2,2],[3,1],[4,0]], 'z')
>>> str(p)
>>> str(Polynome([[2,2],[3,1],[4,0]], 'z'))
'2\,z^{2}+3\,z+4'
>>> str(Polynome("y^2-Fraction(3,2)y-1"))
'y^{2}+\dfrac{-3}{2}\,y-1'

... ... @@ -496,6 +498,31 @@ de rang 1, on effectue toutes les multiplications en une fois
evaluate(valeur)[source]

evaluate(object,*valeur*)

Retourne l’expression numérique du polynôme pour sa variable égale à valeur.

>>> from pyromaths.classes.PolynomesCollege import Polynome
>>> Polynome.evaluate(Polynome("4+x-x^2+x^3-2x^5"), -5)
'4-5-(-5)**2+(-5)**3-2*(-5)**5'

Param :valeur
Type :integer, float or Fraction
Type retourné:string
ordonne()[source]
... ...
This diff is collapsed.