Programme def... ()
sk_
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Depuis le début de l’année 2017, deux scientifiques Marc et Alice étudient l’évolution d’une population de
moustiques sur l’île Chépaou. Ils ont réussi à obtenir l’estimation suivante sur l’évolution de la population :
si la population contient x moustiques au cours d’une année, alors il y a aura 1.09x − 200 moustiques
l’année suivante. Par contre, ils ne sont pour l’instant pas d’accord sur l’estimation de la population en
2017 : ils s’accordent seulement sur le fait que ce nombre est compris entre 8 000 et 12 000. Il faudra donc
considérer cette donnée comme une variable.
1. Écrire une fonction f qui prend en argument le nombre x de moustiques à une certaine année et qui
renvoie le nombre de moustiques l’année suivante. La valeur de retour de f doit arrondir la réponse
à l'entier inférieur. Comme les valeurs obtenues seront toujours positives, vous pouvez utiliser au
choix int(..) ou la fonction floor(. ) du module math. Exemple: int(4.5) vaut 4 et math.floor(6.75)
vaut 6.
pour ca j'ai trouvé:
2. Écrire une fonction nb_moustiques qui prend en arguments nb_debut, le nombre estiméde
moustiques en 2017, et un entier annee_voulue. La fonction doit renvoyer le nombre de
moustiques qu’il y aura en annee_voulue.
la j'ai bloqué voila ce que j'ai fait:
et du coup par exemple quand je mets nb_moustiques(x,2)
au lieu de me donner le nombre de moustiques dans 2 ans, ca me donne le nombre de moustiques dans 1 an multiplié par 2
3. Écrire une fonction annee_atteindra qui prend en argument un entier seuil et un entier nb_debut
(qui correspondra au nombre de moustiques en 2017) et qui renvoie l’année à partir de laquelle le
nombre de moustiques sera supérieur ou égal à seuil.
j'ai trouvé ca:
mais tant que les programmes précédents ne sont pas corrects, ca ne marche pas
merci d'avance
moustiques sur l’île Chépaou. Ils ont réussi à obtenir l’estimation suivante sur l’évolution de la population :
si la population contient x moustiques au cours d’une année, alors il y a aura 1.09x − 200 moustiques
l’année suivante. Par contre, ils ne sont pour l’instant pas d’accord sur l’estimation de la population en
2017 : ils s’accordent seulement sur le fait que ce nombre est compris entre 8 000 et 12 000. Il faudra donc
considérer cette donnée comme une variable.
1. Écrire une fonction f qui prend en argument le nombre x de moustiques à une certaine année et qui
renvoie le nombre de moustiques l’année suivante. La valeur de retour de f doit arrondir la réponse
à l'entier inférieur. Comme les valeurs obtenues seront toujours positives, vous pouvez utiliser au
choix int(..) ou la fonction floor(. ) du module math. Exemple: int(4.5) vaut 4 et math.floor(6.75)
vaut 6.
pour ca j'ai trouvé:
from random import* x=randint(8000,12000) def f(x): r= 1.09*x-200 return int(r)
2. Écrire une fonction nb_moustiques qui prend en arguments nb_debut, le nombre estiméde
moustiques en 2017, et un entier annee_voulue. La fonction doit renvoyer le nombre de
moustiques qu’il y aura en annee_voulue.
la j'ai bloqué voila ce que j'ai fait:
def nb_moustiques(nb_debut,annee_voulue): r= f(x)*annee_voulue return r
et du coup par exemple quand je mets nb_moustiques(x,2)
au lieu de me donner le nombre de moustiques dans 2 ans, ca me donne le nombre de moustiques dans 1 an multiplié par 2
3. Écrire une fonction annee_atteindra qui prend en argument un entier seuil et un entier nb_debut
(qui correspondra au nombre de moustiques en 2017) et qui renvoie l’année à partir de laquelle le
nombre de moustiques sera supérieur ou égal à seuil.
j'ai trouvé ca:
def annee_atteindra(n,nb_debut): while n>= nb_moustiques(nb_debut, annee_voulue): r = annee_voulue-2017 return r
mais tant que les programmes précédents ne sont pas corrects, ca ne marche pas
merci d'avance
A voir également:
- Programme def... ()
- Programme demarrage windows - Guide
- Mettre en veille un programme - Guide
- Message programmé iphone - Guide
- Programme word gratuit - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
1 réponse
Bonjour,
Bon.. déjà il serait bien de ne pas ouvrir 50 questions en même temps sur le forum...
Ta première question n'est toujours pas résolue...
Ensuite...
Pour le : 2)
Il faut jusqu'au nombre d'année désirée
Puis, dans chaque tour de la boucle, aller calculer le nombre de moustiques en se basant sur le calcul de l'itération précédente...
Par exemple, nb_debut = 5000 , année = 3
premier tour de la boucle :
resultat = f(5000) ( ce qui donne : 5000 * 1.09 - 200 => 5250 )
deuxième tour de la boucle
resultat += f(resultat) ( donc f(5250) .. ce qui donne : 5 522,5 )
troisième tour :
resultat += f(resultat) ( donc f(5522 ) ... etc... )
Bon.. déjà il serait bien de ne pas ouvrir 50 questions en même temps sur le forum...
Ta première question n'est toujours pas résolue...
Ensuite...
Pour le : 2)
Il faut jusqu'au nombre d'année désirée
Puis, dans chaque tour de la boucle, aller calculer le nombre de moustiques en se basant sur le calcul de l'itération précédente...
Par exemple, nb_debut = 5000 , année = 3
premier tour de la boucle :
resultat = f(5000) ( ce qui donne : 5000 * 1.09 - 200 => 5250 )
deuxième tour de la boucle
resultat += f(resultat) ( donc f(5250) .. ce qui donne : 5 522,5 )
troisième tour :
resultat += f(resultat) ( donc f(5522 ) ... etc... )
Le sens de la comparaison dans ton while et l'addition au lieu d'une soustraction pour ton r )