私は希望のサイズに基づいて四角形を作成するプログラムを作成しています。これまでのところ私のコードは値を読み取り、正方形の最上部を印刷しますが、私が作成したネストループのためにサイドを設定する方法についていきます。ここでの問題は、ループが存在するたびにその値をリセットする必要があることです。ネストされたループC++
ここでは、これまでに私のコードです:
#include <iostream>
using namespace std;
int main(int,char**) {
int x;
int z=1;
int l=0;
int n=0;
int q=1;
int m=0;
int o=0;
do{
cout << "Enter length between 0 and 64 (-1 to exit): ";
cin >> x;
if (x>-1&&x<64){
cout << "+";
for (;x-2!=n;++n){
cout << "-";
}
cout << "+" << endl;
}
else{
cout << "Length must be between 0 and 64 inclusive, or enter -1 to exit.";
}
do {
cout << "|";
do {
//cout << " ";
//++m;
//}while (x-2!=m);
cout << "|" << endl;
++o;
}
while (x-2!=o);
++z;
}
while (z!=5);
}
プログラムがで巻き込まれる場合コメントアウト部分は、私がMをインクリメントするときのループ、それが上に保持している間、それが何を終了するまでと思われていますそれがインクリメントされた値。私は、ループからの文の区切りを継続し、ループの新しい反復を開始することを知っているが、私はif文を作成した場合でも、do-whileループ内に収まるようにしたいとは思われないような
if (x-2==m){
continue;
}
どんな助けもありがとう
while(z = 1);は間違っています。 –
"||"はORを意味するので、-1(2000)より大きいか64(-2000)より小さい数字を選ぶことができるので、この部分: '(x> -1 || x <64)'は壊れています。 これをANDにするには '&&'を入れなければなりません。 ここでは、CとC++の演算子について詳しく知ることができます:https://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B –
@PaulRooneyループ関数を修正するために、プログラムを5回実行する必要があります。キャッチがありがとう、またはそれは永遠にループで実行されます。 –