编辑代码

#include <stdio.h>
#include <math.h>
 
double newton_method(double a)
{
	if (a < 0)
	{
		return -1;
	}
	double t = a;  // t 为近似值
	while (fabs(t * t - a) > 1e-10)
	{
		t = (t + a / t) / 2.0;
	}
	return t;
}
 
int main()
{
	double a = 12.0;
	scanf("%lf", &a);
	double ret = newton_method(a);
	printf("%lf\n", ret);
    return 0;
}