求一个数的平方根怎么算

如题所述

开方的计算步骤:

1、将被开方数的整数部分从个位起向左每隔两位划为一段,用撇号分开(竖式中的11’56),分成几段,表示所求平方根是几位数;

2、根据左边第一段里的数,求得平方根的最高位上的数(竖式中的3);

3、从第一段的数减去最高位上数的平方,在它们的差的右边写上第二段数组成第一个余数(竖式中的256);

4、把求得的最高位数乘以2去试除第一个余数,所得的最大整数作为试商(2×30除256,所得的最大整数是 4,即试商是4);

5、用商的最高位数的2倍加上这个试商再乘以试商.如果所得的积小于或等于余数,试商就是平方根的第二位数;如果所得的积大于余数,就把试商减小再试(竖式中(2×30+4)×4=256,说明试商4就是平方根的第二位数);

6、用同样的方法,继续求平方根的其他各位上的数.

扩展资料:

牛顿迭代法:

上述笔算开方方法是我们大多数人上学时课本附录给出的方法,实际中运算中太麻烦了。可以采取下面办法:

比如136161这个数字,首先找到一个和136161的平方根比较接近的数,任选一个,比方说300到400间的任何一个数,这里选350,作为代表。先计算0.5(350+136161/350),结果为369.5。

再计算0.5(369.5+136161/369.5)得到369.0003,发现369.5和369.0003相差无几,并且369²末尾数字为1。有理由断定369²=136161。

一般来说,能够开方开的尽的,用上述方法算一两次基本结果就出来了。再举个例子:计算

首先发现600²<469225<700²,可以挑选650作为第一次计算的数。即算0.5(650+469225/650)得到685.9。而685附近只有685²末尾数字是5,因此685²=469225。从而

对于那些开方开不尽的数,用这种方法算两三次精度就很可观了,一般达到小数点后好几位。实际中这种算法也是计算机用于开方的算法。

参考资料来源:百度百科-开平方运算

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-13

步骤:

1、将被开方数的整数部分从个位起向左每隔两位划为一段,用撇号分开,分成几段,表示所求平方根是几位数;

2、根据左边第一段里的数,求得平方根的最高位上的数;

3、从第一段的数减去最高位上数的平方,在它们的差的右边写上第二段数组成第一个余数;

4、把求得的最高位数乘以2去试除第一个余数,所得的最大整数作为试商;

5、用商的最高位数的2倍加上这个试商再乘以试商.如果所得的积小于或等于余数,试商就是平方根的第二位数;如果所得的积大于余数,就把试商减小再试。

注:一个正数如果有平方根,那么必定有两个,它们互为相反数。显然,如果知道了这两个平方根的一个,那么就可以及时的根据相反数的概念得到它的另一个平方根。

负数在实数系内不能开平方。只有在复数系内,负数才可以开平方。负数的平方根为一对共轭纯虚数。

例如:-1的平方根为±i,-9的平方根为±3i,其中i为虚数单位。

扩展资料

如何开立方

设A = X^3,求X.称为开立方。 开立方有一个标准的公式:

例如,A=5,,即求

5介于1的3次方;至2的3次方;之间(1的3次方=1,2的3次方=8)

初始值X0可以取1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,都可以。例如我们取X0 = 1.9按照公式:

第一步:X1=1.9+(5/1.9^2;-1.9)1/3=1.7。

即5/1.9×1.9=1.3850416,1.3850416-1.9=-0.5149584,-0.5149584×1/3=-0.1716528,1.9+(-0.1716528)=1.7。即取2位数值,,即1.7。

第二步:X2=1.7+(5/1.7^2;-1.7)1/3=1.71。

即5/1.7×1.7=1.73010,1.73-1.7=0.03,0.03×1/3=0.01,1.7+0.01=1.71。取3位数,比前面多取一位数。

第三步:X3=1.71+(5/1.71^2;-1.71)1/3=1.709.

第四步:X4=1.709+(5/1.709^2;-1.709)1/3=1.7099

这种方法可以自动调节,第一步与第三步取值偏大,但是计算出来以后输出值会自动转小;第二步,第四步输入值

