수능 수학, 코딩의 눈으로 직관 뚫기
[코딩X수학 개념 #10] 함수의 극한과 연속 : 0.000001의 오차도 허용 않는 코딩 제어문으로 수능 4점 연속성 문항 뽀개기
안녕하세요! 함수 상자가 자기 자신을 스스로 다시 호출하며 수능 15번 단골 점화식을 척척 해결해 내는 '재귀 함수'의 메커니즘을 파헤쳤던 지난 9화 내용, 기억하시나요? 이로써 우리는 수학 하(下)와 수학Ⅰ의 까다로운 산을 한 바퀴 완벽하게 통과했습니다!
오늘 10화부터는 수능 공통과목의 꽃이자, 수능 변별력을 가르는 무시무시한 단원인 수학Ⅱ(다항함수의 미적분)의 세계로 진입합니다. 그 첫 관문은 바로 함수의 극한(Limit)과 연속성입니다.
수능 시험지 4점 배점 섹션에서 항상 출제되는 유형이 있습니다. 바로 "두 함수 $f(x)$와 $g(x)$의 곱이 $x=a$에서 연속이 되도록 하는 상수 값을 구하시오"라는 문제입니다. 대다수 학생이 그래프를 대충 칠판에 슥슥 그리며 '좌우가 이어져 있으니까 연속이겠지' 하는 대수롭지 않은 직관으로 풀다가, 출제자가 파놓은 미세한 함정에 걸려 허무하게 점수를 날립니다.
하지만 단 0.000001의 오차도 용납하지 않고 참과 거짓을 깐깐하게 따지는 컴퓨터의 오차 제어 시스템(Epsilon-Delta의 직관)과 조건문의 눈을 빌리면, 수학Ⅱ의 연속성 정의가 수능 시험장에서 실수를 완벽하게 제로(0)로 만드는 가장 강력한 무기로 재탄생합니다. 그 짜릿한 논리를 보여드리겠습니다.
1 수학의 연속성 삼조건, 코딩의 '엄밀한 비교 연산'으로 분해하기
수학 교과서에서 함수 $f(x)$가 $x=a$에서 연속(Continuity)이 되기 위해서는 다음의 3가지 조건이 '동시에' 만족되어야 한다고 명시합니다.
[교과서 속 함수의 연속 조건]
1. 함숫값 $f(a)$가 정의되어야 한다.
2. 극한값 $\lim_{x \to a} f(x)$가 존재해야 한다. (즉, 좌극한과 우극한이 같아야 한다.)
3. 극한값과 함숫값이 완전히 일치해야 한다. ($\lim_{x \to a} f(x) = f(a)$)
이 삼단계 수학 필터를 코딩으로 구현하면 컴퓨터는 어떻게 행동할까요? 컴퓨터에는 '대충 한 이쯤 도달하면 같다'는 개념이 없습니다. 아주 미세한 값인 엡실론($\epsilon = 0.000001$)을 설정한 뒤, 좌측에서 접근할 때의 결괬값과 우측에서 접근할 때의 결괬값을 소수점 아래 일곱 번째 자리까지 엄격하게 비교 연산(==)합니다.
즉, 수학의 연속성은 코딩에서 [좌극한 상자 == 우극한 상자 == 함숫값 상자]라는 조건문이 모두 참(True)을 리턴해야만 통과하는 철저한 흐름 제어 시스템인 것입니다.
2 실전 분석: 수능 단골 '끊어진 함수를 심폐소생하는 곱의 연속성' 문항
실제 수능 모의고사 4점짜리로 매번 출제되는 '불연속함수와 다항함수의 곱의 연속성' 문제를 코딩의 제어 회로로 해체해 보겠습니다.
최고차항의 계수가 1인 일차함수 $g(x) = x - k$에 대하여, 곱한 함수 $f(x)g(x)$가 $x=2$에서 연속이 되도록 하는 상수 $k$의 값을 구하시오."
우리는 $k=2$가 정답임을 눈으로 알 수 있지만, 컴퓨터가 소수점 단위의 무한 극한을 훑으며 좌우상태를 어떻게 확인해 들어가는지 파이썬 회로로 보아둡시다.
# 끊어진 함수 f(x)를 코딩 상자로 정의합니다 (4화 조건문 구조) def f(x): if x >= 2: return 3 else: return 1 # 일차함수 g(x)를 정의합니다 (상수 k는 우리가 찾아야 할 정답) def g(x, k): return x - k # [핵심] 컴퓨터 과학에서 극한을 표현하는 미세한 오차값(Epsilon) epsilon = 0.000001 # 수능 정답 후보 k를 0부터 5까지 판별해 봅니다. for k in [0, 1, 2, 3, 4, 5]: # 1. 함숫값: x = 2 일 때의 f(2)*g(2) val_fn = f(2) * g(2, k) # 2. 우극한: 2보다 아주 미세하게 큰 쪽(2 + epsilon)에서 접근 val_right = f(2 + epsilon) * g(2 + epsilon, k) # 3. 좌극한: 2보다 아주 미세하게 작은 쪽(2 - epsilon)에서 접근 val_left = f(2 - epsilon) * g(2 - epsilon, k) # [삼조건 판별] 컴퓨터에게 세 값이 소수점 단위까지 일치하는지 비교 연산을 시킵니다. # 실수의 미세 오차를 감안하여 round(반올림) 처리를 적용합니다. if round(val_left, 4) == round(val_right, 4) == round(val_fn, 4): print(f"🎯 조건 만족! 곱함수를 연속으로 만드는 상수 k의 값은: {k} 입니다!")
🧠 이 코딩적 사고가 수능 점수를 폭발시키는 이유
① '좌·우·함' 세 갈래 상자의 엄격한 동기화 :
수능 시험장에서 시간에 쫓기다 보면, 좌극한과 우극한만 비교하고 함숫값 조건체크를 빼먹거나, 혹은 그 반대의 실수로 문제를 틀리기 일쑤입니다. 하지만 위 알고리즘처럼 **[좌극한], [우극한], [함숫값]**이라는 세 개의 상자를 명확하게 쪼개어 독립된 데이터를 확보한 뒤, 마지막에 이 셋이 동시에 같은지(==) 확인하는 사고 흐름이 뇌에 이식되면, 수능 4점짜리 복합 조건 문항을 마주해도 당황하지 않고 조건들을 빠짐없이 완벽하게 통제할 수 있습니다.
② 수능 치트키 '0의 인수 성질'의 논리적 이해 :
위 코드를 돌려보면 $k=2$일 때만 정확히 연속이 됩니다. 왜냐하면 $f(x)$가 $x=2$에서 좌극한 1, 우극한 3으로 요동치고 있더라도, 파트너인 $g(2)$가 정확히 **0**이 되어버리는 순간(g(2) = 2 - 2 = 0), 좌우의 모든 불일치를 곱하기 연산으로 싹 다 무세화(0으로 흡수)시키기 때문입니다. 수능 단골 기출 원리인 '불연속함수를 연속으로 만드는 인수의 성질'이 코딩의 데이터 매커니즘을 통해 완벽한 시각적 확신으로 와닿는 순간입니다.
🎯 10화 수능 도약을 위한 핵심 노트
1. 수학의 함수의 연속성 검증은 코딩의 [좌극한 == 우극한 == 함숫값]을 비교하는 3중 흐름 제어 조건문이다.
2. 미세한 오차(epsilon)를 제어하는 감각을 기르면, 수능 그래프 문제에서 경계점의 불연속 함정을 완벽히 간파하게 된다.
3. 끊어진 함수를 이어주는 일차인수의 성질($0$의 마법)을 연산 규칙으로 이해하면, 고난도 수능 수2 문항을 3초 만에 암산으로 풀 수 있는 직관이 열린다!
다음 시간(11화) 예고:
함수가 끊어지지 않고 예쁘게 이어지는 조건을 마스터했습니다! 그렇다면 이어진 선을 넘어, 그래프의 각 점에서의 '기울기'를 구하고 선을 한층 더 정교하게 다루는 수학Ⅱ의 진인사, 수능 배점의 정점인 [미분계수(Derivative)와 도함수]의 세계를 코딩의 평균 변화율 루프 시스템으로 파헤쳐 보겠습니다. 수능 킬러 다항함수 추론의 심장부로 들어갑니다. 다음 시간에 만나요!
