Bonjours, j'ai un dm de maths a faire dont jai bien reussi le debut mais je bloque niveau algorithmes.. J'ai beau chercher mais je ne comprend absolument rien au algorithmes --'
je ne peut pas poster l'algorithme car sa ne veut pas :/
on considere l'integrale K(de 0 a 1)= 1/(racine de (1+x²)dx et la fonction f definie sur [0;1] par f(x)= 1/ racine de (1+x²)
Variables : u est du type nombre
v est du type nombre
n est du type nombre
k est du type nombre
Debut algoritme:
u prend la valeur 0
v prend la valeur 0
Lire n
Pour k allant de 1 a n
Debut pour
u prend la valeur de u(1/n)*F1(k/n)
v prend la valeur de v+(1/n)*F1((k-1)/n)
Fin pour
Afficher u
Afficher v
Fin algorithme
Fonction numerique utiliser : F1(x)= 1/(racine de (1+x²)
1- Modifier cet algorithme pour quil demande une valeur de p entier naturel et quile affiche un encdrement de K d'amplitude inferieur a 10puissance(-p)
2- En deduire un encadrement de K d'ampltude inferrieur a 10puissance -2
3- Pour approcher K, on subdivise toujours [0.1] en n intervalle de meme longueurs, n entier naturel superieur ou egale a 2. Sur chaque intervalle [(k-1)/n ; k/n] ou k entier naturel compris entre 1 et n on approche la courbe de f par le segment de droite ayant pr extremiter A indice(k-1)= ((k-1)/n;f(k-1)/n) et A indice k=(k/n;f(k/n))
a_ illustrer ce proceder pour n = 5, Quelle approximation de K en deduit on ?
b_ Ecrire un algorithme qui demande une valeur de n et affiche l'approximation de K ainsi obtenu
4- Preciser l'avantage de cette algorithme par rapport à l'autre
Merci de bien vouloir m'aider..
Bonjour,
cet algorithme calcule les aires par des sommes d'aires de rectangles
ici avec n = 4
à la fin il a donc u < aire exacte < v
il n'y a pas de lien direct entre n (le nombre de rectangles) et l'erreur (la différence cumulée d'aire entre chaque rectangle)
à part ... calculer exactement l'intégrale elle même (formules sommatoires d'Euler etc, pas au programme)
donc la façon la plus simple d'obtenir ce qu'on veut est de faire refaire la calcul tout entier autrant de fois que nécessaire en augmentant la valeur de n jusqu'à ce que la différence v-u devienne < 10-P
quelque chose comme :
entrer P
err = 1 ( valeur arbitraire > 10-P pour que le "tant que" puisse s'éxécuter la 1ere fois)
n = 2 valeur initiale "grosière" = 2 rectangles
tant que err > 10-P
tout l'algo précédent sauf l'affichage et l'entrée de n
err = v - u
n = 2n doubler le nombre de rectangles
fin tant que
afficher u et v
Nota :
un tel algorithme n'est bien entendu pas du tout optimisé (de nombreux calculs sont effectués plusieurs fois) mais ce n'est pas ce qu'on demande "le meilleur algo". juste un algo qui marche.
C'est la réponse a la question 1 ?
Bisard.. on a jamais vu se genre d'algorithmes en cours et on nous le fait faire dans un DM..
Vous pouvez m'aider pr la suite aussi svp
il y a un nombre infini d'algorithmes que tu ne verras jamais en cours.
et n'importe lequel peut faire l'objet d'un DM
les algorithmes c'est comme faire des opérations
as tu réellement vue en cours cette opération précise
16328765 x 5914367 ?? aucune chance !
on t'a appris à faire des opérations, c'est à dire une méthode.
à apliquer à n'importe quelle opération.
pour les algorithmes c'est pareil
on apprend une méthode :
comment fonctionne une boucle "pour", une boucle "tant que", un test "si .. sinon" en général
et après avec ces briques là on fait ce qu'on veut
ici on calcule une valeur approchée d'intégrale.
question 2 c'est entrer l'algorithme modifié de la question 1 en machine (algobox ou calculette) et le faire tourner en saisissant la valeur 2 pour P
question 3 revient à remplacer l'encadrement par des rectangles par un calcul sur des trapèzes (faire un dessin !!!)
il est rigoureusement évident sur ce dessin que le résultat de ce nouvel algorithme donnera (u+v)/2
modifier l'algorithme d'origine est donc facile !
à toi de voir alors pour répondre à la question "quel avantage a cet algorithme"
il donne un résultat plus précis mais dont on est incapable d'évaluer la précision
alors que dans le précédent on pouvait : c'était la différence u - v.
aucune
elles correspondent toutes deux à l'algorithme initial
l'une (aire en rouge) montre comment est calculé u
l'autre (en bleu) comment est calculé v
dans le même algorithme on calcule simultanément les deux : u et v
ensuite pour la question 3 c'est une autre méthode, et donc un autre algorithme dans lequel on ne calcule qu'une seule valeur.
l'aire formée par la somme des trapèzes (en vert) :
les trapèzes sont avec les segments A0A1, A1A2 etc ...
très près de la courbe, le résultat est donc "bien meilleur"
le seul problème est que la précision est inconnue
on sait quelle est "bien meilleure" mais la seule chose qu'on peut affirmer avec certitude est ... qu'elle est plus petite que u-v calculé précédemment.
j'ai fait figurer les "fantomes" des rectangles précédents de la 1ère méthode, pour mettre en évidence que chaque trapèze est la demi-somme des deux rectangles et donc que le résultat est au final = (u+v)/2
la modification de l'algorithme peut donc se faire "à l'économie" en ajoutant à la fin juste une ligne :
w prend la valeur (u+v)/2
et afficher w.
(on peut aussi modifier le contenu de la boucle pour ne calculer que ce "w")
Je ne comprend pas pourquoi u+v/2 ?
Et je doit rajouter ces 2 ligne la dans l'algorithme de départ ou l'algorithme que l'on a modifier ?
les parenthèses c'est pas fait pour décorer.
Et si tu ne vois pas que l'aire d'un trapèze vert est la demi somme des aires des rectangles rouge et bleu, ce n'est pas un problème d'algorithme que tu as.
quant à "dans quel algorithme" c'est marqué dans l'énoncé :
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :