http://www.perlmonks.org?node_id=165510


in reply to computing square root by hand -- no sqrt (golf, beginner)


While playing around, i thought i would (jokingly) try to golf Matt's solution and found something interesting. Using subtraction instead of bit-xor is more accurate. So, cleaning up my current mess of solutions and using subtraction for accuracy, it's now 49 chars (52 to print a carriage return):
#23456789_123456789_123456789_123456789_123456789_123456789_ $_=pop;$l=$_,($_+=$ARGV[0]/$_)/=2while$l-$_;print
jynx

update:an approximation method:

# 44 #23456789_123456789_123456789_123456789_123456789_ $a=pop;($a+=$ARGV[0]/$a)/=2for-9..99;print$a