BTS−SIO:TD 11 Une correction 2015-2016
I De quoi s’agit-il ?
Je dispose d’un spaghetti de 20 cm. On le découpe en trois morceaux et on essaie de construire avec les trois bouts obtenus un triangle.
⇒?
L1 L2 L3
L1 L2
L3
Un outil mathématique
Trois longueurs étant données, il est possible de construire un triangle ayant pour côtés les trois longueurs si la plus grande est inférieure ou égale à la somme des deux autres.
• • •
II Simulation
II.1 Les fonctions demandées
• DecoupeEn3(ls)de paramètre la longueur du spaghetti ;
• MaxEnPremier(L)de paramètre une liste de 3 nombres réels ; (VOIR détails des fonctions TD11)
• TriangleOuPas(L)de paramètre une liste de trois nombres réels ;
Une
orretion
## Fonction DecoupeEn3(...)
#
from random import*
#
def DecoupeEn(ls) : a=ls*random() b=ls*random() if a<b :
L1=a L2=b-a else :
L1=b L2=a-b L3=ls-(L1+L2) cotes=[L1,L2,L3]
return cotes
## Fin fonction
## Fonction MaxEnPremier(...)
#
def MaxEnPremier(Li) : maxi=Li[0]
rang=0
for i in range(1,3) : if maxi<Li[i] :
maxi=Li[i]
rang=i tp=Li[0]
Li[0]=Li[rang]
Li[rang]=tp return Li
## Fin fonction
## Fonction TriangleOuPas(...)
#
def TriangleOuPas(Q) : Lo=MaxEnPremier(Q) if Lo[0]<=Lo[1]+Lo[2] :
return True else :
return False
## Fin fonction
n=int(input("Nombre de spaghettis découpés : ")) t=0
for i inrange(n) : A=DecoupeEn3(20)
if TriangleOuPas(A)==True : t=t+1
print("La proportion de spaghettis permettant la construction d’un triangle est : ",t/n)
II.2 Résultat
Si l’on répète plusierus fois, un « grand » nombre de découpages, la proportion de triangles constructibles fluctue autour de 0,25.
• • •
My Maths Space 1 sur 1