Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 04-02-2018 17:48:09

poisson
Invité

Suites

Bonjour, je me trouve face à une question d'un exercice que je n'arrive pas à résoudre. La voilà:

Expliquer pourquoi l'algorithme ci-contre, censé donner le premier rang à partir duquel Un-Vn<0, est incorrect et le modifier pour qu'il fonctionne

n: entier
u,v : réels

Donner à u la valeur 24
Donner à v la valeur 6
Donner à n la valeur 0
Tant que u-v<0 faire
Donner à u la valeur (u+v)/2
Donner à v la valeur u*v
Donner à  n la valeur n+1
Fin tant que
Afficher la valeur de n


Je pense que l'erreur est que lors du calcul de v, u prend la valeur du calcul précédent mais je ne sais pas comment résoudre ça.
Merci de l'aide

#2 04-02-2018 19:52:15

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 12 426

Re : Suites

Bonsoir,


Pourquoi l'algorithme est incorrect (ou sans objet) ?
Si on pose comme convention :
u0 = 24
v0=6
alors
u1=(24+6)/2=15
V1=6*15 =90
C'est déjà vrai... et ça reste vrai jusqu'à n=9, par contre à partir de 10, ça devient apparemment faux...
Pour t'en convaincre, rajoute juste entre Fin Tant que  et  Donner à  n la valeur n+1 , les lignes :
Afficher la valeur de  u
Afficher la valeur de v

J'ai pas mal d'autres essais qui n'ont rien donné d'intéressant, par exemple [tex] v=\sqrt{u\times v}[/tex] : u étant la moyenne arithmétique, alors je m'étais dit que peut-être v serait la moyenne géométrique, mais non...

J'avais eu une autre idée, mais vu comme la question est posée, la correction de U - V<0 en U-V=0 (qui semble fonctionner avec le nombre de décimales du logiciel) ne peut pas être la bonne puisqu'on demande à partir de quel rang de n, on a [tex]U_n-V_n<0[/tex]...

Donc, question :
Il n'y a rien d'autre dans ton énoncé ? Pas même  définition de un = ? et vn = ?   par exemple...

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#3 04-02-2018 21:00:23

Fred
Administrateur
Inscription : 26-09-2005
Messages : 5 101

Re : Suites

Bonjour,

  Je pense, même sans connaitre les suites l'expression des suites $(u_n)$ et $(v_n)$ comme le souligne Yoshi,
que l'erreur vient de la condition dans le Tant Que.
Regarde ce qui se passe lorsqu'on exécute l'algorithme. On donne à u la valeur 24, et à v la valeur 6. Donc u-v=18>0.
Ainsi, on ne rentre même pas dans le Tant Que puisque la condition n'est pas remplie. L'algorithme retourne donc n=0, ce qui n'est pas correct puisque $u_0=24$ et $v_0=6$.

F.

Hors ligne

#4 05-02-2018 06:39:35

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 12 426

Re : Suites

Bonjour,

@Fred.
Pas vu...

parce  que j'ai travaillé avec une boucle for, assorti d'une condition de sortie de ma boucle, et de l'affichage des valeurs u et v :


print (u,v)
if u<v:
    break

Mais ce n'était jamais vrai, et il ne fallait pas aller très loin, parce que u et v pour Python devenaient infinis (e216) !

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#5 05-02-2018 10:02:40

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 12 426

Re : Suites

Re,

Encore un qui se fiche du monde...
Tout d'abord, il fournit un énoncé incorrect :
* Tant que u-v>=0  et non Tant que u-v<0...
* Ensuite [tex]v=\sqrt{u*v}[/tex] et non v =u*v, moyenne géométrique comme pressenti un temps

Même pas foutu de proposer le même énoncé sur deux sites différents : encore un qui mange (ou essaie de manger) à tous les râteliers
Même pas la politesse de venir dire merci pour le temps qu'on y a passé...
Le crossposting est vraiment une plaie !!!
cf : https://www.ilemaths.net/sujet-algorithme-774173.html

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante ?89 - 21
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums