Of course you can.
On my Math book, there is a method, that is to try digitals one by one.
For example, suppose you want to get sqrt(101). Because 0^2=0,10^2=100, 20^2=400 and so on, sqrt(101) is between 10 and 20(for, (sqrt(101))^2 is between 10^2 and 20^2). And then you try next digital.
For computer programming, I suggest you to use binary digits for faster compute.
Yes its perfectly possible to do that. The easiest way I know of is to use the "Bakhshali approximation". The one I implemented gives results accurate to 5 decimal places.
Here is the one I made (its not very efficient but it does the work):