This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
|
class:os2014f:hw9 [2014/11/21 02:18] mhshin created |
class:os2014f:hw9 [2025/10/13 12:45] (current) |
||
|---|---|---|---|
| Line 8: | Line 8: | ||
| - 현재 데이터베이스에 저장되어 있는 모든 (이름, 점수)를 출력한다. | - 현재 데이터베이스에 저장되어 있는 모든 (이름, 점수)를 출력한다. | ||
| - 데이터 추가 (insert) | - 데이터 추가 (insert) | ||
| - | - 이름과 점수를 입력하면 그 이름이 데이터베이스에 존재하지 않으면 새로운 데이터를 추가하고 이미 존재하면 점수를 새로 입력된 값으로 수정한다. 추가가 되었는지 수정이 되었는지를 메시지 출력. | + | - 이름과 점수를 입력하면 그 이름이 데이터베이스에 존재하지 않으면 새로운 데이터를 맨 마지막에 추가하고 이미 존재하면 점수를 새로 입력된 값으로 수정한다. 추가가 되었는지 수정이 되었는지를 메시지 출력. |
| - 데이터 삭제 (remove) | - 데이터 삭제 (remove) | ||
| - 이름을 입력하면 해당 인물의 데이터를 삭제한다. 존재하지 않으면 해당 메시지 출력. | - 이름을 입력하면 해당 인물의 데이터를 삭제한다. 존재하지 않으면 해당 메시지 출력. | ||
| Line 16: | Line 16: | ||
| - 프로그램을 종료한다. | - 프로그램을 종료한다. | ||
| + | ====== 제출기한 ====== | ||
| + | |||
| + | 11월 24일 오후 1시 | ||
| ====== 실행 예 ====== | ====== 실행 예 ====== | ||
| Line 69: | Line 72: | ||
| Enter name : cinamorole | Enter name : cinamorole | ||
| Enter score : 50 | Enter score : 50 | ||
| + | |||
| #### MENU #### | #### MENU #### | ||
| 1. print all | 1. print all | ||
| Line 84: | Line 88: | ||
| cinamorole : 50 | cinamorole : 50 | ||
| ---------------- | ---------------- | ||
| + | |||
| #### MENU #### | #### MENU #### | ||
| 1. print all | 1. print all | ||
| Line 136: | Line 141: | ||
| Choose >> 4 | Choose >> 4 | ||
| Enter name : jiyoon | Enter name : jiyoon | ||
| - | does not exist in the database. | + | jiyoon does not exist in the database. |
| #### MENU #### | #### MENU #### | ||
| Line 151: | Line 156: | ||
| ====== 제출할 것 ====== | ====== 제출할 것 ====== | ||
| - | 다음 파일에서 class ScoreBook을 정의하여라. 코드의 다른 부분은 건들지 말 것. (단 오류가 있으면 수정하고 수정한 내용을 적어서 제출) | + | 다음 파일에서 class ScoreBook을 정의한 후, 전체 파일을 cpphw9-<학번>.cpp로 제출한다. 코드의 다른 부분은 건들지 말 것. (단 오류가 있으면 수정하고 수정한 내용을 적어서 제출) |
| <code> | <code> | ||
| Line 237: | Line 242: | ||
| } | } | ||
| </code> | </code> | ||
| + | |||
| + | ====== 힌트 ====== | ||
| + | * 파일의 데이터를 읽을 때에는 반드시 이름의 길이를 체크하여 0인 데이터는 무시한다. | ||
| + | * map형식의 데이터를 반드시 사용한다. 하지만, map의 활용범위는 프로그램 설계에 따라서 다를 수 있음. | ||
| + | * 방법 1: 파일 입출력을 위주로 하고 map은 필요한 경우만 사용한다 | ||
| + | * 방법 2: 파일 입출력을 최소화 하고 모든 작업을 map을 활용한다 | ||
| + | * 두 방법 사이에 가산점은 없음 | ||
| + | * exception을 이용한 에러처리는 가산점 있음. | ||
| + | |||