Pregunta

Aquí está el problema:

Constantes: 'a', 'b', 'c', 'd';

Tengo muchas variables, pero solo estas están interconectadas: 'x', 'y', 'z';

Para la primera iteración tengo:

x1 = [value from other variables];
y1 = x1 + a;
z1 = y1 + x1 + b;
condition |c - z1| < d;

Si es cierto, entonces el programa calcula los otros elementos (desde este punto conozco el trabajo), pero si la condición es falsa, tenemos algo como esto:

x2 = x1 + e;
y2 = x2 + a;
z2 = y2 + x2 + b;
condition |c - z2| < d; 

De nuevo, si es falso:

x3 = x2 + e;
y3 = x3 + a;
z3 = y3 + x3 + b;
condition |c - z3| < d; 

y así sucesivamente hasta que se cumpla la condición.

Lo que estoy tratando de resolver es un bucle para extraer de la última iteración (i) los valores de 'xi' y 'yi' para usar en el desarrollo posterior. No puedo extraerlos a menos que se cumpla la condición.

Gracias.

¿Fue útil?

Solución

Puedes usar un while círculo:

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;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top