最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

开平方

互联网 admin 18浏览 0评论

开平方


开平方


如果没有计算器,我们如何求2的平方根?

可以先猜测一个数,比如1.5,然后用2除以这个数字。如果我们猜对了,则除法的结果必然与我们猜测的数字相同。我们猜测的越准确,除法的结果与猜测的数字就越接近。

根据这个原理,只要我们每次取猜测数和试除反馈数的中间值作为新的猜测数,肯定更接近答案!这种计算方法叫做“迭代法”。


下面的代码模拟了如何用手工的方法求2的平方根的过程。请填写缺少的代码。


把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。


double n = 2;

double a = 0;

double b = n;

while(fabs(a-b)>1E-15)

{

a = (a+b)/2;

b = __________;

}

printf("%f\n", a);



#include<stdio.h>
#include<math.h>
int main(){double n = 2;double a = 0;double b = n;while(fabs(a-b)>1E-15)  //1e-15表示10的负15次方{a = (a+b)/2;b = n/a;}printf("%f\n", a);return 0;
}

运行结果:

开平方


开平方


如果没有计算器,我们如何求2的平方根?

可以先猜测一个数,比如1.5,然后用2除以这个数字。如果我们猜对了,则除法的结果必然与我们猜测的数字相同。我们猜测的越准确,除法的结果与猜测的数字就越接近。

根据这个原理,只要我们每次取猜测数和试除反馈数的中间值作为新的猜测数,肯定更接近答案!这种计算方法叫做“迭代法”。


下面的代码模拟了如何用手工的方法求2的平方根的过程。请填写缺少的代码。


把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。


double n = 2;

double a = 0;

double b = n;

while(fabs(a-b)>1E-15)

{

a = (a+b)/2;

b = __________;

}

printf("%f\n", a);



#include<stdio.h>
#include<math.h>
int main(){double n = 2;double a = 0;double b = n;while(fabs(a-b)>1E-15)  //1e-15表示10的负15次方{a = (a+b)/2;b = n/a;}printf("%f\n", a);return 0;
}

运行结果:

发布评论

评论列表 (0)

  1. 暂无评论