のは、次の例を想定してみましょう:forループの繰り返しを繰り返す方法C#?
int Lenght = 10;
for(int i = 0; i < Length; i ++)
{
if(i == 5)
{
}
}
はのは、I = 5で言ってみましょう、私はループが条件(X)まで繰り返したくは他の反復に進む前に、満たされています。条件文(x)が利用できるようになるまでif文を実行し続けるにはどうすればよいですか?
のは、次の例を想定してみましょう:forループの繰り返しを繰り返す方法C#?
int Lenght = 10;
for(int i = 0; i < Length; i ++)
{
if(i == 5)
{
}
}
はのは、I = 5で言ってみましょう、私はループが条件(X)まで繰り返したくは他の反復に進む前に、満たされています。条件文(x)が利用できるようになるまでif文を実行し続けるにはどうすればよいですか?
実際には良いことではありませんが、次のことができます。あなたは何をしようとしているのですか?
for (var i = 0; i < 10; i++)
{
if (i == 5)
{
while (!condition(x)) { }
}
}
@InBetweenありがとうございましたが、私は5にカウンタを設定することが可能であり、それが他のものをやり終えるまでその点に留めておき、それを通常どおり増やすことができますか? –
int Lenght = 10;
for(int i = 0; i < Length; i ++)
{
// this loop iterate through all values
// lets say at i = 5, I want the loop to repeat until conition (x) is met
// before continuing to other iterations
if(i == 5)
{ // For example sake assuming x is an int and 10 is your exit val
// Post more code for a better answer
while (x != 10)
{
x++;
}
}
}
条件(x)は私に
を満たされるまで、これはあなたのように聞こえるI = 5で、私はループを繰り返したいと言うことができますx
が満たされるまでループが同じロジックを実行するようにします。たとえば、ループの各繰り返しでi
の値を印刷していた場合は、x
が満たされるまで5
を印刷し続けたいとします。
そのため、代わりにfor
ループを使用するのでは、私が代わりにwhile
ループを使用することをお勧めしたい:
をcontinue
文がi++
文はできませんを意味し、その次の反復へのループを移動x
の条件が満たされるまで実行されます。 i
の値を印刷についての私の例で行く
は、あなたが数字10
から1
を印刷したかったが、あなたは5
3回を印刷したいとしましょう。あなたはこのようにそれを行うことができます:
int length = 10;
int i = 1;
int x = 1;
while (i <= length)
{
Console.WriteLine(i);
if (i == 5 && x < 3)
{
x++;
continue;
}
i++;
}
出力する:
1
2
3
4
5
5
5
6
7
8
9
10
あなたはあなたが何をしようとして説明する必要があります。私があなたを正しく理解していて、何らかの条件が満たされるまで同じトップレベルのループを続けたいと思うなら、私は単にカウンタをリセットするだけです。例えば'if(i == 5 &&!condition){i = 4;}'。ループカウンターはそれを再び5に増分します。 –
だから私はカウンタをi = 4にすることができるということを意味しています。 –
あなたがやっていることはブロッキング操作です。つまり、ループカウンタを変更すると、条件が満たされるまで内部whileループに座ることができます。 – Snympi