Bonjour, je suis élève de 1er S et j'ai un DM à faire pour la rentrée. J'ai un problème car je n'arrive pas à écrire l'algorithme demandé.
Voici l'énoncé :
Le dinosorus est un gros lézard qui vit en Afrique. Il y en avait 15 000 en 1980. Tous les 5 ans, on estime leur nombre : On s'est aperçu qu'il mourait 1 000 individus tous les 5 ans, mais malgré tout, au final, ils se reproduisent suffisamment pour progresser de 8% ( tous les 5 ans).
On appelle Dn le nombre de dinosorus à l'année 1980+5n.
B) On suppose que la suite (Dn) est croissante.
Ecrire un algorithme ( de préférence sur ALGOBOX à imprimer ) qui permet d'afficher l'année K à partir de laquelle la population de dinosorus aura atteint les 100 000 individus. Donner aussi la valeur K.
[ En première question il y avait A) Montrer que pour tout entier n, Dn+1=1.08dn-1080 ]
Merci beaucoup pour vos réponses.
Oui je pense normalement.
J'ai écris : ( Dn - 1000 ) * ( 1 + 8/100 )
et après en développant j'ai eu donc 1.08Dn - 1080
En fait, je ne sais pas du tout faire un algorithme, qu'est ce qu'il faut mettre dedans et quelle condition etc
Bonjour,
avant tout il faut savoir ce qu'est vraiment un algorithme :
la description formelle des opérations à effecteur pour réaliser une tache
donc conséquence immédiate : il est nécessaire avant même d'imaginer faire quelque algorithme que ce soit d'exprimer clairement la tache :
qu'est ce que je dois calculer, quelles seront les données d'entrées de la tache, les données de sortie de la tache
quelle méthode vais-je employer
appliquer une formule ? laquelle ?
des opérations successives et répétées (ça se traduira par une boucle plus tard) ?
comment je ferais à la main pour réaliser cette tache (un travail d'introspection pour savoir ce qu'on fait vraiment quand on fait un calcul et pourquoi)
évidemment tout cela sera plus facile si quand on écrit une formule de maths on ne l'écrit pas à moitié en oubliant d'écrire explicitement à quoi est égal ce qu'on a calculé !!
("j'écris", "j'ai eu" ne sont pas des termes mathématiques permettant de clarifier ce qu'on fait exactement ni ce qu'on obtient
écrire Dn+1 = ( Dn - 1000 ) * ( 1 + 8/100 ) = 1.08Dn - 1080, si
et cette simple écriture introduit une définition par récurrence de la suite.
et donc une méthode pour en calculer les termes :
à partir de D0 calculer successivement les termes suivants un par un
ça c'est déja une ébauche de l'algorithme !!!
on la précise en remarquant le "successivement" qui va se traduire par une boucle
initialiser à la valeur de D0
répéter autant que nécessaire :
calculer le terme suivant
ça commence à ressembler à quelque chose
reste donc à préciser le "autant que nécessaire" qui dépendra de ce qu'on veut faire avec cette suite
chercher un terme particulier ? (répondre par exemple à la question quand est-ce que la population sera supérieure à tant)
calculer la population au bout de tant d'années ?
etc
calculer le terme suivant c'est utiliser la formule de maths de la suite démontrée précédemment
on aura donc un squelette d'algorithme du genre :
initialiser D à la valeur de D0
tant que la population D est encore < 100000
calculer le D suivant par la formule précitée
compter qu'il s'est écoulé 5 années de plus
quand c'est fini, afficher le nombre d'années écoulées
on remarque immédiatement l'apparition d'une variable qu'on va appeler n qui est le nombre d'années écoulées :
initialiser D à la valeur de D0
initialiser n à 0
tant que la population D est encore < 100000
calculer le D suivant par la formule précitée
ajouter 5 à n
quand c'est fini, afficher le nombre d'années écoulées n
etc .
je te laisse continuer jusqu'à obtenir un algorithme léché fini et prêt à être traduit et exécuté en Algobox.
(c'est presque terminé)
résister à la tentation de se précipiter vers son clavier pour taper du code
c'est une très mauvaise méthode
un algorithme se construit avec la méthode précédente, pas à pas en analysant chaque étape à réaliser
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :