그래서 사용자가 원하는 크기로 사각형을 만드는 프로그램을 만들고 있습니다. 내 코드는 지금까지 값을 읽고, 사각형의 상단을 인쇄하지만, 내가 만든 중첩 된 루프 때문에 측면을 설정하는 방법에 익숙해 져 가고 있습니다. 여기서 문제는 루프가 존재할 때마다 값을 재설정해야한다는 것입니다. 여기 중첩 된 루프 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 번 실행해야합니다. 잡아 주셔서 감사합니다. 그렇지 않으면 루프에서 영원히 돌아갈 것입니다. –