algo
algo
Bonjour
Dans cet ex https://www.cjoint.com/data3/LAwowtm5oF ... 444856.jpg
Je n'arrive pas à complété l'algorithme... Merci de votre aide.
Dans cet ex https://www.cjoint.com/data3/LAwowtm5oF ... 444856.jpg
Je n'arrive pas à complété l'algorithme... Merci de votre aide.
-
- Messages : 1859
- Enregistré le : mer. 2 nov. 2011 09:39
Re: exercice
Bonjour,
Un collègue va te répondre, reste sur le sujet de départ.
A bientôt
Un collègue va te répondre, reste sur le sujet de départ.
A bientôt
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Bonjour,
tu as seulement besoin de la formule donnant le volume d'un pavé droit :
\(\mathcal{V}=L\times \ell\times h\).
Il te reste à écrire cela pour les deux boites.
On veut que le volume du coffre vert \(g(x)\) devienne supérieur à celui du coffre rouge \(f(x)\).
On veut donc que \(g(x)>f(x)\).
Or pour \(x=2\), on a \(g(2)=30\) et \(f(2)=80\) donc \(g(2)\leqslant f(2)\).
Tant que le volume du coffre vert est inférieur ou égal à celui du coffre rouge, on ajoute \(1\) à \(x\)..
Cela devrait te permettre d'écrire mathématiquement la condition de la boucle Tant que.
Bonne continuation
tu as seulement besoin de la formule donnant le volume d'un pavé droit :
\(\mathcal{V}=L\times \ell\times h\).
Il te reste à écrire cela pour les deux boites.
On veut que le volume du coffre vert \(g(x)\) devienne supérieur à celui du coffre rouge \(f(x)\).
On veut donc que \(g(x)>f(x)\).
Or pour \(x=2\), on a \(g(2)=30\) et \(f(2)=80\) donc \(g(2)\leqslant f(2)\).
Tant que le volume du coffre vert est inférieur ou égal à celui du coffre rouge, on ajoute \(1\) à \(x\)..
Cela devrait te permettre d'écrire mathématiquement la condition de la boucle Tant que.
Bonne continuation
Re: algo
Et juste dans la questio 2b quand ils disent de coder cet algortihme je dois utiliser un logiciel informatique ?
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Bonjour,
le mot retourner signifie "renvoyer" et cela signifie que le programme va renvoyer un résultat.
Ce mot est lié à la notion de fonction en langage Python où le mot-clé désigné pour faire ce renvoi est "return". D'ailleurs, il faudra que tu le fasses en langage Python pour le tester.
Donc ici on attend les expressions de tes volumes en fonction de \(x\), comme une simple fonction mathématique :
As-tu compris ?
le mot retourner signifie "renvoyer" et cela signifie que le programme va renvoyer un résultat.
Ce mot est lié à la notion de fonction en langage Python où le mot-clé désigné pour faire ce renvoi est "return". D'ailleurs, il faudra que tu le fasses en langage Python pour le tester.
Donc ici on attend les expressions de tes volumes en fonction de \(x\), comme une simple fonction mathématique :
Code : Tout sélectionner
fonction f(x):
retourne 8x(x+3)
fin fonction
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Oui,
j'ai déjà un peu répondu, tu pourras utiliser le langage Python, ta fonction deviendra alors :
Bonne traduction. Si tu as du mal, n'hésite pas à reposer d'autres questions
j'ai déjà un peu répondu, tu pourras utiliser le langage Python, ta fonction deviendra alors :
Code : Tout sélectionner
def f(x):
return 8*x*(x+3)
Re: algo
def f(x):
return 8*x*(x+3)
def g(x) :
return 10*(x+1)*(x-1)
x<- 2
Tant que g(x)>f(x) Faire
x<-x+1
Fin Tant que
Afficher x
J'ai fais ceci mais ca me dis qu'il y a un pb sur cette ligne Tant que g(x)>f(x) Faire
J'utilise ceci https://replit.com/languages/python3
return 8*x*(x+3)
def g(x) :
return 10*(x+1)*(x-1)
x<- 2
Tant que g(x)>f(x) Faire
x<-x+1
Fin Tant que
Afficher x
J'ai fais ceci mais ca me dis qu'il y a un pb sur cette ligne Tant que g(x)>f(x) Faire
J'utilise ceci https://replit.com/languages/python3
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Bonjour,
tout est correct, juste une petite remarque, on veut que le volume de la boite verte soit supérieur à celui de la boîte rouge donc on veut \(g(x)>f(x)\).
Dans la boucle Tant que, il faut donc mettre le contraire de cette condition car tant que cette condition n'est pas vérifiée, on continue l'augmentation de 1 pour \(x\).
Pour ton lien, je n'ai rien au bout...
Je t'informe juste que la boucle tant que en Python s'écrit
Il faut juste un ":" à la fin de ton en-tête de boucle.
L'affectation se fait avec le signe "="
Et l'affichage se fait avec print :
Je te laisse faire cela. Tu peux utiliser le site https://www.online-python.com/ pour saisir et exécuter ton code.
Bonne continuation
tout est correct, juste une petite remarque, on veut que le volume de la boite verte soit supérieur à celui de la boîte rouge donc on veut \(g(x)>f(x)\).
Dans la boucle Tant que, il faut donc mettre le contraire de cette condition car tant que cette condition n'est pas vérifiée, on continue l'augmentation de 1 pour \(x\).
Pour ton lien, je n'ai rien au bout...
Je t'informe juste que la boucle tant que en Python s'écrit
Code : Tout sélectionner
while condition:
instructions
L'affectation se fait avec le signe "="
Code : Tout sélectionner
x = 2
Code : Tout sélectionner
print(x)
Bonne continuation
Re: algo
Désolée mais j'ai fait
def f(x):
return 8*x*(x+3)
def g(x) :
return 10*(x+1)*(x-1)
x<- 2
Tant que f(x)>g(x) Faire:
x<-x+1
Fin Tant que
Afficher x
et cela ne marche toujours pas...
Mon site c'est celui ci https://replit.com/languages/python3
def f(x):
return 8*x*(x+3)
def g(x) :
return 10*(x+1)*(x-1)
x<- 2
Tant que f(x)>g(x) Faire:
x<-x+1
Fin Tant que
Afficher x
et cela ne marche toujours pas...
Mon site c'est celui ci https://replit.com/languages/python3
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Je t'ai déjà dit que ton lien ne menait qu'à la page d'accueil du site donc je ne vois pas ce que tu as saisi.
Sinon, tu le recopies dans ton message avec les balises de code (icône </>, 5ème en partant de la gauche dans l'éditeur de message.
Si tu as écrit exactement ce que tu m'as envoyé, c'est normal que cela ne marche pas pour les raisons que j'ai déjà évoquées :
affectation
boucle Tant que :
je mettrai l'inégalité large dans la condition afin que l'on arrête la boucle lorsque cette condition n'est plus vérifiée, c'est-à-dire lorsque \(g(x)>f(x)\).
Reprends cela si nécessaire.
Et pour finir, l'affichage qui donnera la réponse à la question :
Sinon, tu le recopies dans ton message avec les balises de code (icône </>, 5ème en partant de la gauche dans l'éditeur de message.
Si tu as écrit exactement ce que tu m'as envoyé, c'est normal que cela ne marche pas pour les raisons que j'ai déjà évoquées :
affectation
Code : Tout sélectionner
x = 2
...
x = x + 1
Code : Tout sélectionner
while f(x) >= g(x):
....
Reprends cela si nécessaire.
Et pour finir, l'affichage qui donnera la réponse à la question :
Code : Tout sélectionner
print(x)
Re: algo
https://www.cjoint.com/data3/LAwp5BlUqY ... 165657.png
voila ce que j'ai fait ca ne marche pas ca m'énerve...
voila ce que j'ai fait ca ne marche pas ca m'énerve...
-
- Messages : 10362
- Enregistré le : lun. 30 août 2010 11:15
Re: algo
Bonjour,
il n'y a pas de fin de Tant que en Python, (et d'ailleurs il n'y a pas de marqueur de fin de bloc en général. C'est l'indentation, c'est-à-dire le décalage qui marque l'entrée et la sortie de bloc.
Ton programme est presque correct, c'est juste que le while s'écrit sans majuscule tout comme le print.
Corrige ces deux petites erreurs et cela devrait marcher.
Pour vérifier tu peux aussi aller voir et exécuter le code que j'ai fait (il est similaire au tien) :
https://www.online-python.com/2V1FRTYUxK
Bonne conclusion
il n'y a pas de fin de Tant que en Python, (et d'ailleurs il n'y a pas de marqueur de fin de bloc en général. C'est l'indentation, c'est-à-dire le décalage qui marque l'entrée et la sortie de bloc.
Ton programme est presque correct, c'est juste que le while s'écrit sans majuscule tout comme le print.
Corrige ces deux petites erreurs et cela devrait marcher.
Pour vérifier tu peux aussi aller voir et exécuter le code que j'ai fait (il est similaire au tien) :
https://www.online-python.com/2V1FRTYUxK
Bonne conclusion