Aller au contenu

Algorithme Mathématiques


kumaranvisu

Messages recommandés

Posté(e)

Svp aidez moi c'est urgent c'est pour demain, pouviez vous m'aidez pour mon exo, Pierre a ouvert un livret d'épargne le 1er janvier 2011. Il envisage de placer chaque année,au 1er janvier,la meme somme de 300 euros. Chaque année les intérets de 2 % s'ajoutent à cette meme date à son capital.

Ecrire un algorithme permettant de calculer le nombre d'années nécessaires à pierre pour obtenir un capital d'au moins 5000 euros? Pour que le capital acquis atteigne une certaine somme donnée? Merci en avance à ce qui m'aideront.

  • E-Bahut
Posté(e)

Données K,n

Assigner K=300

Tantque K<5000

K=K*1,02

n=n+1

FinTantque

Afficher n

Fin

Une solution possible qu tu peux développer à ton goût avec Algobox.

Au travail

Posté(e)

Bonsoir,

Un peu confus l'algorithme de Barbidoux. k et n on s'y perd. Quand on peut, on détaille au maximum et on donne des noms clairs.

//pourcentInteret doit être entier (exemple 2 pour 2%) et valeurAAtteindre doit être positive ou nulle.  argentMisTousLesAns doit être supérieur strictement à 0
// fonction renvoie -1 soit si l'argent mis tous les ans n'est pas positif, soit si la valeur à atteindre est négative
fonction avec retour entier nombreAnneesPourObtenir(entier pourcentInteret, entier valeurAAtteindre, entier argentMisTousLesAns)
Début
     si valeurAAtteindre  0 et argentMisTousLesAns > 0 alors
          entier nombreAnneesPassees=0;
          réel argentCompte = (réel) 300;
          tant que argentCompte < valeurAAtteindre faire
               nombreAnneesPassees = nombreAnneesPassees +1;
               argentCompte = argentCompte*((100+pourcentInteret)/100)+ argentMisTousLesAns;
          fin tant que
          renvoyer nombreAnneesPassees;
     sinon
          renvoyer -1;
     fin si
Fin    

// renvoie -1 en cas de problème(s)
fonction avec retour entier anneePourObtenir(entier anneeDebut, entier pourcentInteret, entier valeurAAtteindre, entier argentMisTousLesAns)
Début
     entier nbAnnees=nombreAnneesPourObtenir(pourcentInteret,valeurAAtteindre,argentMisTousLesAns);
     si nbAnnees < 0 alors
          retourner -1;
     sinon
          retourner anneeDebut+nbAnnees;
     fin si
Fin

//Sinon, une version plus courte pour anneePourObtenir mais qui utilise le langage C et Java donc bon, algorithmiquement n'est pas autorisée car tous les langages ne prennent pas cette écriture  :
fonction avec retour entier anneePourObtenir(entier anneeDebut, entier pourcentInteret, entier valeurAAtteindre, entier argentMisTousLesAns)
Début
     entier nbAnnees=nombreAnneesPourObtenir(pourcentInteret,valeurAAtteindre,argentMisTousLesAns);
     retourner (nbAnnees<0)?-1:anneeDebut+nbAnnees;
Fin

Mise à jour à 21h50.

Cause : argentCompte est un réel à cause des pourcentages.

Posté(e)

J'ai corrigé un soucis.

argentCompte est un réel.

Et j'ai ajouté un caste ^^

Au moins c'est bien détaillé là !!

Logiquement, miss est censé comprendre juste avec ça, c'est presque du français !!

  • E-Bahut
Posté(e)

Petite remarque

Un peu confus l'algorithme de Barbidoux. k et n on s'y perd.

Ce n'est pas l'algorithme de Barbidoux mais un bloc programme proposé par zorba dans lequel Barbidoux s'est permis de rectifier un petit oubli.

Posté(e)

Bonjour,

Oui c'est vrai ^^

Moi si j'écrivais les algorithmes en L3 informatique, je crois qu'on me tuerait lol. Mais bon, je suis en L3 dans ce domaine aussi...

En tout cas, l'algorithme de Barbidoux est bon sinon je ne dis pas le contraire, juste il faudrait changer les noms de varibles k et n pour que ça soit explicite. Ainsi, elle aurait un algorithme à son niveau.

Moi j'ai fais une fonction car ils ont bien dis "pour que ça atteigne une somme donnée".

Donc j'ai mis en paramètres tout ce que je pouvais ^^

J'aurais même pu aller plus loin, en disant, au lieu d'une seule valeur toujours la même chaque année, on aurait pu mettre un tableau et se dire que la personne ne mettra pas toujours la même valeur chaque année mais bon...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...
spam filtering
spam filtering