In [4]:
import numpy as np
import pandas as pd
import math
import cmath
from scipy.optimize import root
import matplotlib.pyplot as plt
%matplotlib inline
In [5]:
table = ("Tableact6bis.txt")
table
Out[5]:
In [6]:
class Polynome:
def __init__(self,table):
self.table=table
def Lire(self):
self.abc = pd.read_csv(self.table,sep=" ")
coef = self.abc.values
self.a = coef[:,0]
self.b = coef[:,1]
self.c = coef[:,2]
return self.abc
def pair1(self):
print(self.a)
self.liste_pair=list()
self.liste_impair = list()
for nombre in self.a:
if nombre%2 == 0:
self.liste_pair.append(nombre)
else:
self.liste_impair.append(nombre)
print ("Liste des pairs : {0}".format((self.liste_pair)))
print ("Liste des impairs : {0}".format((self.liste_impair)))
self.ap = self.liste_pair
self.aip =np.asarray(self.liste_impair)
def pair2(self):
print(self.b)
self.liste_pair2=list()
self.liste_impair2 = list()
for nombre in self.b:
if nombre%2 == 0:
self.liste_pair2.append(nombre)
else:
self.liste_impair2.append(nombre)
print ("Liste des pairs : {0}".format((self.liste_pair2)))
print ("Liste des impairs : {0}".format((self.liste_impair2)))
self.bp = self.liste_pair2
self.bip =np.asarray(self.liste_impair2)
def pair3(self):
print(self.c)
self.liste_pair3=list()
self.liste_impair3 = list()
for nombre in self.c:
if nombre%2 == 0:
self.liste_pair3.append(nombre)
else:
self.liste_impair3.append(nombre)
print ("Liste des pairs : {0}".format((self.liste_pair3)))
print ("Liste des impairs : {0}".format((self.liste_impair3)))
self.cp = np.asarray(self.liste_pair3)
self.cip =np.asarray(self.liste_impair3)
def calcul(self):
i = 0
self.x1 = np.zeros(1)
self.x2 = np.zeros(1)
self.x0 = np.zeros(1)
self.x11 =np.zeros(1)
self.x12 =np.zeros(1)
for self.ap2,self.bp2,self.cp2 in zip(self.ap,self.bp,self.cp):
print("ap : {0},bp : {1} et cp : {2}".format(self.ap2,self.bp2,self.cp2))
self.Delta = (self.bp2**2)-(4 * self.ap2 * self.cp2)
print ("Delta = {}".format(self.Delta))
if self.Delta < 0:
self.x11 = (-self.bp2-cmath.sqrt(self.Delta))/(2*self.ap2)
self.x12 = (-self.bp2-cmath.sqrt(self.Delta))/(2*self.ap2)
print ("L'equation a deux solutions : x1 = {0} et x2 ={1}".format(self.x11,self.x12))
elif self.Delta == 0:
self.x0 = (-self.bp2/(2*self.ap2))
print ("L'equation a une solution: x = {}".format(self.x0))
else:
self.x1 = (-self.bp2+math.sqrt(self.Delta))/(2*self.ap2)
self.x2 = (-self.bp2-math.sqrt(self.Delta))/(2*self.ap2)
print ("L'equation a deux solutions : x1 = {0} et x2 ={1}".format(self.x1,self.x2))
def graphique2(self):
fig,axes=plt.subplots(2,2)
x = np.linspace(-5,5,100)
g = (self.ap2*x**2)+self.bp2*x+self.cp2
for self.ap2,self.bp2,self.cp2 in zip(self.ap,self.bp,self.cp):
axes[0,0].plot(x,g)
axes[1,1].plot(x,g)
axes[0,1].plot(x,g)
axes[1,0].plot(x,g)
In [7]:
p = Polynome("Tableact6bis.txt")
p
Out[7]:
In [8]:
p.Lire()
Out[8]:
In [9]:
p.pair1()
In [10]:
p.pair2()
In [11]:
p.pair3()
In [12]:
p.calcul()
In [13]:
p.graphique2()
In [ ]:
In [ ]: