**TI92**mainHW`Z:KW`>9`9`HW` >9`\9RrsolveZf(ineq,var) Func This function determines the regions on the number line that satisfy the given rational inequality ineq in variable var. The result answ is returned as an ordered list of numbers with true or false between adjacent numbers. A true between adjacent numbers indicates the corresponding region satisfies the inequality, else a false appears. Local oneside,combined,top,bottom The left and right sides of ineq will be combined with a common denominator into one side called combined. 0 is understood to be the new right-hand side. top is the numerator of combined and bottom is the denominator of combined. left(ineq)-right(ineq)oneside comDenom(oneside,var)combined getNum(combined)top getDenom(combined)bottom Local s,z,endpt,answ These variables represent lists. s will hold the zeros of bottom, and , z the zeros of top, and endpt will be the ascending sorted list sUz of endpoints. zeros(top,var)z zeros(bottom,var)s augment(s,{,})s zendpt augment(endpt,s)endpt mysort(endpt)endpt The code for mysort() occurs later in this article. It was necessary to write mysort since a function can not call the built-in ascending sort program. Local a,b,i,testv These variables are used to construct answ. a represents the left endpoint for the current region, b represents the right endpoint, i maintains the current position in endpt and testv represents the test value for the current region. answ begins with left endpoint a -. Looping ends when a reaches . 1i a {}answ While a endpt[i+1]b this block of code picks a test value appropriately. If a= Then If b= Then 0testv Else b-1testv EndIf Else If b= Then a+1testv Else (a+b)/2testv EndIf EndIf The next two lines insert true or false and the right endpoint into answ. testv is plugged into ineq to decide between true or false. augment(answ,{ineq|var=testv})answ augment(answ,{b})answ Finally, the right endpoint becomes the new left endpoint and the current position in endpt increases. ba i+1i EndWhile Return answ EndFunc f