[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 83

 
Geowind64:

Roman, merci pour la réponse..... Malheureusement, je ne comprends toujours pas une chose. Dans le manuel, https://book.mql4.com/ru/basics/expressions, sous "Approche par type". Option 4.1. Calcul du résultat d'un type d'entier

et la variante 4.2 . Une situation similaire se produit lorsque l'on cherche un résultat en tant que valeur d'un type réel", la même formule est donnée, mais dans un cas, le type de la variable F est dénoté comme étant int.

et dans le second exemple, la variable est double

Malheureusement, je ne comprends toujours pas la logique de cette conversion. Si dans la première variante il est clair pourquoi int est assigné à la variable F (c'est-à-dire, selon la règle de la conversion implicite de type), alors pourquoi double.... est assigné dans la deuxième variante m'embrouille totalement.

Veuillez clarifier ce que j'ai pu manquer dans mes explications ici ?

Merci d'avance.

Eh bien, il y a des choses assez complexes décrivant les particularités du travail du compilateur qui ne sont pas vraiment nécessaires en pratique. On peut les sauter sans risque.

La seule chose que nous devons retirer de tout cela

  • si une expression contient des opérandes de différents types, le type de l'expression est converti en type avec la priorité la plus élevée ; les types int, bool, color et datetime ont une priorité égale, le type double - une priorité plus élevée, le type string - la plus haute priorité ;
  • si le type de l'expression à droite du signe de l'opération d'assignation ne correspond pas au type de la variable à gauche du signe de l'opération d'assignation, alors la valeur de l'expression est transférée au type de la variable à gauche du signe de l'opération d'assignation ; ceci est appelé un transfert au type cible ;
  • la conversion de valeurs de type chaîne en tout autre type de cible est interdite.

Comme pour les exemples, il suffit d'écrire les types

int = double + int (Tout ce que vous dites, c'est que le int à droite du signe plus est converti en double, puis les opérandes sont additionnés et le résultat est converti dans le type de la variable assignée).

double = double + int (à peu près la même chose, mais sans la dernière conversion, le double est immédiatement affecté)

 
Roman.:

Les gars, que signifie #INF - est-il en dehors de la plage autorisée du double ? Voir la deuxième ligne en partant du haut (elle compte le produit du double TWR, c'est-à-dire que sa valeur précédente est multipliée par la suivante). Comment est-il correct de compter CES valeurs prises par la variable TWR ?

Je me demande. Que #INF apparaisse un jour à la place de l'équilibre aussi ? :) :) :)

 
Roman.:

Les gars, que signifie #INF - est-il en dehors de la plage autorisée du double ? Voir la deuxième ligne en partant du haut (elle compte le produit du double TWR, c'est-à-dire que sa valeur précédente est multipliée par la suivante). Quelle est la manière correcte de compter ces valeurs prises par la variable TWR ?

l'infini... ne peut être traitée qu'en réduisant l'appétit, les valeurs de TWR sont trop importantes.
 
splxgf:
l'infini est l'infini... ne se soigne qu'en réduisant l'appétit, les valeurs du TWR sont trop élevées.

Oh, vraiment ?

Certains Smarties ne font pas le tour de la montagne, ils vont dans l'autre sens, seulement en montant et en descendant ! :)))))

 
MaxZ:

Je me demande. Est-ce que #INF pourrait aussi apparaître à la place de l'équilibre ? :) :) :)


Pas drôle. Je préfère avoir quelque chose à faire...

 
splxgf:
C'est l'infini... ne peut être traitée qu'en réduisant l'appétit, les valeurs de TWR sont trop élevées.


Que faire ?

regarde ici - tout est là, tout est dans les règles... Tous les appétits - strictement en accord avec la méthodologie de R. Vince.

 
Roman.:


Pas drôle. Vous feriez mieux d'en venir au fait...

J'ai écrit ma suggestion sur la page précédente.

 
Roman.:


Que faire ?

voir ici - tout est là, tout est dans les règles... Tous les appétits sont strictement conformes à la méthode de R. Vince.


Peut-être que dans la semaine je trouverai une meilleure façon de le faire. Mais occupé par ma tâche la plupart de mon temps libre.
 
Vinin:

Peut-être que dans la semaine, je réfléchirai à la meilleure façon de le faire. Mais occupé par ma tâche la plupart de mon temps libre.

Merci, Victor.
 
MaxZ:

J'ai écrit ma suggestion sur la page précédente.


Désolé, je n'avais pas remarqué... :-)))

Je l'ai vérifié plusieurs fois - il n'y a aucune erreur, tout est strictement conforme aux formules.

Apparemment, il est nécessaire de diviser le produit en plusieurs parties, puis de les comparer... Plus d'informations ici.