You are on page 1of 3

TP 3 Solutions Algorithmique et Structure de données avancées

Bouacha Ismail

November 4, 2019

1 Exercices

Listing 1: Solution de la question 1


maListe = [ ]

print ( ” R e m p l i s s a g e de l a l i s t e ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break
r e s = True
f o r i in range ( 1 , len ( maListe ) ) :
i f maListe [ i ] != maListe [ i −1] + 1 :
res = False
break

i f r e s == True :
print ( ” l e s e l e m e n t s de l a l i s t e s o n t c o n s e c u t i f s ” )
else :
print ( ” l e s e l e m e n t s de l a l i s t e ne s o n t pas c o n s e c u t i f s ” )

Listing 2: Solution de la question 2


def posMax ( l i s t e ) :
indexMax = 0
f o r i in range ( 1 , len ( l i s t e ) ) :
i f l i s t e [ i ] > l i s t e [ indexMax ] :
indexMax = i
return indexMax + 1
maListe = [ ]

print ( ” R e m p l i s s a g e de l a l i s t e ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break
print ( maListe )

print ( ”Le e s t dans l a p o s i t i o n ”+ s t r ( posMax ( maListe ) ) )

1
École Supérieure aux Technologies Industrielles Annaba 2019/2020

Listing 3: Solution de la question 3


def sommeDistances ( l i s t e ) :
s = 0
f o r i in range ( 1 , len ( l i s t e ) ) :
d i f f = l i s t e [ i ] − l i s t e [ i − 1]
print ( d i f f )
s += d i f f
return s
maListe = [ ]

print ( ” R e m p l i s s a g e de l a l i s t e ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break
print ( maListe )

print ( ”Le r e s u l t a t e s t : ”+ s t r ( sommeDistances ( maListe ) ) )

Listing 4: Solution de la question 4


def f u s i o n n e r ( l i s t e 1 , l i s t e 2 ):
res = [ ]
f o r i in range ( len ( l i s t e 1 )):
i f l i s t e 1 [ i ] not in res :
r e s . append ( l i s t e 1 [ i ])

f o r i in range ( len ( l i s t e 2 ) ) :
i f l i s t e 2 [ i ] not in r e s :
r e s . append ( l i s t e 2 [ i ] )

return r e s
maListe1 = [ ]
maListe2 = [ ]
fusion = [ ]
print ( ” R e m p l i s s a g e de l a l i s t e 1 ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe1 . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break

print ( ” R e m p l i s s a g e de l a l i s t e 2 ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe2 . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break

f u s i o n = f u s i o n n e r ( maListe1 , maListe2 )
print ( f u s i o n )

Dr. Bouacha Ismail Page 2/3 i.bouacha@esti-annaba.dz


École Supérieure aux Technologies Industrielles Annaba 2019/2020

Listing 5: Solution de la question 5


def supOcc ( l i s t e , nb ) :
i f nb in l i s t e :
pos = 0
while l i s t e [ pos ] != nb :
pos = pos + 1

pos += 1
while pos < len ( l i s t e ) :
i f l i s t e [ pos ] == nb :
del ( l i s t e [ pos ] )
continue
pos += 1

maListe = [ ]

print ( ” R e m p l i s s a g e de l a l i s t e ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break

nb = i n t ( input ( ” Donnez une v a l e u r : ” ) )

supOcc ( maListe , nb )
print ( maListe )

Listing 6: Solution de la question 6


def c o n s e c u t i f s ( l i s t e , pos ) :
i f pos == len ( l i s t e ) :
return True
e l i f l i s t e [ pos ] != l i s t e [ pos −1] +1:
return F a l s e
else :
return c o n s e c u t i f s ( l i s t e , pos +1)

maListe = [ ]

print ( ” R e m p l i s s a g e de l a l i s t e ” )
while True :
v = i n t ( input ( ” Donnez une v a l e u r : ” ) )
maListe . append ( v )

r e p = input ( ” v o u l e z vous v o n t i n u e r ( y/n ) ? ” )


i f r e p == ”n” :
break
r e s = c o n s e c u t i f s ( maListe , 1 )

i f r e s == True :
print ( ” l e s e l e m e n t s de l a l i s t e s o n t c o n s e c u t i f s ” )
else :
print ( ” l e s e l e m e n t s de l a l i s t e ne s o n t pas c o n s e c u t i f s ” )

Dr. Bouacha Ismail Page 3/3 i.bouacha@esti-annaba.dz

You might also like