뻘짓 하며 얻은 기본기 3 함수
함수 듣기만해도 수학의 냄새가 나는가? 함수의 정의부터 한번 읊고 넘어가자. 구글에 함수를 찾아보면 이렇게 나온다.
함수란 어떤 집합의 각 원소를 다른 집합의 유일한 원소에 대응시키는 이항 관계다.
이해 되는가? 벌써 집합, 원소, 이행 관계를 보니 포기하고 싶어지는가? 조금 딴 소리를 하자면 컴퓨터 공부가 이러하다.
언어라는 장르이기 떄문에 한 정의를 공부하다 보면 이처럼 여러 모르는 단어가 또 튀어나온다.
그래서 모르는 단어를 또 찾아들어가야 되는 문제가 있다. 미리 팁을 드리자면 그때마다 모르는 단어를 정리해놓기를 바
란다. 안 그러면 나중에 또 찾아봐야 되는 문제가 종종 발생할 것이다.
전 챕터에서 입력값과 출력값을 배우지 않았던가? 또한 우린 수학을 공부하려는 것이 아니다.
저 위에서 나오는 함수의 정의는 잊어도 된다. 그냥 간단히 입력값과 출력값이 대응하는 관계이다.
즉 입력값에 출력값이 연관되어 있는 것이 함수이다.
다시 컴퓨터의 과거로 돌아가보자
계산기는 무언가 숫자를 입력하고 무언가 연산을 입력하여 결과를 도출해 낸다.
예를들어 3을 입력하고 +를 입력한 뒤 6이라는 수를 다시 입력하면 원하는 9라는 숫자를 도출해 낸다.
여기서 입력값은 3이고 함수 안에 들어가 있는 연산은 +6이다. 그리고 출력값은 3+6의 결과인 9
이게 함수다. 입력값에 무언가 일정하게 못된 짓을 하여 출력값으로 도출해 내는 것.
즉 함수는 결과를 빠르게 내기 위한 도구이다.
만약 위의 예시에서 입력값을 10으로 바꾸면 16이 나올 것이고 200을 입력하면 206이 나올 것이다.
반대로 함수 안의 +6을 고쳐서 *100을 한다면(컴퓨터 언어에서 곱하기는 *로 표현한다) 곱하기 100을 할것이다.
이처럼 원하는 값을 빠르게 한번에 내기 위한 도구 그것이 함수이다. (어디서 들어본적 있는 내용 아닌가? 계산기에서)
물론 컴퓨터에서 저렇게 간단한 더하기 빼기를 만들겠다고 함수를 만드는 것은 아니다. 그런것도 가능하긴 하지만
입력값을 3을 넣었을 때 함수 안에다가 (입력값을 더한 뒤, 곱하고 , 나누고, 그리고 그것이 2보다 작을 때는 100을 곱하
고 2보다 클
때는 10을 더하는.....) 뭐 이러한 내용을 준비시키고 결과를 짠 하고 도출해 낼때 쓴다.
함수는 간단하다. 입력이 있고 출력이 있는...
나중에 함수에 괴롭게 되더라도 이것은 변하지 않는다. 기억해두자.
오늘의 저엉리: 함수는 원하는 출력값을 만들기 위한 계산기