klm1118   6년 전

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다.

continue;를 하는 조건문에서는 공백 시작, 공백 끝남, 빈줄 주어짐, 입력글자가 100자가 넘는지를 체크하는 곳입니다.

int i;는 입력이 최대 100줄이 넘어가지 않도록 하기 위함 입니다...

어느 부분에서 잘못됬는지 지적 부탁드립니다.


djm03178   6년 전

입력이 100줄 미만으로 주어지면, getline이 더이상 읽을 게 없어서 str에 아무 변화를 안 주고 반환해버립니다. 그 결과, 마지막 줄에서 읽었던 내용이 그대로 남은 채로 출력이 됩니다. cin.eof() 를 활용해서 입력이 끝났을 때 종료시켜야 합니다.

그리고 10~15 줄은 전혀 필요하지 않은 코드입니다.

kimsy96   6년 전

문제에서 요구한 것 이외의 것을 출력하면 안됩니다.

"입력 오류입니다" 라는 말을 출력하라는 말이 없지않나요

djm03178   6년 전

입력 조건에 맞지 않는 입력의 경우를 조사하신 거라, 저게 출력될 일은 절대 없습니다. 그냥, 필요하지 않은 코드일 뿐입니다.

kimsy96   6년 전

아 그렇네요

출력될 일은 없겠네요

댓글을 작성하려면 로그인해야 합니다.