- TI nspire
fmax =함수의 최대값일 때의 x값, fmin =함수의 최소값일 때의 x값
1. fmax() 함수
fMax(Expr, Var) ⇒ Boolean expression
fMax(Expr, Var,lowBound)
fMax(Expr, Var,lowBound,upBound)
fMax(Expr, Var) | lowBound≤Var≤upBound
Expr을 최대화하는 Var의 후보 값, 또는 최대값이 없을 경우 최소 상한(least upper bound)이 되는 Var의 후보 값을 정의하는 부울리언 표현식을 반환합니다.


제약 연산자("|")를 사용하여 해의 구간을 제한하거나 다른 제약 조건을 지정할 수 있습니다.
'자동(Auto)' 또는 '근사(Approximate)' 모드에서 '근사(Approximate)'로 설정한 경우, fMax() 함수는 반복적인 계산을 통해 하나의 근사적인 극댓값(approximate local maximum)을 찾습니다.
특히, "|" 연산자로 검색 구간을 하나의 극댓값만 포함하는 작은 범위로 제한하면 계산 속도가 더 빨라집니다.
2. fmin() 함수
fMin(Expr, Var) ⇒ Boolean expression
fMin(Expr, Var,lowBound)
fMin(Expr, Var,lowBound,upBound)
fMin(Expr, Var) | lowBound≤Var≤upBound
Expr을 최소화하는 Var의 후보 값, 또는 최소값이 없을 경우 최대 하한(greatest lower bound)이 되는 Var의 후보 값을 정의하는 부울리언 표현식을 반환합니다.

제약 연산자("|")를 사용하여 해의 구간을 제한하거나 다른 제약 조건을 지정할 수 있습니다.
'자동(Auto)' 또는 '근사(Approximate)' 모드에서 '근사(Approximate)'로 설정한 경우,
fMin() 함수는 반복적인 계산을 통해 하나의 근사적인 극솟값(approximate local minimum)을 찾습니다.
특히, "|" 연산자로 검색 구간을 하나의 극솟값만 포함하는 작은 범위로 제한하면 계산 속도가 더 빨라집니다.
3. 주의
위 두 함수는 최대(최소상한), 최소(최대하한) 이 되는 함수값 f(x) 를 계산해서 보여주는 함수가 아닙니다.
그 때의 x 값을 구하는 함수입니다.
함수값 f(x) 를 구하는 함수는 없으니, 찾아진 부울리언 표현식 f(x)에 제약연산자로 넣어서 계산하시면 됩니다.

- 계산기의 한계 :
fMin/fMax 기능은 댓글의 예제와 같이 복잡한 함수에 대해 넓은 구간 또는 무한 구간을 탐색할 때 수치적으로 불안정하거나 잘못된 결과를 내놓는 한계를 가지고 있습니다.
- 문제의 해결 :
그래프 기능으로 함수의 개형을 미리 확인하고, 검색 구간을 좁혀서 계산기를 '가이드' 하는 것이 바람직해 보입니다.
아니면 미분&solve 기능을 이용해 극값을 갖는 x값을 미리 확인하고, 그 값을 구간의 기준으로 나누어 검색해 보는 것도 방법이 될 수 있을 듯 합니다.
댓글1
-
세상의모든계산기
오류 발생
https://www.youtube.com/watch?v=dcg0x5SjETY
위 영상의 문제의 함수를 직접 구해 보았습니다.
그래프로는 잘 확인이 되는데...


fmin(), fmax() 함수로 직접 구해보니, 결과가 기대한 것과 다르네요.

구간을 넣지 않으니 fmim, fmax 둘 다에서 오류인 결과를 내놓습니다.
구간을 넣더라도, 적절하게 넣지 않으면, 답이 잘 안나오는 걸 확인할 수 있습니다.
fmin 은 그나마 x=0을 기준으로 나누지 않더라도 답이 나오는 편이지만,
fmax 는 -10~10 을 구간으로 넣을 때, 가운데 x=0 근방에서 그래프가 위로 솟아오르는 구간은 함수값을 확인하지 않는 듯 합니다.
ㄴ fmax가 더 열등해서 그런 것은 아니고, 뒤집어진 모양에서는 반대로 fmin이 못찾습니다.

구간 범위가 커질 경우, 함수에 적용하여 계산하다가 숫자 허용 한계를 벗어나서 overflow 가 나서 오류가 발생할 수도 있는 듯 합니다.
뒤에 점을 넣으니 경고 문구가 추가로 나오긴 했는데,
⚠️ Questionable accuracy. When applicable, try using graphical methods to verify the results.