偏小,输出值自动转大。即5=1.7099^3;

当然初始值X0也可以取1.1,1.2,1.3,。。。1.8,1.9中的任何一个,都是X1 = 1.7 > 。当然,我们在实际中初始值最好采用中间值,即1.5。 1.5+(5/1.5&sup2;-1.5)1/3=1.7。

参考资料来源:百度百科-开平方运算

第2个回答  2017-11-27

方法一:牛顿切线法

求a的平方根,相当于求f(x)=x²-a=0的正根,

假设随意猜测一个x的初始值x0。由于f'(x)=2x,

过猜测点(x0,f(x0))的切线方程是y-f(x0)=f'(x0)(x-x0),令y=0,

x=x0-f(x0)/f'(x0)=x0-(x0^2-a)/2x0=(x0+a/x0)/2是切线与x轴的交点。

画出图形就很容易看出任意选取x0,重复上一过程,都可以在不超过两次重复时,使得x比x0更接近方程的根,此处不再作严格证明。

于是,反复进行上一过程,就能得到越来越接近准确值的近似值,写成递推公式就是:

x(n+1)=[x(n)+a/x(n)]/2,(x0>0任意选取,当然尽量选接近的)。

方法二:巴比伦算法

若对a求算术平方根,随意选取0<x0<a,

于是x0和a/x0当中,由于总是有x0*a/x0=a,则二者中必有一个大于√a,另一个小于√a,

那么,他们的算术平均值肯定比他们两者都要接近√a,重复这一过程,必越来越接近√a。

写成递推公式就是:x(n+1)=[x(n)+a/x(n)]/2,(0<x0<a),可以看出,和方法一如出一辙,而且推导过程更容易理解,古人还是很厉害的。

例题:求√67的值

选取x0=8,则x1=(8+67/8)/2=8.1875,x2=(8.1875+67/8.1875)/2=8.185353,

x3=(8.185353+67/8.185353)/2=8.1853527718724531...

而计算器直接算得8.1853527718724499...

可见选取比较接近的初值时,迭代一次精度可达到百分之一,两次达到百万分之一,

三次达到了十万亿分之一。当然x0选得不好的时候,要算更多遍才能达到相同的精度。

方法三:长除法(笔算法)

以√6767为例,我们知道完全平方是(a+b)²=a²+2ab+b²

由于是逐位算出的,所以每位的平方最大是9²=81,不会超过两位数,于是可把被开方数从小数点为界向两边,两个两个分组,最后剩一个的补0,比如123.321就分成01'23.32'10,例题的6767就分成67'67。

我们知道80*80=6400,90*90=8100,所以√6767一定是八十几点几,于是设成(80+b),a=80,b还不知道,只知道它小于10。

好了,6767=a^2+2ab+b^2,6767-80²=367=2ab+b²=160b+b²

现在b商多少呢?

注意到试商的时候,前面的数比较大,x却总是个位数,相当于是高阶无穷小,所以很容易看出来——商个3超了,所以商个2,余数是367-320-4=43,

变成了82+x,我们不知道x是多少,只知道x小于1,43=2*82x+x²

因为划分了小数点,所以用x/10代替上述x,就可以写成4300=(2*820+x)x,现在x就是数位而不是一个小数了,

试商x=2,4300-(1640+2)2=1016,101600=2*8220x+x²,

x=6,101600=(2*8220+6)6=2924……292400=2*82260x+x²……

反正就是一直下去,√6767=82.26……

这是我国古代的方法,这里只是没有列成竖式而已。

练习1:√21,精确到4位小数

a=4,21-4*4=5,500=2*40x+x²

x=5,500-(2*40+5)5=75,7500=2*450x+x²

x=8,7500-(900+8)8=236,23600=2*4580+x²

x=2,23600-(9160+2)2=5276,527600=2*45820x+x²

x=5,527600-458200-25=69375,6937500=2*458250x+x²

x=7,6937500-2*458250*7-49=521951,52195100=……

所以√21=4.58257......≈4.5826

练习2:求√1156

分组,11'56

a=30,1100-30²=200,200+56=256,256=2*30b+b²

