Mueve el \color{orange}{\text{ORANGE_DOT}} a \color{orange}{NUMBER} en la recta númerica.
init({range:[[LOWER_BOUND-.5,UPPER_BOUND+.5],[-1,1]],scale:[80*SCALE,40]}),style({arrows:">"}),line([0,0],[UPPER_BOUND+.25/SCALE,0]),style({arrows:"->"}),line([0,0],[LOWER_BOUND-.25/SCALE,0]),style({arrows:""});for(var x=LOWER_BOUND;UPPER_BOUND>=x;x++)line([x,-.2],[x,.2]);style({stroke:GREEN,strokeWidth:3.5}),line([LOWER_BOUND,-.2],[LOWER_BOUND,.2]),label([LOWER_BOUND,-.53],LOWER_BOUND,"center",{color:GREEN}),line([UPPER_BOUND,-.2],[UPPER_BOUND,.2]),label([UPPER_BOUND,-.53],UPPER_BOUND,"center",{color:GREEN}),line([0,-.2],[0,.2]),label([0,-.53],"0","center",{color:GREEN}),addMouseLayer(),graph.movablePoint=addMovablePoint({constraints:{constrainY:!0},snapX:1/DENOMINATOR}),graph.movablePoint.onMove=function(e,r){return[min(max(LOWER_BOUND,e),UPPER_BOUND),r]}
Como \color{orange}{NUMBER} es positivo negativo el punto anaranjado estará a la derecha izquierda de 0.
Convirtamos la fracción impropia \color{orange}{NUMBER} a una fracción mixta:
\color{orange}{NUMBER} = \color{blue}{M_NUMBER}
Por lo tanto, sabemos que \color{blue}{M_NUMBER} se encuentra entre \color{green}{M_WHOLE} y \color{green}{M_WHOLE + (SOLUTION > 0 ? 1 : -1)} en la recta numérica.
style({stroke:"#FFA500",strokeWidth:3.5}),line([M_WHOLE,-.2],[M_WHOLE,.2]),line([M_WHOLE+(SOLUTION>0?1:-1),-.2],[M_WHOLE+(SOLUTION>0?1:-1),.2])
\color{blue}{M_NUMBER} es \color{green}{fraction(M_NUMERATOR, DENOMINATOR)} a la derechaizquierda de \color{green}{M_WHOLE} en la recta númerica.
style({stroke:GREEN,fill:"#6495ED",strokeWidth:3.5,arrows:"->"}),line([M_WHOLE,0],[SOLUTION,0]),graph.movablePoint.visibleShape.toFront(),style({stroke:"#FFA500",strokeWidth:3.5,arrows:""}),line([M_WHOLE,-.2],[M_WHOLE,.2]),line([M_WHOLE+(SOLUTION>0?1:-1),-.2],[M_WHOLE+(SOLUTION>0?1:-1),.2])
label([SOLUTION,-.83],NUMBER,"center",{color:"#FFA500"}),graph.movablePoint.moveTo(SOLUTION,0)
El punto anaranjado muestra la posición del \color{orange}{NUMBER} en la recta numérica.