Affichage des articles dont le libellé est global. Afficher tous les articles
Affichage des articles dont le libellé est global. Afficher tous les articles

mardi 11 janvier 2011

Les variables globales externes

Les variables globales externes ont exactement le même rôle que les autres variables globales. Leur intérêt est de pouvoir modifier leurs valeurs facilement, sans avoir à toucher le code du programme.


Exemple d' utilisation d' une variable globale externe : 

extern int inicompte = 10000;         // compte initial
extern int heures = 48;               // 2 jours = 48 heures
extern 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);                         
  }


Marche à suivre :
Une fois le code compilé, rendez-vous dans l' interface de Metatrader. Lancez le programme.
A l' affichage de la fenêtre ci-dessous, cliquez sur 'Paramètres d' entrée'.


Vous pouvez maintenant aisément modifier la valeur d' une des variables globales avant de démarrer le programme.

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