b=4,256-2*30*4-4²=0,余0,开尽。

所以√1156=34

本回答被网友采纳
第3个回答  2019-09-07
方法一:牛顿切线法
求a的平方根,相当于求f(x)=x²-a=0的正根,
假设随意猜测一个x的初始值x0。由于f'(x)=2x,
过猜测点(x0,f(x0))的切线方程是y-f(x0)=f'(x0)(x-x0),令y=0,
x=x0-f(x0)/f'(x0)=x0-(x0^2-a)/2x0=(x0+a/x0)/2是切线与x轴的交点。
画出图形就很容易看出任意选取x0,重复上一过程,都可以在不超过两次重复时,使得x比x0更接近方程的根,此处不再作严格证明。
于是,反复进行上一过程,就能得到越来越接近准确值的近似值,写成递推公式就是:
x(n+1)=[x(n)+a/x(n)]/2,(x0>0任意选取,当然尽量选接近的)。
方法二:巴比伦算法
若对a求算术平方根,随意选取0<x0<a,
于是x0和a/x0当中,由于总是有x0*a/x0=a,则二者中必有一个大于√a,另一个小于√a,
那么,他们的算术平均值肯定比他们两者都要接近√a,重复这一过程,必越来越接近√a。
写成递推公式就是:x(n+1)=[x(n)+a/x(n)]/2,(0<x0<a),可以看出,和方法一如出一辙,而且推导过程更容易理解,古人还是很厉害的。
例题:求√67的值
选取x0=8,则x1=(8+67/8)/2=8.1875,x2=(8.1875+67/8.1875)/2=8.185353,
x3=(8.185353+67/8.185353)/2=8.1853527718724531...
而计算器直接算得8.1853527718724499...
可见选取比较接近的初值时,迭代一次精度可达到百分之一,两次达到百万分之一,
三次达到了十万亿分之一。当然x0选得不好的时候,要算更多遍才能达到相同的精度。
方法三:长除法(笔算法)
以√6767为例,我们知道完全平方是(a+b)²=a²+2ab+b²
由于是逐位算出的,所以每位的平方最大是9²=81,不会超过两位数,于是可把被开方数从小数点为界向两边,两个两个分组,最后剩一个的补0,比如123.321就分成01'23.32'10,例题的6767就分成67'67。
我们知道80*80=6400,90*90=8100,所以√6767一定是八十几点几,于是设成(80+b),a=80,b还不知道,只知道它小于10。
好了,6767=a^2+2ab+b^2,6767-80²=367=2ab+b²=160b+b²
现在b商多少呢?
注意到试商的时候,前面的数比较大,x却总是个位数,相当于是高阶无穷小,所以很容易看出来——商个3超了,所以商个2,余数是367-320-4=43,
变成了82+x,我们不知道x是多少,只知道x小于1,43=2*82x+x²
因为划分了小数点,所以用x/10代替上述x,就可以写成4300=(2*820+x)x,现在x就是数位而不是一个小数了,
试商x=2,4300-(1640+2)2=1016,101600=2*8220x+x²,
x=6,101600=(2*8220+6)6=2924……292400=2*82260x+x²……
反正就是一直下去,√6767=82.26……
这是我国古代的方法,这里只是没有列成竖式而已。
练习1:√21,精确到4位小数
a=4,21-4*4=5,500=2*40x+x²
x=5,500-(2*40+5)5=75,7500=2*450x+x²
x=8,7500-(900+8)8=236,23600=2*4580+x²
x=2,23600-(9160+2)2=5276,527600=2*45820x+x²
x=5,527600-458200-25=69375,6937500=2*458250x+x²
x=7,6937500-2*458250*7-49=521951,52195100=……
所以√21=4.58257......≈4.5826
练习2:求√1156
分组,11'56
a=30,1100-30²=200,200+56=256,256=2*30b+b²
b=4,256-2*30*4-4²=0,余0,开尽。
所以√1156=34
第4个回答  2020-01-01
不用平方根表和计算器,可不可以求出一个数的平方根呢?
先一起来研究一下,怎样求,这里1156是四位数,所以它的算术平方根的整数部分是两位数,且易观察出其中的十位数是3.于是问题的关键在于;怎样求出它的个位数a?为此,我们从a所满足的关系式来进行分析.
根据两数和的平方公式,可以得到
1156=(30+a)^2=30^2+2×30a+a^2,
所以
1156-30^2=2×30a+a2,

