Bonjour, pouvez-vous m'aidez s'il vous plait, en me donnant des méthodes svp merci!
Enoncé:
Depuis 2010, les courses à obstacles connaissent une croissance impressionnante. En 2015, on estime à 180000 le nombre de participants avec depuis une croissance de 20% par an en moyenne.
Objectif:
Si l'évolution se poursuit ainsi, déterminer a partir de quelle années le nombre de participants aura augmenté de plus de 300% par rapport à 2015 en utilisant une des trois méthodes.
Question préliminaire: Calculer Va, le nombre de participants recherchés.
Méthodes de résolution 1:
On note A le nombre de participants écoulées depuis 2015. On note N le nombre de participants.
1.Recopier et compléter l'algorithme ci-dessous afin qu'il réponde à la question.
Définir années():
A<---0
N<---180000
Tant que … :
A<---
N<---
Fin tant que
Retourner (…)
2. Programmer cet algorithme en Python et répondre a la question posée.
Merci beaucoup de m'aidez
bonjour,
le multicompte est interdit !!!
surtout pour cacher du multipost algorithme
ce comportement de refuser systématiquement de suivre les règles est intolérable
comme tu t'es désinscrit de mlry, inutile de fermer l'autre compte, c'est déja fait
pour faire propre je bloque l'autre discussion, vu qu'il n'y a là bas que des refus des règles et aucune réponse
on continuera ici (dans cette seule discussion !!! y compris ensuite pour la "méthode 2" à venir)
tu écopes d'un avertissement supplémentaire pour multicompte
et cette fois lis bien attentivement les règles
Ma reponse: je semble comprendre l'exercice !
Donc si j'ai bien compris, dans l'algorithme le debut je modifie rien, mais a partir de Tant que...: je doit remplacer par "augmenter de plus de 300% par rapport a 2015" , cest bien sa? Svp
Ensuite A<-- ... ?
Je doit faire quoi pour la suite?
Je doit faire A <-- 0 par l'augmentation de 300% je doit faire un calcul !
Ensuit A<-- +plus le résultat que j'ai trouver!
Et pareillement pour N?
N<-- 180000 par l'augmentation de 300%
Puis, N<-- + plus le résultat que j'ai trouver !
Cest bien sa svp
le calcul de 300% est à faire à la main une fois pour toutes
et "tant que" c'est tant que A < cette valeur là
dans la boucle :
A représente les valeurs successives du nombre de participants année après année
et l'énoncé dit de combien ça augmente chaque année
et N le nombre d'années écoulées (qui augmente de 1 chaque année bien entendu !!)
quand les boucles sont achevées, retourne(...) renvoie ce à quoi on s'intéresse.
quelle est la question ? que veut on savoir ?
"déterminer a partir de quelle année ..."
c'est où, dans quelle variable et sous quelle forme, l'année dans l'algorithme ?
oups c'est le contraire
A = nombre d'années écoulées et N le nombre de participants
il suffit d'échanger A et N dans ce que je viens de dire.
le calcul de 300% est à faire à la main une fois pour toutes
180000 augmenté de 300% ça fait combien ?
ensuite je réécris vu que tu n'arrives pas à interpréter ce que tu lis
(N = nombre de participants, A nombre d'années écoulées) :
"tant que", c'est tant que l'objectif n'est pas atteint
c'est à dire tant que le nombre de participants est inférieur à cet objectif
c'est à dire tant que N < ...
(valeur calculée par toi même une fois pour toutes)
dans la boucle :
N représente les valeurs successives du nombre de participants année après année
et l'énoncé dit de combien ça augmente chaque année
et A le nombre d'années écoulées (qui augmente de 1 chaque année bien entendu !!)
quand les boucles sont achevées, retourne(...) renvoie ce à quoi on s'intéresse.
quelle est la question ? que veut on savoir ?
"déterminer a partir de quelle année ..."
c'est où, dans quelle variable et sous quelle forme, l'année dans l'algorithme ?
Merci beaucoup de m'expliquer en détail, c'est gentille
J'ai compris il me semble😊
Donc
Le calcul je doit faire, 180000×(300÷100)
Ce qui est égale a 540000
Est-ce bon? Svp
Ensuite A represente le nombre d'années écoulée,
N représente le nombre de participants,
J'ai tout a fait compris, merci.
Dans l'algorithme, la ligne *définir années ()
Je doit mettre quoi svp, 2015?
Ensuite A<--0 et N<--180000
Je modifie pas?
Ensuite *tant que...* je doit ecrire,
*tant que l'objectif n'est pas atteint*
C'est bien sa?
Ensuite A<--... , je doit mettre le calcul mais quel résultat svp.
N<--... , je doit mettre 540000, est-ce bon svp?
Ensuite *fin tant que* , je modifie pas.
Pour finir, *Retournez (...)*
Je doit écrire *retournez (2010)
Est-ce bon tout ce que j'ai fait svp merci?
Merci beaucoup pour l'aide !
Le calcul je doit faire, 180000×(300÷100)
si on augmente de 20% ça fait 180000 + 180000×20/100
si on augmente de 300% ça fait 180000 + 180000×300/100
Ce qui est égale a 540000 donc non.
Dans l'algorithme, la ligne *définir années ()
Je doit mettre quoi svp, 2015?
rien du tout
la ligne annonce que on va définir une fonction qu'on a choisi d'appeler "années" et sans aucun paramètre : () est vide et le reste
la définition, c'est juste la définition des opérations qu'il faudra (futur) effectuer
et ces opérations sont décrites dans les lignes suivantes :
A <--- 0 rien à changer, c'est comme ça dans l'énoncé et ça le reste
au départ on est en 2015 et il y a donc 0 années depuis 2015
N<---180000 même remarque sur le nombre de pratiquants
Tant que … :
j'ai dit explicitement ce qu'il fallait écrire
tant que N est inférieur à ce qu'on veut obtenir (180000 + 300%)
(valeur numérique explicitement à écrire)
et c'est tout : tant que N < cette valeur numérique là
ne pas confondre < qui veut dire inférieur à
et <-- qui est une flèche vers la gauche pour dire " reçoit la valeur"
les instructions qui suivent seront (futur) exécutées de façon répétée,
"tant que" la condition "A < machin" est encore vraie
chacune de ces exécutions représente une année
donc :
augmentation du nombre de participants
N <--- l'ancienne valeur de N (qui s'écrit N !) + ce qui est dit dans l'énoncé sur la progression annuelle
et pareil pour A : une année de plus c'est A+1 donc A <--- A+1
Fin tant que cela indique la fin des instructions qu'il faudra répéter
on n'y touche pas, c'est la structure de l'algorithme
ce qui suit ne sera exécuté qu'une fois, à la fin
Retourner (…)
quel est le but de l'algorithme, son résultat , ce qu'il doit nous renvoyer, nous retourner
dans quelle variable est il ? dans A ou dans N ? ou obtenu par un calcul supplémentaire à partir de ces variables ?
demande-t-on "dans combien d'années après 2015" , ou bien "en quelle année" ?
c'est ça, qu'il faut mettre à la place des "..." sans rien modifier d'autre
ce résultat, sous forme d'expression avec la bonne variable
bref on dirait aussi que tu n'as jamais eu d'énoncé "à trou "
seuls sont à compléter les "..." sans rien modifier d'autre
c'est toujours comme ça !!!
que ce soit un algorithme à compléter,
une opération à compléter
un développement ou factorisation à compléter
une phrase à compléter
etc etc
C'est compliqué tout sa!
Bon une dernière fois, je refais!
Donc
Definir année()
A<--0
N<--180000
Tant que 180300% , c'est bien sa?
A<--A+1
N<--180300
Fin tant que
Retournez .... je sais pas quoi ecrire, je comprend mais le résultat je sais pas, je suis vraiment désolée de ne pas comprendre aussi vite😪svp
300/100 ça fait 3
180000 +180000×3 c'est 180000× 4
= pas ce que tu dis.
une augmentation de 300% c'est multiplier par 4.
180000 × 4 = 720000
et tant qu'on est dans les pourcentages
une augmentation de 20% c'est multiplier par 1 + 20/100 = 1,2
maintenant qu'on a compris ça (j'espère, c'est du cours de collège, voire même peut être avant, les pourcentages)
Definir année()
A<--0
N<--180000
Tant que N <720000
A<--A+1 l'année suivante
N<-- N×1,2 augmentation de 20%
Fin tant que
Retournez ...
bein le nombre d'années c'est A !!
Retourner A
et si on veut "en quelle année" et pas "au bout de combien d'années"
ce sera
Retourner 2015+A
la partie sur feuille est terminée.
y a plus qu'à coder ça en Python et le faire tourner effectivement sur Python
juste des détails de syntaxe Python : l'indentation, comment on écrit multiplier, "<--" (l'affectation) etc.
Merci beaucoup c'est très gentille de votre part😊
Par contre comment faire pour utuliser python svp parce que j'ai installé des applications et sa ne fonctionne pas! Pourriez-vous me donnez une application ou de l'aide svp
EduPython marche très bien une fois installé (sous Windows)
c'st celui ,"recommandé" en Lycée
sinon en ligne (sans rien installer du tout) chercher sur Internet, il y en a plusieurs
ça marche aussi
mais on n'a pas forcément la "console Python" de EduPython
pour lancer l'exécution de fonctions qu'on a seulement définies, et qui ne font que "retourner" une valeur dans le vide sans rien afficher du tout (et donc on ne voit rien du tout comme résultat)
il faut ajouter un print(années()) en dehors de cette fonction pour afficher (print) le résultat (la valeur retournée par la fonction annees())
comme pour l'utilisation de quoi que ce soit (même d'un simple fer à repasser) il faut un minimum de débrouillardise ... et RTFM (Relire Ton Foutu Manuel, la doc de Python, les tutoriels, les exemples)
J'essayerais sur EduPython, en tout cas merci beaucoup pour tout!
Si il y a un problème je reviendrai vers vous pour m'aider svp merci
Bonne soirée
Bonjour, aidez-moi svp!
Question: Combien d'années pour atteindre l'objectif ?
Méthode de résolution 2:
On considère la feuille de calcul ci-dessous.
A1= Pas= B1= 1
A2= Nombre d'années B2= Nombre de
depuis 2015 participants
A3= 0 B3= 180000
A4= =A3+B1 ? B4= 216000
A5= 2 B5= 259200
A6= 3 B6= 311040
A7= 4 B7= 373248
1. Quelle est la signification de PAS = 1 ? Que faudrait-il indiquer pour avoir une estimation chaque mois?
2. Quelle formule faut-il inscrire dans la cellule B4 et ensuite étirer vers le bas?
3. Reproduire cette feuille de calcul en utilisant les formules correctes et répondre alors au problème posée.
Merci, j'ai déjà essayer de comprendre!
*** message déplacé ***
combien de fois vas-tu faire du multipost ? cherche à comprendre la logique du site bon sang ...et ne refais pas de multicompte...lis la FAQ [lien]
dans la mesure où c'est la suite du même exo, tu dois rester dans le même sujet, pour toute nouvelle question
bonjour, aidez moi svp, je n'arrive pas a faire,
On considere la feuille de calcul ci dessous.
A1 Pas=
A2: Nombre d'annees depuis 2015
A3: 0
A4: =A3+B1
A5: 2
A6: 3
A7: 4
B1: 1
B2: Nombre de participants
B3: 180000
B4: 216000
B5: 259 200
B6: 311040
B7: 373248
1.Justifier la formule inscrite dans la cellule A4.
2.Quelle est la signification de PAS=1 ?
Que faudrait-il indiquer pour avoir une estimation chaque mois?
3.Quelle formule faut-il inscrire dans la cellule B4 et ensuite étirer vers le bas?
4.Reproduire cette feuille de calcul en utilisant les formules correctes et répondre alors au problème posé.
Merci de m'aidez svp!
*** message déplacé ***
surtout que j'avais bien précisé dans ma première réponse à cette discussion
Désolé! J'ai oublié, c'est une erreur de ma part encore désolé.
Mais est-ce que maintenant vous pouvez m'aider a faire la méthode 2 svp merci
Bon, là ça suffit
banni 2 jours
et si tu crées un nouveau compte ce sera ban définitif.
*** message déplacé ***
Bonjour, veuillez m'excuser pour mon non-respect du forum, désolée
On peut continuer les deux autres méthodes svp?
d'abord as tu terminé l'algorithme ?
ton programme Python fonctionne-t-il ? quel résultat donne-t-il ?
J'ai essayer mais sa fonctionne pas, j'essaye de comprendre comment utiliser python!
Mais je doit écrire l'algorithme sans les réponses c'est sa?
"essayé mais sa fonctionne pas"
tu parles d'un diagnostic !
qu'est ce qui ne "fonctionne pas ?
il sort un message d'erreur ? lequel
il ne dit rigoureusement rien du tout ? (as tu fait ce que j'ai dit ; ajouter un print ?)
quoi d'autre ?
oui bien sur tu peux mettre ici mot à mot à la virgule près sans oublier un seul caractère ni aucun espace (= copier coller direct) exactement ce que tu tapes dans Python
Non, j'ai oublié "ne" .
j'ai essayé mais sa fait erreur, a la ligne 2 par exemple! C'est un exemple bien sur!
Oui j'ai essayer *print*
Mais il y a qu'une ligne qui fait erreur!
En effet, j'ai pas reussi a faire comprenez-vous?
J'essaye de comprendre la notice de python ne vous inquiétez pas! Je me débrouillerai tout seule!
Merci quand même.
Le plus important pour moi c'est le reste car c'est a rendre le devoir!
pffffff
tu ne sais pas faire un simple copier coler de ton code ici ????
mais tu n'y arriveras jamais comme ça !
et ce sera exactement pareil pour les autres méthodes !
vu ta façon de comprendre ce qu'on te demande et de le faire, de façon la plus générale qui soit, cet exo ou quoi que ce soit d'autre
copier coller ton code prend exactement 3 secondes, là tu continues à tergiverser.
et c'est plus long de taper ton message d'excuses vaseuse et de jérémiades que de recopier ton code !!
Voila,
>>
File "D:\EduPython 2.0\Logiciel\App\Lib\site-packages\lycee\lycee.py", line 1
def annne()
^
SyntaxError: invalid syntax
>>>
definir annne
A<--0
N<--180000
tant que N<720000
A<--A+1
N<--N*1,2
fin tant que retourner A
ce n'est absolument pas du Python en quoi que ce soit
"définir" c'est du baratin français de "langage naturel"
en Python ça s'écrit def
ensuite on parle, d'une fonction (avec ses parenthèses !!) années()
l'accent sur les caractères ne plait pas à Python donc on écrira :
def annees()
enfin il faut terminer la ligne par ":" obligatoire pour signaler que ensuite on va commencer à définir les opération à faire dans cette fonction
def annees() :
les instructions qui suivent , faisant partie de cette fonction, sont à indenter
c'est à dire commencer après un certain nombre d'espaces en début de chaque ligne
(ça se fait automatiquement quand on n'a pas oublié le ":" )
A<--0 ça non plus ce n'est pas du Python du tout , mais la simulation du caractère quand on tape du texte de langage naturel au clavier
y a pas de "flèche" en Python, ni simulée par des combinaisons de caractères ni rien.
en Python l'affectation (ce que veut dire la flèche en langage naturel) de la valeur 0 à la variable A s'écrit
A= 0
donc pour l'instant on en est là
def annees() :
A = 0
pareil pour N
tant que : là encore ce n'est pas du Python du tout
en Python ça s'écrit while (traduction de "tant que" en anglais)
et comme il y aura des instructions qui "feront partie" de ce qui est à répéter "tant que" on ajoute des ":" et une indentation supplémentaire :
def annees() :
A = 0
N =
while N < 720000 :
A = A+1
etc
fin tant que
ne sera traduit QUE par le retour à l'indentation d'avant
et "retourner" s'écrit return
def annees() :
A = 0
N = 180000
while N < 720000 :
A = A+1
N = N*1.2
return A
enfin comme c'est la dernière instruction qui fait partie de la fonction, on revient à l'indentation initiale (nulle) pour la suite : le print
def annees() :
A = 0
N = 180000
while N < 720000 :
A = A+1
N = N*1.2
return N
print(annees())
Merci beaucoup, vous m'apprenez beaucoup chose sur python.
J'ai essayer avec def mais sa faisait erreur du coup j'ai remis définir.
Je vais essayer!
En effet, j'ai essayer le programme sur python! Tout est bon!
Je doit avoir une réponse en particulier ou bien?
bein oui : quand tu lances l'exécution du programme (avec le print dedans), il doit te donner la réponse à la question "dans combien d'années le nombre d'adhérents aura augmenté de 300%"
avec Edupython ça donne ça :
si tu es attentif tu auras remarqué une erreur de frappe à la dernière recopie dans mon dernier message : il sort le nombre d'adhérents au lieu du nombre d'années
Je ne comprend pas, j'ai fait comme vous mais je trouve pas le résultat 8 !
Il me semble que la ligne print(annees()) n'est pas bonne!
Comment avez-vous écrit cette ligne?
avec Edupython au lieu du print dans le programme lui-même tu peux taper dans la console, après avoir lancé l'exécution du programme ce qui fait définir la fonction :
annees()
et il exécute alors la fonction et affiche ce que la fonction a retourné
Comment avez-vous écrit cette ligne?
exactement comme c'est écrit et là où c'est écrit (c'est une copie d'écran !!)
ne pas oublier que le 20-01-20 à 19:36 il y avait une faute de recopie à la fin !! (déja signalé)
Voila
def annees():
A= 0
N= 180000
while N < 720000 :
A = A+1
N = N*1.2
return A
** Console de processus distant Réinitialisée ***
>>> annees()
>>> annees()
1
>>>
en Python l'indentation est primordiale !!
tel que tu l'as écrit :
au premier passage dans la boucle il rencontre dans la boucle l'instruction return donc termine le programme immédiatement avec la valeur de A qui est 1 (1er passage)
le return doit être en dehors de la boucle
compares attentivement le code correct :
def annees():
A= 0
N= 180000
while N < 720000 :
A = A+1
N = N*1.2
return A
def annees():
A= 0
N= 180000
while N < 720000 :
A = A+1
N = N*1.2
return A
def annees():
A= 0
N= 180000
while N < 720000 :
A = A+1
N = N*1.2
return A
Ah oui c'est différent, je ne savais pas tout sa sur python!
j'ai essayer et j'ai trouver 8!
Merci beaucoup
Je doit faire pour N aussi?
demande-t-on le nombre de participants à l'issue de ces 8 années ? non ...
on peut passer à la méthode 2
il est bien entendu que là aussi il faut le logiciel "en vrai" (vu la question : 4.Reproduire cette feuille de calcul)
sur ordi il n'y a que l'embarras du choix, évidemment Excel, mais aussi Calc de Open Office (gratuit) voire même dans Word ou équivalent il y a un tableur !!
ou dans Geogebra ou etc etc etc ...
voire même "en ligne"
et connaitre les bases des bases de l'usage des tableurs !
notion de formules et d'adressage des cases
différence entre la formule (ce qu'on tape dans la case) et le résultat de l'exécution de cette formule (ce qui est affiché)
notion d'extension de formule et comment elle se modifie automatiquement ("étirer vers le bas")
seulement si ces notions sont comprises, tu peux répondre aux questions posées...
la 1ère est évidente :
puisque dans la colonne A on a le nombre d'années successives et que on a déja répondu à cette même question dans l'algorithme quand on a écrit A = A+1 !!
Alors j'ai déjà fait la feuille de calcul ne vous inquiétez pas!
Bon, la question 1, j'ai déjà trouvé!
La question 2, j'ai pas trouvé ! Enfin j'ai essayer, je me suis peut-être dis, que c'est l'augmentation des années ?
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :