Open
Description
학생들 모두 기말고사 보느라 고생 많으셨습니다!
남은 텀프로젝트도 파이팅하시기 바랍니다.
반복 실행 가산점 항목 구현하지 않은 코드 기준의 테스트 케이스입니다.
텀프로젝트 제출 전에 한 번씩 확인해보세요.
반복 실행 구현한 경우에는 의미만 동일하게 (라인 2부터의 ./cnuled -f testfile.txt
를 빼고) 실행해보시면 됩니다.
나열한 예시는 순서대로, BEFORE(커맨드 실행 전 상태), 수행 커맨드, AFTER(커맨드 실행 후 상태) 입니다.
- append 10번 이상 실행
- 10개 이상의 줄을 넣었을 때 새로운 페이지가 잘 생성되는지
- 생각보다 에러나는 사람 많음
<Page 1>
./cnuled -f testfile.txt -a 1
./cnuled -f testfile.txt -a 2
./cnuled -f testfile.txt -a 3
./cnuled -f testfile.txt -a 4
./cnuled -f testfile.txt -a 5
./cnuled -f testfile.txt -a 6
./cnuled -f testfile.txt -a 7
./cnuled -f testfile.txt -a 8
./cnuled -f testfile.txt -a 9
./cnuled -f testfile.txt -a 10
./cnuled -f testfile.txt -a 11
<Page 1>
1
2
3
4
5
6
7
8
9
10
<Page 2>
11
- append 1번하고, insert 10번
- 10개 이상의 줄을 넣었을 때 새로운 페이지가 잘 생성되는지
- 생각보다 에러나는 사람 많음
<Page 1>
./cnuled -f testfile.txt -a 11
./cnuled -f testfile.txt -i 1 1
./cnuled -f testfile.txt -i 2 2
./cnuled -f testfile.txt -i 3 3
./cnuled -f testfile.txt -i 4 4
./cnuled -f testfile.txt -i 5 5
./cnuled -f testfile.txt -i 6 6
./cnuled -f testfile.txt -i 7 7
./cnuled -f testfile.txt -i 8 8
./cnuled -f testfile.txt -i 9 9
./cnuled -f testfile.txt -i 10 10
<Page 1>
1
2
3
4
5
6
7
8
9
10
<Page 2>
11
- insert의 인자 i가 1부터 시작
- 0부터 시작인 것으로 알고 있는 사람들 꽤 있음
- i는 존재하는 라인수 중에 몇 번째인지를 의미하는 것임
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -i 7 hello
<Page 1>
1
2
3
4
5
<Page 2>
6
hello
7
8
7번째 라인 즉, 7의 자리에 hello를 삽입하라는 의미
7과 8을 뒤로 밀어줌.
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -i 9 hello
Invalid Input!
전체 라인 수는 8인데 9를 입력 받았으므로, 유효하지 않은 입력임
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -i 0 hello
Invalid Input!
입력 받는 i 값은 1부터 시작임
첫째 줄 → i == 1
둘째 줄 → i == 2
...
- remove의 인자 i가 1부터 시작
- 0부터 시작인 것으로 알고 있는 사람들 꽤 있음
- i는 존재하는 라인수 중에 몇 번째인지를 의미하는 것임
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -r 7
<Page 1>
1
2
3
4
5
<Page 2>
6
8
7번째 라인 즉, 7을 삭제
8을 위로 당겨줌
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -r 9
Invalid Input!
전체 라인 수는 8인데 9를 입력 받았으므로, 유효하지 않은 입력임
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -r 0
Invalid Input!
입력 받는 i 값은 1부터 시작임
첫째 줄 → i == 1
둘째 줄 → i == 2
...
- append는 맨 마지막 페이지 맨 밑에 추가
- 여러 페이지가 있고, 앞쪽 페이지가 꽉 차있지 않아도 append는 무조건 맨 마지막 페이지에
- 마지막 페이지가 꽉 차있으면 그 뒤에 새로운 페이지 생성 후 추가
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
./cnuled -f testfile.txt -a hello
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
hello
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
9
10
11
12
13
14
15
./cnuled -f testfile.txt -a hello
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
9
10
11
12
13
14
15
<Page 3>
hello
- 꽉 찬 페이지에 insert
- 뒤의 모든 페이지의 라인들을 다 미는 것이 아니라, 바로 뒤에 새로운 페이지를 생성해 한 줄만 밀고 삽입
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
9
10
11
12
13
14
15
<Page 3>
16
17
./cnuled -f testfile.txt -i 10 hello
<Page 1>
1
2
3
4
5
<Page 2>
6
7
8
9
hello
10
11
12
13
14
<Page 3>
15
<Page 4>
16
17