
①源程序
#include<srdio.h>
main()
/*定义变量类型 。 */
{double ax0x1;
printf(\"求一个实数a的平方根x1\\");
/*do-while循环:
满足条件 a<=0时 , 执行循环输入实数a 。 不满足条件a<=0时 , 退出循环 , 即保证了a>0 。 */
do
scanf(\"%lf\"&a);
while(a<=0);
/*赋初值给x1 。 */
x1=a/2.0;
/*do-while 循环:
满足条件(>误差1e-6)时 , 则继续循环迭代 。
不满足条件(>误差1e-6)时 , 则停止循环迭代 。
*/
do
{x0=x1;
x1=(x0+a/x0)/2.0;
/*平方根迭代公式 , 用牛顿迭代法求得 。 */
while((x1-x0)>1e-6||(x1-x0)<-1e-6);
/*迭代误差为1e-6 , 即e的负6次方 , 约等于2.71821的负6次方为0.000001 。 */
printf(\"%f的平方根是%\\"ax1);
~
②牛顿迭代法
曲线:y=f(x1)
曲线外一点:(x0f(x0))
过点做曲线切线切线的斜率:
f'(x1)=(y-f(x0))/(x1-x0)
当y=f(x1)=x1^2即为平方函数时:
2x1=(x1^2-x0^2)/(x1-x0)
2x1^2-2x1x0=x1^2-x0^2
x1^2-2x1x0=-x0^2
x1^2+x0^2=2x1x0
a+x0^2=2x1x0
x1=(x0+a/x0)/2
【CPU|C语言-迭代平方根】即求得平方根迭代公式 。
- CPU|什么叫重新将商品权重补起来?为啥补单没效果?
- 国产x86 CPU兆芯有了ITX迷你主板:最高八核2.7GH
- 本周|对标高通骁龙8+ 天玑9000+旗舰已在路上:安卓阵营CPU
- 文艺辣评丨新东方直播:一场语言的行为艺术?
- c语言|负责任地推荐这3部手机,好看又配置强,用到2026年不成问题
- CPU|戴尔这款微型台式机只有1.1L体积,配6核处理器,售价3999元
- 世界智能大会|AMD7000系列V-CacheCPU与可能达到6GHz的Intel第13代抗衡
- 路由器|TP-LINK不公布路由器CPU、内存等硬件参数的原因
- CPU|目前拍照最好看的三款手机,影像实力堪比小单反,外出拍照必备
- 英特尔|国产CPU第一股上市,市值高达350亿,intel/AMD慌不慌?
