Bonsoir, j'ai un devoir pour la semaine prochaine et je ne comprend pas pourquoi mon algorithme ne modélise pas parfaitement le problème
Énoncée est le suivant:
Dans un récipient vide de contenance un litre, on verse 1/2 litre d'eau la première minute, 1/4 litre d'eau la deuxième minute, 1/8 de litre d'eau la minute suivante et ainsi de suite, minute par minute.
Ecrire un algorithme permettant de déterminer au bout de combien de minutes il manquera moins de p litres d'eau ( p compris entre 0 et 1 )
J'ai fait l'algorithme sur algobox:
Variables p,n,V
Début algorithme
Lire p
n prend la valeur 1
V prend la valeur 0.5
TANT_QUE V < 1-p
Début Tant Que
V prend la valeur V+1/pow(2,n)
n prend la valeur n+1
Fin_TANQUE
Afficher n
Il faut partir de V=0
Si tu veux voir ce que fait ton algorithme, insère une ligne qui affiche V dans la boucle...
Ca marche effectivement. Merci
Mais je voudrais savoir pourquoi avec V=0.5 ca ne fonctionne pas étant donné que pour n=1 v)0.5
Si tu veux voir ce que fait ton algorithme, insère une ligne qui affiche V dans la boucle...
Tu verras que tu ajoutes 0,5 à 0,5 dès la première itération...
Tu peux initialiser V à 0,5 mais dans ce cas il faut remonter la ligne n=n+1 avant le calcul de V...
Merci infiniment
Pour ceux qui on eu le même problème, voici l'algorithme fonctionnel:
Variables p,n,V
Début algorithme
Lire p
n prend la valeur 1
V prend la valeur 0.5
TANT_QUE V < 1-p
Début Tant Que
n prend la valeur n+1
V prend la valeur V+1/pow(2,n)
Fin_TANQUE
Afficher n
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :