Une question pour les experts MQL - page 6

 

Comme ça ? - Au lieu de

int getNextOrderNum(int RRRR) {
   switch (RRRR) {
   case 101:
      return (102);
                  }
   return (0);
}

S'il vous plaît, dites-moi ce qu'il faut mettre ici :

(pour Magic_101, Magic_102)

int getNextOrderNum(int RRRR) {
  ..... ?... ... ?
   return (0);
}

 

Andrei, c'est clair que ça ne compile pas. Vous pourriez peut-être définir la tâche différemment ? Et, comme il me semble, dans ce cas, tout est assez transparent.

Utiliser (correct dans le code) des étiquettes dans les ints, et c'est tout... Je ne comprends pas pourquoi toutes ces histoires et ces appels à l'aide...))))

 

Peut-être, je ne peux pas le dire sans le code. Il est probablement possible de le faire de manière plus simple.

Rita:

S'il vous plaît, dites-moi ce qu'il faut mettre ici :

{
   if (RRRR == 101)
   {
      return (102);
   }
   else if (RRRR == 102)
   {
      return (103);
   }
   //...
}

Voici un autre problème - avec chaque nouvelle condition, le niveau d'imbrication augmente, et son niveau est limité, c'est-à-dire qu'au niveau d'imbrication autour de 20 (je ne me souviens pas exactement), le code cessera de compiler à nouveau.

J'ai une autre suggestion - répétez la question ici avec un code plus détaillé, il est probablement possible de le rendre beaucoup plus transparent et plus simple.

 

Pas d'autre, pas de restriction

   if (RRRR == 101){
      return (102);
   }
   if (RRRR == 102){
      return (103);
   }
   //...
 
return(RRRR+1)
 
Peut-être juste une fonction qui augmente le magik de un. L'exemple semble en avoir besoin. Bien que le dernier exemple de Integer ne soit que ça
 
Integer:

Pas d'autre, pas de restriction

100%. C'est la solution à laquelle nous devons nous arrêter. Pas de queue ou de morve, toute modification est strictement limitée à l'ancien interrupteur.
 

Bonsoir à tous.

Je ne comprends donc toujours pas très bien. J'ai besoin de remplacer les magies dans le code EA (il y en a environ 20), données par des numéros. On m'a demandé de mettre la magie dans des variables globales. Je l'ai fait.

Magie_101=Magie+1 ;
Magie_102=Magie+2 ;
Magie_103=Magie+3 ; .......

Ai-je bien compris la suggestion d' Integer?

Au lieu du code de fonction dans lequel les magiciens sont spécifiés comme des numéros :

int getNextOrderNum(int Магик) {
   switch (Магик) {
   case 101:
      return (102);
   case 102:
      return (103);
   
      }
   return (0);
}

Serait-il correct de le régler comme ceci ? -

int getNextOrderNum(int Магик) {
   if (Магик == Magic_101)    {  return (Magic_102);}
   if (Магик == Magic_102)    {  return (Magic_103); }
    
                return (0);
                              }
 
Rita:

Bonsoir à tous.

Je ne comprends donc toujours pas très bien. J'ai besoin de remplacer les magies dans le code EA (il y en a environ 20), données par des numéros. On m'a demandé de mettre la magie dans des variables globales. Je l'ai fait.

Magie_101=Magie*1 ;
Magie_102=Magie*2 ;
Magie_103=Magie*3 ; .......

Ai-je bien compris la suggestion d' Integer?

Au lieu du code de fonction dans lequel les magiciens sont des numéros :

Serait-il correct de le régler comme ceci ? -


int getNextOrderNum(int Магик) {
   int Res=Магик+1;
   if (Res>MagicMax) Res=MagicMin;

   return (Res);
}
 
Merci, Victor. Je vais essayer.