c语言,编写一个程序,用以下算法找出小于1的正实数r(>1.0)的平方根√r的值。
(1) 输入r(>1.0)
(2) 让x=1,y=r作为初始值,满足x≤√r≤y。
(3) 重复以下过程100次。
(4) 如果((x+y)/2)2<r,将x改为(x+y)/2,否则将y改为(x+y)/2。
(5) 输出(x+y)/2的值
c语言用以下算法找出小于1的正实数r(>1.0)的平方根√r的值。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- Register__ 2022-05-22 21:42关注
楼主 您好 ,这里 是我的理解 , 望楼主指教
#include <stdio.h> #include <math.h> int main(){ double r; // 定义r double x = 1; // 定义x ,并初始值为 1 double y; // 定义 y scanf("%lf",&r); // 让用户输入 r y = r; // 将r 的 值 赋给 y for(int i = 0;i<100;i++){// for循环的 r 用来计次 if((((x + y)/2)*2) < r){ x = ((x + y) / 2); // 这两句 如 题中所说 }else { y = ((x + y) / 2); } } printf("ans = %lf\n",(x + y)/2); }
楼主 有什么问题 可以继续问我, 望采纳 ...
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
- ¥15 gdf格式的脑电数据如何处理matlab
- ¥20 重新写的代码替换了之后运行hbuliderx就这样了
- ¥100 监控抖音用户作品更新可以微信公众号提醒
- ¥15 UE5 如何可以不渲染HDRIBackdrop背景
- ¥70 2048小游戏毕设项目
- ¥20 mysql架构,按照姓名分表
- ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
- ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
- ¥15 linux驱动,linux应用,多线程