File: ecrit_2006.tex, line 28
l = [ 0,1,2,3,4,6,5,8,9,10] res = True for i in range (1,len (l)) : if l[i-1] > l[i] : res = False
File: ecrit_2006.tex, line 58
def somme (n) : return sum ( [ int (c) for c in str (n) ] )
File: ecrit_2006.tex, line 66
def somme (n) : l = str (n) # il ne faut pas confondre l=str (n) avec l = "n" s = 0 for c in l : # ou for i in range (0, len (c)) : s += int (c) # ou s += int (c [i]) return s
File: ecrit_2006.tex, line 78
def somme (n) : s = 0 while n > 0 : s += n % 10 n /= 10 # ici, c'est une division entière, si vous n'êtes pas sûr : # n = int (n/10) return n
File: ecrit_2006.tex, line 91
def somme (n) : if n <= 0 : return 0 else : return (n % 10) + somme ( n / 10 )
File: ecrit_2006.tex, line 100
import math def somme (n) : k = int (math.log (n) / math.log (10) + 1) s = 0 for i in range (1,k+1) : d = 10 ** i # ou encore d = int (exp ( k * log (10) ) ) c = n / d e = n - c * d f = e / (d / 10) s += f return s
File: ecrit_2006.tex, line 128
n = 0 for i in range (0,10) : if (n + i) % 3 == 0 : n += 1
File: ecrit_2006.tex, line 177
def grenouille (n) : if n == 2 : return 2 elif n == 1 : return 1 else : return grenouille (n-1) + grenouille (n-2) print grenouille (13)
File: ecrit_2006.tex, line 191
def grenouille (fin, n = 2, u1 = 1, u2 = 2) : if fin == 1 : return u1 elif fin == 2 : return u2 elif n == fin : return u2 u = u1 + u2 return grenouille (fin, n+1, u2, u) print grenouille (13)
File: ecrit_2006.tex, line 205
def grenouille (n) : if n == 1 : return 1 u1 = 1 u2 = 2 for i in range (3,n+1) : u = u1 + u2 # il est impossible de u1 = u2 # résumer ces trois lignes u2 = u # en deux return u2 print grenouille (13)
File: ecrit_2006.tex, line 222
def grenouille (n) : if n == 1 : return 1 u = [1,2] for i in range (2,n) : u.append (u [i-1] + u [i-2]) return u [n-1] print grenouille (12)
File: ecrit_2006.tex, line 236
def grenouille (n) : if n == 1 : return 1 u = range (0, n) # il ne faut pas oublier de créer le tableau # avec autant de cases que nécessaire # ici 13 u [0] = 1 u [1] = 2 for i in range (2,n) : u [i] = u [i-1] + u [i-2] return u [n-1] print grenouille (12)
File: ecrit_2006.tex, line 261
a = "abcdefghijklmnopqrstuvwxyz" print len (a) d = {} for i in range (0,len (a)) : d [ a [ i ] ] = i print d ["M"]
File: ecrit_2006.tex, line 274
examen.py:14: KeyError: 'M'
File: ecrit_2006.tex, line 288
a = "abcdefghijklmnopqrstuvwxyz" print len (a) d = {} for i in range (0,len (a)) : d [ a [ i ] ] = i print d ["m"] ###### ligne modifiée
File: ecrit_2006.tex, line 301
a = "abcdefghijklmnopqrstuvwxyz" a = a.upper () ####### ligne ajoutée print len (a) d = {} for i in range (0,len (a)) : d [ a [ i ] ] = i print d ["M"]
File: ecrit_2006.tex, line 324
def somme (tab) : l = tab[0] for i in range (1, len (tab)) : l += tab [i] return l ens = [[0,1],[2,3]] print somme ( ens ) # affiche [0,1,2,3] print ens # affiche [ [0,1,2,3], [2,3] ]
File: ecrit_2006.tex, line 345
import copy ###### ligne ajoutée def somme (tab) : l = copy.copy (tab[0]) ###### ligne modifiée for i in range (1, len (tab)) : l += tab [i] return l ens = [[0,1],[2,3]] print somme ( ens ) # affiche [0,1,2,3] print ens # affiche [ [0,1,2,3], [2,3] ]
File: ecrit_2006.tex, line 360
def somme (tab) : l = [] ###### ligne modifiée for i in range (0, len (tab)) : ###### ligne modifiée l += tab [i] return l ens = [[0,1],[2,3]] print somme ( ens ) # affiche [0,1,2,3] print ens # affiche [ [0,1,2,3], [2,3] ]
File: ecrit_2006.tex, line 382
li = range (0,10) sup = [0,9] for i in sup : del li [i] print li
File: ecrit_2006.tex, line 393
examen.py:44: IndexError: list assignment index out of range
File: ecrit_2006.tex, line 406
[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
File: ecrit_2006.tex, line 410
[ 1, 2, 3, 4, 5, 6, 7, 8, 9]
File: ecrit_2006.tex, line 416
li = range (0,10) sup = [9,0] ####### ligne modifiée for i in sup : del li [i] print li
File: ecrit_2006.tex, line 439
l = ["un", "deux", "trois", "quatre", "cinq"] for i in range (0,len (l)) : mi = i for j in range (i, len (l)) : if l[mi] < l [j] : mi = j e = l [i] l [mi] = l [i] l [i] = e print l
File: ecrit_2006.tex, line 455
['un', 'deux', 'deux', 'deux', 'cinq']
File: ecrit_2006.tex, line 470
l = ["un", "deux", "trois", "quatre", "cinq"] for i in range (0,len (l)) : mi = i for j in range (i, len (l)) : if l[mi] < l [j] : mi = j e = l [mi] ######## ligne modifiée l [mi] = l [i] l [i] = e print l
File: ecrit_2006.tex, line 499
def moyenne (tab) : s = 0.0 for x in tab : s += x return s / len (tab) def variance (tab) : s = 0.0 for x in tab : t = x - moyenne (tab) s += t * t return s / len (tab) l = [ 0,1,2, 2,3,1,3,0] print moyenne (l) print variance (l)
File: ecrit_2006.tex, line 529
def variance (tab) : s = 0.0 m = moyenne (tab) for x in tab : t = x - m s += t * t return s / len (tab)
File: ecrit_2006.tex, line 563
class carre : def __init__ (self, a) : self.a = a def surface (self) : return self.a ** 2 class rectangle (carre) : def __init__ (self, a,b) : carre.__init__(self,a) self.b = b def surface (self) : return self.a * self.b
File: ecrit_2006.tex, line 582
class rectangle : def __init__ (self, a,b) : self.a = a self.b = b def surface (self) : return self.a * self.b class carre (rectangle) : def __init__ (self, a) : rectangle.__init__ (self, a,a) def surface (self) : return self.a ** 2
File: ecrit_2006.tex, line 616
class carre : def __init__ (self, a) : self.a = a def surface (self) : return self.a ** 2 class rectangle (carre) : def __init__ (self, a,b) : carre.__init__(self,a) self.b = b def surface (self) : return self.a * self.b class losange (carre) : def __init__ (self, a,theta) : carre.__init__(self,a) self.theta = theta def surface (self) : return self.a * math.cos (self.theta) * self.a * math.sin (self.theta) * 2
File: ecrit_2006.tex, line 654
x = 1.0 for i in range (0,15) : x = x / 10 print i, "\t", 1.0 - x, "\t", x, "\t", x **(0.5)
File: ecrit_2006.tex, line 664
0 0.90000000000000002220 0.1 0.316227766017 1 0.98999999999999999112 0.01 0.1 2 0.99899999999999999911 0.001 0.0316227766017 3 0.99990000000000001101 0.0001 0.01 4 0.99999000000000004551 1e-05 0.00316227766017 5 0.99999899999999997124 1e-06 0.001 6 0.99999990000000005264 1e-07 0.000316227766017 7 0.99999998999999994975 1e-08 0.0001 8 0.99999999900000002828 1e-09 3.16227766017e-05 9 0.99999999989999999173 1e-10 1e-05 10 0.99999999998999999917 1e-11 3.16227766017e-06 11 0.99999999999900002212 1e-12 1e-06 12 0.99999999999989996891 1e-13 3.16227766017e-07 13 0.99999999999999000799 1e-14 1e-07 14 0.99999999999999900080 1e-15 3.16227766017e-08 15 0.99999999999999988898 1e-16 1e-08 16 1.00000000000000000000 1e-17 3.16227766017e-09 17 1.00000000000000000000 1e-18 1e-09 18 1.00000000000000000000 1e-19 3.16227766017e-10 19 1.00000000000000000000 1e-20 1e-10
File: ecrit_2006.tex, line 691
class matrice_carree_2 : def __init__ (self, a,b,c,d) : self.a, self.b, self.c, self.d = a,b,c,d def determinant (self) : return self.a * self.d - self.b * self.c m1 = matrice_carree_2 (1.0,1e-6,1e-6,1.0) m2 = matrice_carree_2 (1.0,1e-9,1e-9,1.0) print m1.determinant () print m2.determinant ()
File: ecrit_2006.tex, line 729
def valeurs_propres (self) : det = self.determinant () trace = self.a + self.d delta = trace ** 2 - 4 * det l1 = 0.5 * (trace - (delta ** (0.5)) ) l2 = 0.5 * (trace + (delta ** (0.5)) ) return l1,l2
File: ecrit_2006.tex, line 768
0.99999999999900002212 1.00000000000000000000
File: ecrit_2006.tex, line 777
l1 = 0.5 * (trace - ((trace ** 2 - 4 * det) ** (0.5)) ) l2 = 0.5 * (trace + ((trace ** 2 - 4 * det) ** (0.5)) )
File: ecrit_2006.tex, line 785
l1 = 1,000001 l2 = 0.99999899999999997124 # égale à 1 - 1e-6
File: ecrit_2006.tex, line 793
l1 = 1 l2 = 1
File: ecrit_2006.tex, line 801
l1 = 0.5 * (trace - ((trace ** 2 - 4 * det) ** (0.5)) ) = - det ** 0.5 = -1e-9 l2 = 0.5 * (trace + ((trace ** 2 - 4 * det) ** (0.5)) ) = det ** 0.5 = 1e-9
File: ecrit_2006.tex, line 809
l1 = 1-1e-9 = 0.99999999900000002828 l2 = 1+ 1e-9 = 1.000000001