EECE372 – (Solution)

$ 30.00
Category:

Description

문제정의
• 학교에서 제공하는 programming server를 사용하여 다음 시스템을 c언어로 구현
1. 코드 실행 시 필요한 파라미터를 전달.
§ n 값과 정렬 방식에 대한 정보를 argv를 활용하여 main 함수에 인자로 전달
§ Example
• $ ./HW1_2021xxxx 20 0 0→ n = 20 / 0 = (오름차순) / 0 = (bubble sorting)
• $ ./HW1_2021xxxx 20 1 1→ n = 20 / 1 = (내림차순) / 1 = (selection sorting)
2. 1 ≤ x ≤ n 을 만족하는 모든 3의 배수인 정수 x를 random 한 순서로 겹치지 않도록 생성.
§ 같은 n 값을 입력해도 생성되는 sequence 의 순서가 매번 달라야 함  srand(time(NULL)); 구문을 무조건 포함하도록 코드 작성
3. 아래 내용을 Bubble Sorting, Selection Sorting으로 각각 구현.
§ 함수 및 데이터 구조를 포함한 구현 방식은 자유, 프로그램의 입출력 포맷만 준수
§ 1. time 함수를 응용하여 해당 sorting 함수가 수행되는 시간을 화면에 출력 (단위: sec)
• 예시와 동일한 형식으로 출력 (^: space, : enter, 소수점 아래 6자리까지 출력)
• bubble^sort: 0.000010^sec
§ 2. n이 30 이하인 경우 sorting 전 / 후의 sequence를 화면에 출력
• 예시와 동일한 형식으로 출력 (^: space, : enter)
• before^sort:^3^24^15^6^30^9^12^27^21^18
• after^sort:^3^6^9^12^15^18^21^24^27^30 Input 예외처리
§ n은 1이상 300000 이하의 값만 입력 가능
§ 정렬 방식, Sorting 방식은 0(오름차순) 1(내림차순)의값만 입력 가능
§ 정해진 양식 외 값이 입력되면 “Error: wrong input type. ” 메시지 출력

출력 예시) 수행 시간은 다를 수 있음

평가지표
• 필수 구현 요소
ü n이 30일때 오름차순, 내림차순 결과 비교
ü n의 값이 30, 300, 3000, 30000, 300000인 상황에서 sorting 함수에 따른 평균적인 수행시간을 비교
(수행시간에 대한 표와 그래프 보고서에 기술)
• 채점 기준
동작 점수
Source code의 정상적인 동작 : 정렬방식과 n의입력에 따른 정상 실행, 랜덤 숫자 생성, sorting 함수의 정상적인 구현, 수행 시간 측정의 적절성 등 70
n값의변화에 따른 평균 수행 시간 변화의 결과와 분석 15
sorting 방식에 따른 평균 수행 시간 변화의 결과와 분석 15
Total 100
# 지정된 입출력 양식을 지키지 않는 경우 경우 감점.
# 표절율(모사율)이 높은 과제 제출시 부정행위로 판단 부정행위 적발 시 이후 과제에서 패널티를 부여하므로 주의 부정행위를 한 자, 도와준 자 모두 해당

결과물 제출
• 조교가 검사할 수 있는 source code와 결과보고서 PDF를 제출
ü 제출 방식 : 아래 두 파일을 각각 PLMS 제출 (zip파일 x)
HW1_학번.c / report.pdf
ü 실험 관련 질문은 Q&A 게시판 활용
ü 담당조교 – 이정목 (jungmok@postech.ac.kr)
ü 기재된 양식 외 제출시 패널티 부여
• 다음 내용을 포함하여 결과보고서 작성
Sec1 . 본인의 source code에 대한 설명
§ 전체적인 시스템의 flow / sorting algorithm 동작 원리 / n의 입력방식 / error 처리 등
Sec2. 선택사항에 따라 시스템이 정상적으로 동작함을 보여주는 실행 과정
§ 여러 정렬방식과 n의 입력에 따른 실행 결과 화면 캡쳐 + 간단한 설명
Sec3. n값, sorting 방식의 변화에 따른 평균적인 알고리즘 수행시간 계산, 그래프 시각
화및 분석

Reviews

There are no reviews yet.

Be the first to review “EECE372 – (Solution)”

Your email address will not be published. Required fields are marked *