Read an unknown number of lines from console in c++에서 제 질문에 대한 답을 얻었습니다. 그러나 여전히 솔루션은 나를 위해 작동하지 않습니다. 도와주세요. 이것은 특정 질문을 위해 구현 한 완전한 코드입니다. 첫 번째 블록은 여러 줄을 읽는 코드입니다.알 수없는 행 수를 읽음 C++
#include<iostream>
#include<string>
#include<stdlib.h>
#include<vector>
using namespace std;
int main()
{
vector<int> numbers;
string line;
int num = 0,rem = 0,count=0;
while(getline(cin,line))
{
if(line.empty())
{
// cout<<"line check successful"<<endl;
break;
}
numbers.push_back(atoi(line.c_str()));
}
cout<<endl;
for(int i =0;i<numbers.size();i++)
{
num = numbers[i];
for(int j=1;j<=num;j++)
{
while(j)
{
rem = j % 10;
if(rem != 3 || rem !=7 || rem!=9)
{
j = j/10;
continue;
}
count ++;
j = j/10;
}
}
cout<<count<<endl;
count = 0;
}
}
그것의 첫 번째 부분은 알 싫군 라인을 읽을 ALGO이다. 그러나 빈 반환 또는 입력없이 그냥 누르면 루프가 멈추지 않습니다. 어디서 잘못 될지 지적 해 주시겠습니까? 미리 감사드립니다. 코드의이 부분에서
제목이 질문과 아무런 관련이 없습니다. 무한 루프를 없애기 위해 수학을 확인하십시오. – yngccc
코드를 디버깅 했습니까? 일부 변수를 인쇄하십시오. – keyser
@yngum 첫 번째 블록을 확인하십시오. 즉, 콘솔에서 입력 된 내용을 읽는 부분입니다. 그 무한 루프가 진입을 멈추게해야합니다. 나는 지금 분명하다. –