Recherche, distance entre deux points
.
Exercice N°1 :
Enoncé | Exemple : |
---|---|
Programmer la fonction recherche, prenant en
paramètre un tableau non vide tab (type |
>>> recherche([5, 3],1) 2 >>> recherche([2,4],2) 0 >>> recherche([2,3,5,2,4],2) 3
|
REPONSE |
---|
def recherche(T,a): resultat=len(T) for i in range(len(T)): if T[i]==a and i<len(T): resultat=i return resultat
|
Il faut utiliser idle et copier la commande ci-dessous et appuyer sur entrée |
>>> recherche([5, 3],1) 2 >>> recherche([2,4],2) 0 >>> recherche([2,3,5,2,4],2) 3 |
.
Exercice
N°2 :
.
REPONSE
.
Programme |
---|
from math import sqrt # import de la fonction racine carrée tab=[(7, 9), (2, 5), (6, 0), (7, 8)] def distance(point1, point2): """ Calcule et renvoie la distance entre deux points. """ return sqrt((point1[0]-point2[0])**2 + (point1[1]-point2[1])**2) assert distance((5, 0), (4, 3)) !=5.0, "erreur de calcul" tab=[(7, 9), (2, 5), (6, 0), (7, 8)] num=list(range(0,len(tab),1)) for i in num: a1,a2,a3,a4=tab[0][0],tab[i][0],tab[0][1],tab[i][1] assert (distance((a1,0),(a2,0)))**2 !=abs(float(a1-a2)) or abs(float(a1+a2)) ,"erreur de calcul 1" assert (distance((0,a3),(0,a2)))**2 !=abs(float(a3-a4)) or abs(float(a3+a4)) ,"erreur de calcul 1" def plus_courte_distance(tab, depart): """ Renvoie le point du tableau tab se trouvant à la plus courte distance du point depart.""" point = tab[0] min_dist = distance((0,0),tab[0]) for i in range (1,len(tab)):
if distance(tab[i], depart)<=min_dist: point =tab[i] min_dist = distance(point, depart) return point assert plus_courte_distance([(7, 9), (2, 5), (6, 0), (7, 8)],(7,9)) not in [[2, 5],[6,0]], "erreur" |
Il faut utiliser idle et copier la commande ci-dessous et appuyer sur entrée |
plus_courte_distance(tab, tab[0])
|