SSE2032: System Software Experiment 1 (Spring 2018)

[Programming Assignments]

hw1 score

Average : 69.4

PA#1 (Due: 5/12(Sat.) 11:59pm / Last update: 5/6(Sun.), 12:00PM)

  • Skeleton code
  • 제출 기한이 변경되었습니다. (~5/12 11:59pm)
  • register_book과 register_user에서 잘못된 값을 입력하는 testcase는 수행하지 않습니다. 즉, register_book이나 register_user를 수행하게 되면 무조건 valid한 book 혹은 user가 추가되는 케이스만 테스트 하겠습니다.
  • print에서 같은 카테고리에 있는 책들끼리의 배열은, order에 상관없이 index 오름차순으로 배열해주세요.
  • query에서, 대소문자를 구분하지 않습니다. 즉, The로 검색을 할 때와 the로 검색을 할 때의 결과는 같아야 합니다.
  • print에서 borrowed_by로 검색을 할 시, 오름차순, 내림차순 상관없이, BORROW된 책들 부터 먼저 나와야합니다. 또한 모든 영문자로 시작하는 title들은 반드시 대문자로 시작합니다.
  • 책을 return한 후 wait list에 있는 대상(A)이 이미 책 4권을 소지하고 있는 경우, A는 wait list에서 제외하고, 그 다음에 기다리고 있는 user(B)에게 양도해주세요. 만약 B역시 이미 책 4권을 빌린 상태라면 C에게 양도해주세요.
  • Index로 query를 진행할 경우, 반드시 해당 index에 맞는 책만 출력해야 합니다. 예를 들어 1로 검색을 하였을 때 index no. 11, 10, 21과 같은 책들은 출력하면 안됩니다.

PA#2 (Due: 5/23(Wed.) 11:59pm / Last update: 5/14(Fri.), 04:00PM)

[Notice]

  • Skeleton code가 변경되었습니다. (초단위 실행 시간 측정 추가) (18.05.18 18:00pm)
  • Input text가 변경되었습니다. (18.05.14 04:00pm)
  • Answer text가 변경되었습니다. (18.05.14 04:00pm)
  • 단어 중간의 -와 '는 단어로 인정하되, 단어의 첫 글자는 알파벳이어야 합니다.
  • 단어 -와 ' 또한 아스키코드 순으로 정렬합니다. (': 39, -: 45)
  • 한 단어가 같은 줄에서 여러 번 사용된 경우, 줄 번호를 여러 번 기입합니다. (ex. abc: 2, 10, 10 / abc라는 단어가 10번 줄에서 2번 사용)
  • Diff 사용 방법: 아래와 같은 커맨드를 사용하면, diff.out에서 두 파일의 차이를 확인할 수 있습니다.
    $ diff answer.txt my_answer.txt > diff.out
  • 숫자가 하나라도 포함되어 있는 단어는 무시 바랍니다.
  • 프로그램 실행 시간 기준 (1분 이내 통과 / 초과하는 경우에는 전체 결과에 따라 약간씩 차등을 두겠습니다)
  • 제출 양식은 "학번.tar" 이며, 파일은 "hw2.c", "Word로 작성한 보고서(없을시 한글로 작성)" 두 개만 압축 바랍니다.