Quel est le problème dans ce code Looping [fermé]
Question
Voici le problème:
Constantes: 'a', 'B', 'C', 'D';
J'ai beaucoup de variables, mais celles-ci sont interconnectés: 'x', 'y', 'z';
Pour la première itération 1 ont:
x1 = [value from other variables];
y1 = x1 + a;
z1 = y1 + x1 + b;
condition |c - z1| < d;
S'il est vrai, le programme calcule les autres éléments (de ce point, je sais que le travail), mais si la condition est fausse, nous avons quelque chose comme ceci:
x2 = x1 + e;
y2 = x2 + a;
z2 = y2 + x2 + b;
condition |c - z2| < d;
Encore une fois, si elle est fausse:
x3 = x2 + e;
y3 = x3 + a;
z3 = y3 + x3 + b;
condition |c - z3| < d;
et ainsi de suite jusqu'à ce que la condition soit remplie.
Qu'est-ce que I'am essayer de résoudre est une boucle d'extraire de la dernière itération (i) les valeurs de « xi » et « yi » à utiliser dans le développement ultérieur. Je ne peux pas les extraire à moins que la condition est remplie.
Merci.
La solution
Vous pouvez utiliser une boucle while
:
var x = // value from other variables
var y = x + a;
var z = y + x + b;
while (Math.Abs(c - z) < d)
{
x = x + e;
y = x + a;
z = y + x + b;
}