Bonjour, j'ai un dm avec python pour calculer une longueur de courbe et j'ai du mal, pas beaucoup de cours avec le COVID
Dans un repère orthonormé, on considère la courbe (Γ) suivante, insérée dans le carré OABC.(Γ) représente la fonction x↦(x−1) 2 sur [0;1].
On place un point M d'abscisse x M sur (Γ).
Question préliminaire :
Comment peut-on évaluer la longueur L de la courbe (Γ)?
on nous donne le programme python suivant:
from math import sqrt
def LongueurCourbe(n):
p = 1/n
xA = 0
xB = xA + p
L = 0
for i in range(1, n+1):
yA = (xA - 1)**2
yB = (xB - 1)**2
L = L + ...
xA = xA + p
xB = xB + p
return L
et on nous pose les questions:
Que représentent la variable n, la variable L et la variable p?
2. Expliquer l'instruction de la ligne 6.
3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).
4. Tester l'algorithme pour n=4,n=10,n=100 et n=1000.
5. En déduire une valeur approchée à 10 exp−2
près par excès de la longueur de la ligne brisée.
Bonjour,
1. quel est ton niveau ? iut (ton profil) ou seconde (ton post).....
2. ton énoncé parle d'une courbe "suivante" , poste la !
3. dis ce que tu as fait.
Bonjour,
Remarquer tout de même que l'équation de la courbe est donnée
... mais sans aucun rapport avec "le carré OABC" qui, lui, n'est pas défini !
pour joindre une figure (uniquement des figures) :
mathafou,
c'est bien parce que OABC n'est pas défini que j'ai demandé la figure.
De plus, on ne voit pas ce que le point M vient faire. Il n'est pas mentionné dans la suite de l'énoncé.
OK, merci pour la courbe.
Precise ton niveau,
dis ce que tu as fait,
je t'aiderai ensuite volontiers.
Indique ce que tu ne comprends pas.
Pour l'instruction L = L + ... à compléter , on pourrait calculer à chaque tour de la boucle, l'hypoténuse d'un triangle rectangle connaissant les deux autres cotés
merci pseudodk de ta participation, mais j'espérais que ce soit caroleti qui réponde.
Il doit mettre à jour son niveau dans son profil ... tout comme toi, d'ailleurs, je crois.
.. et s'investir sur son sujet.
Avant de compléter le programme, il faudra que caroleti dise "Comment peut-on évaluer la longueur L de la courbe (Γ)?".
(on programme une fonction après avoir précisé ce qu'elle doit faire).
en fait, je suis en seconde mais j'utilise le compte de ma mère qui a fait IUT il y a longtemps et n'a pas appris Python
pour la question 1
Que représentent la variable n, la variable L et la variable p?
n représente variable
p l'inverse de n
L longueur de la courbe
2. Expliquer l'instruction de la ligne 6.
xB=xA+p
l'abcisse du point B est égal à l'abcisse A + p (1/n)
3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).
L=L +p
4. Tester l'algorithme pour n=4,n=10,n=100 et n=1000.
pour n=4 ?
5. En déduire une valeur approchée à 10 exp−2
près par excès de la longueur de la ligne brisée.
?[rouge][/rouge]
Je ne sais pas et on a eu peu de cours, j'ai l'impression d'avoir tout faux
il faut d'abord que tu répondes à la question
"Comment peut-on évaluer la longueur L de la courbe (Γ)?".
sur ta figure, avec un point M sur la courbe, tu vois deux segments de droite [AM] et [CM].
la somme des longueurs de [AM] et [CM] approche la longueur de la courbe, n'est ce pas ?
mais si tu plaçais deux points M et N, tu aurais 3 segments, et leur somme serait un peu plus proche de la longueur de la courbe..
et si tu avais 10 segments, ce serait encore plus proche..
tu es d'accord avec ça ?
à présent, à ton avis, que représente la variable n ?
??
ben non, n est le nombre de segments.
L c'est la longueur calculée de la courbe.
et 1/n , c'est le pas : OA= 1, tu divises OA par le nombre de segments, pour trouver le pas.
2. Expliquer l'instruction de la ligne 6. xB=xA+p
l'abcisse du point B est égal à l'abcisse A + p : oui, si on a divisé OA en n parties de longueur p, pour chaque segment AB, xB-xA= p (le pas).
3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).
L=L+p est faux.
au départ L=0.
tu calcules la longueur d'un segment AB, et tu l'ajoutes à L.
L = L + longueur du segment AB.
comment fais tu pour calculer la longueur d'un segment dont tu connais les coordonnées ?
AB=racine( (p **2+(xB-1)**2-(xA-1)**2)=racine (p**2+xB**2-1-xA**2+1)=racine(xB+xA)=racine(-p)=racine(-1/n)
Bonjour merci mais comment dois je faire pour présenter mes réponses sur feuille pour questions 4 et 5
En attendant que Leile reprenne la main....
1) Tu n'as pas explicitement répondu à la question 3...
Pourtant tu as retrouvé la formule qui donne la distance entre 2 points (par exemple A et B) dont on connait les coordonnées.
Si A(xA;yA) et B(xB;yB) alors
AB=
Alors comment vas tu compléter la ligne 11 ?
2) Pour la question 4, il te faut passer à l'action : mettre ton script dans l'éditeur Python que tu as sur ton ordinateur (EduPython ??). Puis tester ton script (programme) en prenant n = 4, puis 10...
NB : les 3 figures que je t'ai envoyées hier soir on été faites avec GEOGEBRA . Elles te montrent comment en prenant un nombre n de segments de plus en plus grand, on construit une ligne brisée qui "colle" de plus en plus près à la courbe que l'on veut mesurer. (sauf erreur involontaire de saisie, les figures te donnent les... bonnes réponses pour n=2, n=4 et n=10 : tu peux vérifier ce que tu vas obtenir avec Python).
si question 3:
L = L + \sqrt{(x_B-x_A)^2+(y_B-y_A)^2}
Pour la question 4 : comment je peux tester en écrivant sur feuille?,
je note les résultats? [rouge]pour n=4,n=10 .... Je ne vais marqué tous les résultats.
ou je marque test OK[/rouge]
Et pour la question5: En déduire une valeur approchée à 10 exp−2
près par excès de la longueur de la ligne brisée.
Je donne quoi?
dans l'énoncé original, on nous demande de faire avec Python et avec Geogebra.
là, j'ai demandé de l'aide avec Python , je n'ai pas encore regardé avec Geogebra
question 3: OUI, c'est le bon code
L = L + [ tex] \sqrt{(x_B-x_A)^2+(y_B-y_A)^2}[ /tex]
Ta formule Latex ne s'affichait pas bien car tu ne l'avais pas écrite entre les balises. Pour mettre les balises, tu sélectionnes la formule Latex puis tu actives dans la barre d'outils sous la fenêtre du message, l'outil Ltx (celui de gauche) qui positionne les 2 balises. Pour voir l'effet produit, il faut passer en mode Aperçu (juste à coté du bouton POSTER)
Pour la question 4, il te faut passer en Python et faire tourner ton script recopié dans l'éditeur....
As tu fait cela ? pour n=4, qu'obtiens tu comme réponse ?
Bonjour ZEDMAT,
merci pour ces figures sous Goegebra.
J'ai un imprévu aujourd'hui : peux tu garder la main ? Merci !
Bonne journée à tous.
je suis en train de retélécharger Python, car celui donné sur le PC du lycée à planté.
et comment je fais pour répondre à la question 4, je donne juste le résultat.
En fait mon soucis est la présentation car on doit répondre sur feuille papier et pas d'imprimante
Bonjour,
Q4, on te demande de recopier les quatre valeurs que donnera ton programme Python
pour n = 4, pour n=10, pour n=100 et n=1000.
pour cela il faut faire tourner le programme traduit en Python, sur Python.
( et , ça ne s'écrit pas comme ça en Python)
question suivante : quel est l'écart entre ces valeurs ?
@ Leile
Bien volontiers. Bonne journée.
@ caroleti
oui edupython avec Pyscripter
pour Geogebra:
Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :
Fonction((x-1)**2,0,1)
2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.
g = 0.79
h = 0.66
b. Créer un nombre égal à CM+MA.
k = g + h
c. Déplacer le point M et donner une première estimation de la longueur L.
3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).
4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
près par excès de la longueur de la ligne brisée.
from math import sqrt
def LongueurCourbe(n):
p = 1/n
xA = 0
xB = xA + p
L = 0
for i in range(1, n+1):
yA = (xA - 1)**2
yB = (xB - 1)**2
L = L + sqrt((xB-xA)**2+(yB-yA)**2)
xA = xA + p
xB = xB + p
return L
j'ai écris le programme je n'arrive pas à faire tourner la machine pour n=4 ....
en l'absence de ZEDMAT
as tu bien lancé l'exécution (flèche verte)
que dit il ? normalement :
*** Console de processus distant Réinitialisée ***
>>>
as tu bien ensuite tapé dans la console la commande appelant la fonction
>>> LongueurCourbe(4)
(résultat ici)
du coup je teste pour les autres valeurs de n
et pour la question 5
je réponds avec la valeur obtenue pour 100 et je marque résultat = 1,48?
parfait.
dans le cadre de l'exo la réponse est correcte et suffit
tu peux comparer avec LongueurCourbe(1000) par exemple pour conforter que ça ne va vraisemblablement pas dépasser cette valeur.
(on ne serait pas embêté s'ils avaient demandé une valeur par défaut !!)
>>> LongueurCourbe(1000)
1.4789427830089976
En déduire une valeur approchée à 10 exp−2
près par excès de la longueur de la ligne brisée.
je répond donc L= 1.48
Merci mathafou d'avoir pris le relai .
Il fait si beau et la nature est si belle !!
Je suis curieux de voir ce que l'énoncé demande de faire avec GEOGEBRA
l'énoncé pour GEOGEBRA est le suivant:
pour Geogebra:
Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :
Fonction((x-1)**2,0,1)
2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.
g = 0.79
h = 0.66
b. Créer un nombre égal à CM+MA.
k = g + h
c. Déplacer le point M et donner une première estimation de la longueur L.
3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).
4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
près par excès de la longueur de la ligne brisée.
oui on avait lu
fais le, tout est dit pas à pas explicitement ...
et dis précisément ce qui te bloque
Merci pour cet énoncé.
C'est à peu près ce que j'avais fait
Si tu as encore besoin d'aide, on est là.
Sinon bonne continuation et bon courage
salut,
Simplifier(Longueur((x-1)^2,0,1))
dans une ligne de commande du module Calcul formel.
hors sujet tant que l'exo n'est pas terminé.
caroleti : ne tiens pas compte de "ça"
ça ne fait pas partie de l'exo
Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :
Fonction((x-1)**2,0,1)
réponse: p(x) = Si(0<x<1;(x-1)**2)[/code] il faut lire < ou egal je n'ai pas le symbole
2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.
g = 0.79
g=Point(p)
(0.79,0.04)
h = 0.66
h = Point(p)
(0.66,0.12)
Jene sais pas si c'est la réponse qu'on attend, j'ai appuyer sr lecture et attendu que le point M descende à la valeur 0.79 et 0.66, je n'ai pas compris la fenêtre algèbre?
b. Créer un nombre égal à CM+MA.
k = g + h
cela fait un vecteur avec ses corodonnées (1.45 en dessous 0.16)
je ne crois pas que c'est bon à mon avis je ne sais pas comment faire la question 2 avec g et h
c. Déplacer le point M et donner une première estimation de la longueur L.
3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).
4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
près par excès de la longueur de la ligne brisée.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :