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>Write a function to calculate the square root of a number to a given number of decimal places. (Yes. I know, VFP has the SQRT function, but what would you do without it?)