여기에 문제의 프로그램이 있습니다. 무한 루프가 발생하는 이유는 무엇입니까? 벡터프로그램에서 무한 루프가 발생합니다.
#include <vector>
#include <iostream>
using namespace std;
class Workshop
{
public:
int pictureFrames(vector<int> pieces);
};
int Workshop::pictureFrames(vector<int> pieces)
{
int count = 0;
for (int i = 0 ; i < pieces.size() - 2 ; i++)
{
for (int j = i + 1; j < (pieces.size() - 1) ; j++)
{
for (int k = j + 1; k < (pieces.size()); k++)
{
bool possible = (pieces[i] + pieces[j] > pieces[k]) &&
(pieces[j] + pieces[k] > pieces[i]) &&
(pieces[k] + pieces[i] > pieces[j]);
if (possible)
count++;
}
}
}
return count;
}
void main()
{
Workshop w;
vector<int> pieces;
pieces.push_back(100);
w.pictureFrames(pieces);
}
미래에 코드를 강조 표시하고 'CTRL + K'를 누르거나 네 칸을 들여 쓰기하여 코드를 포맷하십시오. 각 줄을 백틱으로 감싸지 마십시오. 둘째, ['main main'은 C++에서 유효한 서명이 아닙니다] (https://stackoverflow.com/questions/204476/what-should-main-return-in-c-and-c). 셋째, Visual Studio를 사용하고 있으므로 내장 된 디버깅 도구 (즉, 중단 점 설정)를 활용하여 프로그램의 오류 위치를 확인하십시오. –
디버깅을 시도 했습니까? –
이 문제를 직접 해결하려고 시도한 것은 무엇입니까? 적절한 지점에 디버그 출력물을 넣어 두는 것이 좋습니다 – harmic