2017년 컴퓨터제어프로그래밍 과제리스트
(1) Bouncing Ball
그림과 같이 화면을 구성하고 지시와 같이 동작하도록 프로그램을 작성하라. (부과 3월 15일. 제출 3월 22일)
- PictureBox로 만든 ball이 우측 하단으로 이동한다.
- (1) 벽에 부딪히면 반대로 움직인다. 상하좌우 4개의 벽에 대해 모두 반동한다.
- (2) Slow/Fast 라디오 버튼 선택에 따라 움직이는 속도를 변하게 한다.
- (3) 볼의 색이 폼의 중심에서 멀어지면 빨간색, 중심으로 가까워지면 파란색이 되도록 한다.(옵션 추가)
- 실행 화면을 캡쳐하여 구성 컨트롤 요소의 이름을 표기한 그림을 넣고, 소스를 넣은 보고서를 제출한다.
(2) 비트조작
다음과 같이 화면을 구성하고 지시와 같이 동작하는 프로그램을 작성하라. (부과 3월 22일. 제출 3월 29일)
(3) 2차 최소자승법
다음과 같은 문제를 풀어 화면에 그 그래프를 그려라. (부과 3월 29일. 제출 4월 5일)
(4) 몬테카를로 시뮬레이션
다음과 같은 프로그램을 작성하라. (부과 4월 5일. 제출 4월 12일)
- 삼각형의 면적 계산과, 삼각형에 대한 IN/OUT 판정은 반드시 별도 함수로 작성하라. 함수의 원형은 자유롭게 한다.
(5) 클래스의 다형성
아래 실습 프로그램에 사각형의 Rectangle 클래스와 삼각형의 Triangle 클래스를 추가하라. 화면에 사각형과 삼각형이 그려지고 각각의 갯수도 표시되도록 한다. (부과 4월 12일. 제출 4월 19일)
- Rectangle/Triangle 클래스는 Geom의 파생클래스가 되도록 하고 override된 Draw() 함수를 정의하여 다형적으로 호출되도록 한다.
(6) 그림 그리기
수업시간에 실습했던 원 그리기 프로그램에 아래와 같이 포함되는 원 지우는 기능을 추가하라. 프로그램이 객체지향적이 되도록 함수를 위치시켜라. (부과 4월 26일. 제출 5월 10일)