이번에는 단순한 기능을 수행하는 함수들을 직접 만들고 호출해서 사용하는 실습을 진행할게요.
함수 만들기 실습은 작성할 함수가 해야 할 일을 분석하는 것부터 시작하며 이런 작업을 도메인(Domain) 분석이라고 불러요.
도메인 분석이 끝나면 적당한 이름을 결정하고 입력 매개변수 리스트와 반환 형식을 결정할 거예요.
그리고 테스트 코드를 작성한 후에 실제 함수를 구현하는 순서로 실습할게요.
여러분은 함수 만들기 과정을 통해 기본적인 알고리즘 논리 전개와 함수 원형을 결정하는 능력을 키워야겠죠.
어떤 종류의 프로그래밍 언어를 사용하더라도 이러한 능력은 필수적으로 필요해요.
여러분은 각 단계별로 진행하고 난 후에 책의 내용과 비교해 보세요.
만약 책의 내용을 본 후에 따라하기 형태로 학습하면 시간은 적게 들겠지만 프로그래밍 능력은 별로 늘지 않을거예요.
그리고 알고리즘 논리를 전개하는 능력은 다양한 프로그래밍을 통해 키울 수 있어요.
따라서 이 책에 소개한 것을 해 보는 것으로는 부족해요.
이 책을 학습한 후에 알고리즘과 자료구조에 관한 책을 추가로 학습할 것을 권해요.
그리고 다양한 형태의 시나리오를 만들어 프로그래밍해 보는 적극적인 자세가 필요하겠죠.
작성할 함수 소개
이번 함수 만들기 실습에서 여러분이 작성할 함수의 기능을 제시할게요.
a. 범위 내의 정수 합계를 구하는 함수
b. 특정 수가 소수(Prime Number)인지 판단하는 함수
c. 범위 내의 정수중에 소수(Prime Number)의 개수를 구하는 함수
d. n 개의 정수의 합계를 구하는 함수
e. 두 수를 바꾸는 함수
f. n 개의 정수에서 제일 큰 정수가 있는 메모리 주소를 구하는 함수
g. n 개의 정수를 크기 순으로 정렬하는 함수(내림차순, 선택 정렬 알고리즘으로 정렬)
여러분은 먼저 도메인 분석부터 해 보세요.
도메인 분석
함수명 결정
함수 원형 결정
테스트 로직 작성
구현
'언어 자료구조 알고리즘 > 디딤돌 C언어' 카테고리의 다른 글
66. 구현 (0) | 2016.01.01 |
---|---|
65. 테스트 코드 작성하기 (0) | 2016.01.01 |
64. 함수 원형 결정 (0) | 2016.01.01 |
63. 함수명 결정 (0) | 2016.01.01 |
62. 도메인 분석 (0) | 2016.01.01 |
60. 상수화 변수 (0) | 2016.01.01 |
59. 정적 변수 (0) | 2016.01.01 |
58. 지역변수 (0) | 2016.01.01 |
57. 전역 변수 (0) | 2016.01.01 |
56. 매개변수 전달 원리 (0) | 2016.01.01 |