이번에는 프로그래밍에서 가장 중요하고 기본적인 '함수'에 대해 알아보자!
어느 분야던 마찬가지지만, main문이 간결해야 한다. 그렇기 위해선 함수를 사용해야 한다. 함수는 특정한 기능을 하는 역할을 한다. 간단한 코드라도 함수를 사용하여 써넣는 것이 좋다. 그러면 가장 간단한 더하기 프로그램을 만들어보자.
문제는 다음과 같다.
기능을 하는 모든 부분은 함수로 짠다.
1. user에게 두 수(정수)를 입력받는다.
2. 입력받은 수를 더한다.
3. 더한 값을 출력한다.
4. 함수는 총 4개를 사용한다 (main()
제외)
자 그럼 어떤 함수가 필요한지 먼저 생각해보자.
user에게 두 수를 입력받기 위한 함수가 2개, 더하는 함수 1개, 출력하는 함수 1개로 총 4개로 구성하면 되구나!!!
자 코드를 작성해보자.
#include <iostream>
using namespace std;
int user_input1(void)
{
int input_a = 0;
cin >> input_a;
return input_a;
}
int user_input2(void)
{
int input_b = 0;
cin >> input_b;
return input_b;
}
int user_output(int input_a, int input_b)
{
int input_sum = 0;
input_sum = input_a + input_b;
return input_sum;
}
void user_print(int user_sum)
{
cout << user_sum << endl;
return;
}
int main(void)
{
int input_a = 0, input_b = 0;
int user_sum = 0;
cout << "숫자를 두개 입력해 주세요" << endl;
input_a = user_input1();
input_b = user_input2();
user_sum = user_output(input_a, input_b);
user_print(user_sum);
return 0;
}
코드 순서는 다음과 같다.
1.숫자를 2개 입력해 달라는 문자열을 입출력 스트림을 출력한다. 이 문자열도 함수로 만들어도 된다.
2.user_input1(), user_input2()를 통해 사용자에게 입력 받는다.
3. 입력된 값들이 더해져 user_sum에 들어간다.
4. user_sum을 user_print()를 사용해 출력한다.
5. 프로그램이 종료된다.
int user_output(int input_a, int input_b)
{
int input_sum = 0;
input_sum = input_a + input_b;
return input_sum;
}
이 코드는 변수를 사용하지 않고 이처럼 바꿀 수 있다.
int user_output(int input_a, int input_b)
{
return input_a + input_b;
}
아래와 같이 코드를 사용하는 것이 더 메모리 측면에서 유리하다. 이유는 모든 프로그램 파일의 크기가 크면 좋지 않다. 코드를 좀 더 가독성 있게 짜는 것도 중요하지만, 어떻게 하면 프로그램의 메모리를 줄이면서 좋은 프로그램을 짤 수 있는지 생각하면서 CODE를 짜도록 하자!!!!