본문 바로가기

코딩에서의 "함수"와 수학적 "함수"차이가 머에요?

@Salieri2025. 10. 2. 15:32

 

고등학교까지의 수학적인 지식을 갖고,

대학교에 가서 수학적 지식을 배운다면,

수학의 기반 자체를 무너뜨리고 처음부터 다시 배워야할 정도라고 생각이 들 때가 있는데.

이것은 고작 "3년"의 시기 동안에, "수학" 을 얼마나 깊이 배울 수 있겠는가를 먼저 고려해야한다.

 

대학교 4년의 시기 동안의 배운 모든 지식이 "회사" 업무를 배우는데 있어서 "활용"되지 않는 것처럼 말이다. 애초에 회사에서 사용하는 "실무적 지식"과 대학교에서 활용되는 "생각의 깊이 자체는 절대 같지 않기 때문이랬다.

 


 

수학의 함수

Definition:
수학에서 함수는 한 집합(정의역)의 각 원소를 다른 집합(공역)의 정확히 하나의 원소에 대응시키는 규칙이다

 

 

함수의 개념을 알려주는 "상자"

 

예:
f(x)=x2f(x) = x^2
→ 정의역: 실수 전체, 공역: 실수 전체
→ 입력값 xx를 넣으면 출력값 x2x^2이 반드시 하나 정해짐

특징:

  • 입력이 같으면 항상 출력이 같다 (순수성).
  • 함수는 **상태(state)**나 **부작용(side effect)**이 없음.
  • 입력과 출력의 관계만 중요.

 

 

 

프로그래밍에서의 함수

  • 특정 작업을 수행하는 코드 블록
    • 입력(매개변수)을 받을 수도 있고, 안 받을 수도 있음
    • 결과값(출력, return)을 돌려줄 수도 있고, 안 돌려줄 수도 있음
  • 출력(return)은:
    • 없음 (void)
    • 하나 (대부분의 언어 기본 방식)
    • 여러 개 (Python 같은 언어에서는 튜플, 객체 등으로 반환 가능)

예시:

 

# 출력이 없는 함수
def greet(name):
    print("Hello,", name)

# 출력이 하나인 함수
def square(x):
    return x * x

# 출력이 여러 개인 함수
def calc(x, y):
    return x+y, x-y, x*y
 
 

 

 핵심 차이

  • 수학 함수: 반드시 입력이 하나의 출력으로 대응됨 (순수, 예측 가능).
  • 프로그래밍 함수: "하나의 출력"이라는 제약 없음. 부수 효과(side effect, 예: 화면 출력, 전역 변수 변경)도 허용됨.

 

 

 

Salieri
@Salieri :: 살리에리의 인생살이 채널

평소에 내가 좋아하는것과 싫어하는 것들 그리고 왜 안되나 싶은 것들을 업로드 하는 블로그입니다 인생살이도 업로드 하고있어요. 제가 걸어온 길이 당신에게 있어서 도움이 되는 이정표였으면 좋겠네요. 질문은 항상 넓은 마음으로 받고있답니다. 대답하기 곤란한 질문이 아닌 이상 제에게 이메일을 써주세요 트위터 : https://twitter.com/@Salieri1845799 깃허브 : https://github.com/salieri009

공감하셨다면 ❤️ 구독도 환영합니다! 🤗

목차