0
필자는 익숙하지 않은 해싱을 사용하여 작성해야하는 프로그램이 있으며 실제로 이해하지 못합니다. 지금 나는 내가 읽는 단어 사이의 공백을 계산하는 데 어려움을 겪고있다. 문자가 하나의 공백으로 분리되어 있고 일단 코드가 읽히는 경우 두 개의 공백으로 분리된다. 내 디코드 함수 잘 작동하지만 공간을 계산하는 방법을 모르겠습니다. 내가 시도한 한 가지가 있지만 도움이되지 않는다면 큰 도움이 될 것입니다.MorseCode Decoder 해시 계산 및 공백 계산에 문제가 있음 C++
string tmp;
MORSE TABLE[20];
int j = 0, f = 0, k = 0;
char x;
while(!infile.eof())
{
infile >> tmp;
infile.get(x);
if(x == ' ') //check if x is a space
{
infile.get(x); //read next character
if(x == ' ') //check and see if next char is a space
{
TABLE[k].insert(' '); //insert space into char array for printing
}
}
if(j >= f) //if true create new object
{
k++; f+=100;
}
TABLE[k].decode(tmp);//pass in string to decode
j++;
}//end while loop
도움을 주실 수 있습니다. 나는 매우 진보 된 C++ 사람이 아니라 초보자입니다.
감사합니다. 중대한 도움 나는 두번째 if 진술을 위해 peek()을 사용하는 것을 끝내었고 그것은 내가 필요로하는 것을하기 위해 밝혀졌다. 그러나 응답에 감사드립니다. – bwin