그래도 실망이네요.
* 믿음직한 녀석은 아닌 듯 하니, 주의 표시 ⚠️가 나오든 안나오든, 사용에 주의하시기 바랍니다.
가급적이면 그래프로 검증해 보시는게 좋겠습니다.
세상의모든계산기 님의 최근 댓글
뉴턴-랩슨 적분 방정식 시각화 v1.0 body { font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; display: flex; flex-direction: column; align-items: center; background: #f8f9fa; padding: 40px 20px; margin: 0; color: #333; } .container { background: white; padding: 40px; border-radius: 20px; box-shadow: 0 15px 35px rgba(0,0,0,0.08); max-width: 900px; width: 100%; } header { border-bottom: 2px solid #f1f3f4; margin-bottom: 30px; padding-bottom: 20px; } h1 { color: #1a73e8; margin: 0 0 10px 0; font-size: 1.8em; } p.subtitle { color: #5f6368; margin: 0; font-size: 1.1em; } .equation-box { background: #f1f3f4; padding: 15px; border-radius: 10px; text-align: center; margin-bottom: 30px; font-size: 1.3em; } canvas { border: 1px solid #e0e0e0; border-radius: 12px; background: #fff; width: 100%; height: auto; display: block; } .controls { margin-top: 30px; display: flex; gap: 15px; align-items: center; justify-content: center; flex-wrap: wrap; } button { padding: 12px 25px; border: none; border-radius: 8px; background: #1a73e8; color: white; cursor: pointer; font-weight: 600; font-size: 1em; transition: all 0.2s; box-shadow: 0 2px 5px rgba(26,115,232,0.3); } button:hover { background: #1557b0; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(26,115,232,0.4); } button:active { transform: translateY(0); } button.secondary { background: #5f6368; box-shadow: 0 2px 5px rgba(0,0,0,0.2); } button.secondary:hover { background: #4a4e52; } .status-badge { background: #e8f0fe; color: #1967d2; padding: 8px 15px; border-radius: 20px; font-weight: bold; font-size: 0.9em; } .explanation { margin-top: 40px; padding: 25px; background: #fff8e1; border-left: 5px solid #ffc107; border-radius: 8px; line-height: 1.8; } .explanation h3 { margin-top: 0; color: #856404; } .math-symbol { font-family: 'Times New Roman', serif; font-style: italic; font-weight: bold; color: #d93025; } .code-snippet { background: #202124; color: #e8eaed; padding: 2px 6px; border-radius: 4px; font-family: monospace; } 📊 Newton-Raphson 적분 방정식 시뮬레이터 미분적분학의 기본 정리(FTC)를 이용한 수치해석 시각화 목표 방정식: ∫₀ᴬ (2√x) dx = 20 을 만족하는 A를 찾아라! 계산 시작 (A 추적) 초기화 현재 반복: 0회 💡 시각적 동작 원리 (Newton-Raphson & FTC) Step 1 (오차 측정): 현재 A까지 쌓인 파란색 면적이 목표치(20)와 얼마나 차이나는지 계산합니다. Step 2 (FTC의 마법): 면적의 변화율(미분)은 그 지점의 그래프 높이 f(A)와 같습니다. Step 3 (보정): 다음 A = 현재 A - (면적 오차 / 현재 높이) 공식을 사용하여 A를 이동시킵니다. 결론: 오차를 현재 높이로 나누면, 오차를 메우기 위해 필요한 가로 길이(ΔA)가 나옵니다. 이 과정을 반복하면 정답에 도달합니다! const canvas = document.getElementById('graphCanvas'); const ctx = canvas.getContext('2d'); const iterText = document.getElementById('iterText'); // 수학 설정 const targetArea = 20; const f = (x) => Math.sqrt(x) * 2; // 피적분 함수 f(x) = 2√x const F = (x) => (4/3) * Math.pow(x, 1.5); // 정적분 결과 F(x) = ∫ 2√x dx = 4/3 * x^(3/2) let A = 1.5; // 초기값 let iteration = 0; let animating = false; // 그래프 드로잉 설정 const scale = 50; const offsetX = 60; const offsetY = 380; function drawGrid() { ctx.strokeStyle = '#f1f3f4'; ctx.lineWidth = 1; ctx.beginPath(); for(let i=0; i 2026 04.11 참값 : A = ±2√5 근사값 : A≈±4.472135954999579392818347 2026 04.10 fx-570 ES 입력 결과 초기값 입력 반복 수식 입력 반복 결과 2026 04.10 파이썬 코드 검증 결과 초기값: 5.0 반복 1회차: 4.5000000000 반복 2회차: 4.4722222222 반복 3회차: 4.4721359558 반복 4회차: 4.4721359550 반복 5회차: 4.4721359550 초기값: 10.0 반복 1회차: 6.0000000000 반복 2회차: 4.6666666667 반복 3회차: 4.4761904762 반복 4회차: 4.4721377913 반복 5회차: 4.4721359550 2026 04.10 감사합니다. 주말 잘 보내세요. 2026 03.06