함수에 값을 넣으면 함수는 계산된 값을 돌려준다. 이것이 바로 함수의 핵심이지요. 프로그래밍에서도 마찬가지입니다. 지금까지 우리가 만든 함수들은 일은 열심히 하지만 돌려주는 것은 없었지요. 그렇다면 이젠 일도 하고 결과를 돌려주기도 하는 함수를 만들어 봐야겠죠?
위의 그림과 같은 역할을 하는 함수 0라는 값을 돌려줍니다. 따라서, 그 값을 다시 1라는 변수에 넣을 수도 있는 거죠.만약, 함수를 정의할 때 2 대신에 3라고 썼다면 어떻게 될까요?
4이라고 하면 5 함수가 실행되어 0가 화면에 나타나지만 7에게 값을 반환하지는 않죠. 그래서 7를 프린트해보면 아무 값이 없다는 뜻으로 9이 출력됩니다.어떠세요? 이제 함수가 값을 반환하는 것에 대해서 이해가 되시나요? 그렇다면 값을 반환하는 함수를 직접 만들어 보실 차례입니다. 삼각형의 넓이를 구하는 함수를 만들어보세요. 함수의 인자로는 삼각형의 밑변과 높이가 주어지고, 반환(return) 값은 삼각형의 넓이가 되는 겁니다. 간단하겠죠? 문제를 풀어보신 분께는 신기한 것을 하나 알려드리겠습니다. 아직 안 풀어보셨으면 빨리 해보세요. 다 풀어보셨죠? 그럼, 알려드리도록 하겠습니다. 참과 거짓1 더하기 1은 2 맞죠? '참', '거짓'으로 대답해보세요. '참'이라고 대답하셨나요? 그럼 파이썬은 이 질문에 어떻게 대답할까요?
참이라고 답을 하네요.
이건 거짓이라고 하구요. 다음의 if 문을 보세요. 1 + 1이 2가 맞으면 'yes'라고 대답하고, 그렇지 않으면 'no'라고 대답하겠죠?
방금 알려드린 것과 함께 생각을 해보면 0라는 식이 1(참)이면 2를, 3(거짓)이면 4를 프린트한다는 걸 알 수 있습니다.우리가 함수를 만들 때 이런 성질을 활용하면 도움이 되겠죠? 쉬운 덧셈 문제를 내는 함수를 만들어 보겠습니다.
5이라는 함수는 사용자로부터 문자열 입력을 받는데 쓰이구요, 6 함수는 문자열을 정수로 바꿔줍니다. 예제에서는 5 함수가 8이라는 문자열을 출력한 다음 사용자로부터 문자열을 입력 받아 그 값을 9라는 변수에 넣어줬습니다. c언어 프로그램 return 문의 역할C언어 알고리즘 2015. 7. 29. 17:04 c언어 프로그램 return 문의 역할 ■ '돌아오다'라는 의미의 return을 c언어에서도 사용하는데요. 이 return 문에 대해서 간단하게 정리해볼까 합니다. return은 함수의 끝에 입력돼서... 해당 함수를 호출한 곳으로 데이터를 반환하는 역할을 하고 또 하나의 기능은 함수의 종료를 알리는 역할을 합니다. 먼저 값을 반환하는 예제를 하나 살펴보겠습니다. ▲ 예제의 내용은 반환되는 자료형이 int형인 hap() 함수를 만들었구요. 매개변수로 x, y를 받아서 각각 a와 b 변수에 저장한 후 그 값을 더해서 반환하고 있는 형식입니다. 이때 retrun c;에서 c는 반드시 반환되는 자료형과 같은 int형 이어야 합니다.
main() 함수에서는 hap() 함수를 호출하면서 10과 20의 인자를 전달하고 있는데요. 반환되는 값은 int형 c의 값이겠죠? 30이 돌아와서 res에 저장돼고 출력됩니다. 프로그램을 실행해서 확인해볼게요. ▲ 이렇게 return 문의 역할은 함수를 실행하고 호출한 곳으로 값을 반환하는 역하을 합니다. 다음은 함수를 종료하는 역할을 하는 return 문입니다. 일반적으로 생각할 때 반환되는 값이 없는 함수라면 return을 사용할 수 없다고 생각할 수도 있는데요. 그렇지 않습니다. 다음과 같이 함수의 끝을 알리는 역할을 할 수도 있습니다. ▲ hap() 함수는 역시 두 개의 수를 받아서 합을 구한 후 반환하지 않고 바로 그 값을 출력하고 있는 모습입니다. 반환형 자료형 자리에 void가 있어서 반환되는 값이 없다는 걸 알 수 있구요. return은 단순하게 함수의 종료를 알리는 역할만 담당하고 있습니다. |