256=(3×20+a)a,
这就是说,
a是这样一个正整数,它与
3×20的和,再乘以它本身,等于256.
为便于求得a,可用下面的竖式来进行计算:
根号上面的数3是平方根的十位数.将
256试除以20×3,得4.由于4与20×3的和64,与4的积等于256,4就是所求的个位数a.竖式中的余数是0,表示开方正好开尽.于是得到
1156=34^2,
上述求平方根的方法,称为笔算开平方法,用这个方法可以求出任何正数的算术平方根,它的计算步骤如下:
1.将被开方数的整数部分从个位起向左每隔两位划为一段,用撇号分开(竖式中的11’56),分成几段,表示所求平方根是几位数;
2.根据左边第一段里的数,求得平方根的最高位上的数(竖式中的3);
3.从第一段的数减去最高位上数的平方,在它们的差的右边写上第二段数组成第一个余数(竖式中的256);
4.把求得的最高位数乘以20去试除第一个余数,所得的最大整数作为试商(3×20除256,所得的最大整数是
4,即试商是4);
5.用商的最高位数的20倍加上这个试商再乘以试商.如果所得的积小于或等于余数,试商就是平方根的第二位数;如果所得的积大于余数,就把试商减小再试(竖式中(20×3+4)×4=256,说明试商4就是平方根的第二位数);
6.用同样的方法,继续求平方根的其他各位上的数.
如遇开不尽的情况,可根据所要求的精确度求出它的近似值.
笔算开平方运算较繁,在实际中直接应用较少,但用这个方法可求出一个数的平方根的具有任意精确度的近似值.
我国古代数学的成就灿烂辉煌,早在公元前一世纪问世的我国经典数学著作《九章算术》里,就在世界数学史上第一次介绍了上述笔
算开平方法.据史料记载,国外直到公元五世纪才有对于开平方法的介绍.这表明,古代对于开方的研究我国在世界上是遥遥领先的.
也可以用这种算法:
假设被开放数为a,如果用sqrt(a)表示根号a
那么((sqrt(x)-sqrt(a/x))^2=0的根就是sqrt(a)
变形得
sqrt(a)=(x+a/x)/2
所以你只需设置一个约等于(x+a/x)/2
的初始值,代入上面公式,可以得到一个更加近似的值,再将它代入,就得到一个更加精确的值……依此方法,最后得到一个足够精度的
(x+a/x)/2的值。
如:计算sqrt(5)
设初值为2
1)sqrt(5)=(2+5/2)/2=2.25
2)sqrt(5)=(2.25+5/2.25)/2=2.236111
3)sqrt(5)=(2.236111+5/2.236111)/2=2.236068
这三步所得的结果和sqrt(5)相差已经小于0.001
或者可以用二分法:
设f(x)=x^2-a
那么sqrt(a)就是f(x)=0的根。
你可以先找两个正值m,n使f(m)<0,f(n)>0
根据函数的单调性,sqrt(a)就在区间(m,n)间。
然后计算(m+n)/2,计算f((m+n)/2),如果它大于零,那么sqrt(a)就在区间(m,(m+n)/2)之间。
小于零,就在((m+n)/2,n)之间,如果等于零,那么(m+n)/2当然就是sqrt(a)。这样重复几次,你可以把sqrt(a)存在的范围一步步缩小,在最后足够精确的区间内随便取一个值,它就约等于sqrt(a)。
参考:
http://hi.baidu.com/%B0%A8%D1%A9%C8%D5%D0%C4%C9%D9%C4%EA/blog/item/0b64a9fd5a386c46d6887d8e.html
参考资料:
http://hi.baidu.com/%B0%A8%D1%A9%C8%D5%D0%C4%C9%D9%C4%EA/blog/item/0b64a9fd5a386c46d6887d8e.html
相似回答