vendredi 7 janvier 2011

Variables locales ou globales

Les variables ont pour l' instant toujours été définies à l' intérieur des fonctions. C' étaient des variables locales, qui disparaissaient une fois la fonction terminée.
Il est souvent nécessaire de définir une variable qui sera constante et utilisable dans toutes les fonctions d' un programme : c' est ce qu' on appellera une variable globale.


Programme utilisant une variable globale : 
Imaginons, je possède un compte d' un montant de 10 000€. Deux jours plus tard, après quelques placements, je me retrouve avec 10 285€. Je vais maintenant, grâce au programme ci-dessous, pouvoir calculer mon pourcentage de gain, et le ratio gain/heure.

int inicompte = 10000;         // compte initial
int heures = 48;               // 2 jours = 48 heures
int moncompte = 10285;         // compte actuel


double start()                 // fonction start
  {                       
   double pourc = pourcentage(inicompte, moncompte);  
   double ratiog = ratio(inicompte, moncompte, heures);
   Alert(" Gains = ", pourc, "% et ratio = ", ratiog, "€ par heure");
   return;                     
  }


double pourcentage(double ini, double fin
  {                       
   double pour1 = 
fin - ini;
   double pour2 = pour1 / ini * 100;
   return(pour2);                         
  }


double ratio(double ini, double fin, double temps) 
  }                       
   double rat1 = fin - ini;

   double rat2 = rat1 / temps;
   return(rat2);                         
  }

Prenez bien le temps de comprendre ce programme. Comme vous pouvez le constater, ça commence à se compliquer un peu...
Notez par ailleurs qu' on aurait très bien pu obtenir le même résultat en utilisant des variables locales dans la fonction start.

Vous avez maintenant toutes les bases nécessaires pour programmer des bots un peu plus utiles sur Metatrader. Je vous invite à passer à la leçon suivante.

---> Leçon suivante

Aucun commentaire:

Enregistrer un commentaire