>nAnswer = sr(100,1,100) >? "THE ANSWER:", nAnswer > >FUNCTION sr(pOrig,pLower,pUpper) >* attempt to determine the square root by dividing the interval >? pOrig, pLower, pUpper >WAIT >nMiddle = ((pUpper - pLower) / 2) + pLower > >DO CASE > CASE pOrig = nMiddle*nMiddle > RETURN nMiddle > CASE pOrig > nMiddle*nMiddle > RETURN sr(pOrig,nMiddle,pUpper) > CASE pOrig < nMiddle*nMiddle > RETURN sr(pOrig,pLower,nMiddle) > OTHERWISE > ? "ERROR: an impossible result!" > RETURN 0 >ENDCASE >RETURN > >>