QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

VIP至尊会员

Rank: 15Rank: 15Rank: 15

积分
120
查看: 192|回复: 6

二分求解的一个问题

[复制链接]
最佳答案
0 
累计签到:80 天
连续签到:3 天
Sj中国智造 发表于 2017-10-12 20:27:25 1926 | 显示全部楼层 |阅读模式
6鱼币
用二分法解2x^3-4x^2+3x-6=0.
我用while语句写的对了,为什么用do while语句写错了,到底哪里错了,求大神解。

002.png
001.png
楼层
跳转到指定楼层
最佳答案
362 
累计签到:182 天
连续签到:31 天
BngThea 发表于 2017-10-13 09:42:51 | 显示全部楼层
用while循环的时候,只有if不成立才执行
  1. i = (max + min) / 2.0;
复制代码


而do while循环中始终执行该语句,中间某次有可能跳出正确的范围
最佳答案
0 
累计签到:80 天
连续签到:3 天
Sj中国智造  楼主| 发表于 2017-10-13 12:24:41 From FishC Mobile | 显示全部楼层
BngThea 发表于 2017-10-13 09:42
用while循环的时候,只有if不成立才执行



不是啊,while循环里也是会一直执行max+min/2.0
最佳答案
362 
累计签到:182 天
连续签到:31 天
BngThea 发表于 2017-10-13 12:34:54 | 显示全部楼层
Sj中国智造 发表于 2017-10-13 12:24
不是啊,while循环里也是会一直执行max+min/2.0

当if条件满足的时候,continue语句会跳过本次循环的后续部分,直接进行下一次循环,也就是会跳过赋中值
最佳答案
0 
累计签到:80 天
连续签到:3 天
Sj中国智造  楼主| 发表于 2017-10-14 07:59:48 From FishC Mobile | 显示全部楼层
BngThea 发表于 2017-10-13 12:34
当if条件满足的时候,continue语句会跳过本次循环的后续部分,直接进行下一次循环,也就是会跳过赋中值

i=max+min/2.0 有几个,况且while语句的那串代码是测试正确的,dowhile有问题


最佳答案
362 
累计签到:182 天
连续签到:31 天
BngThea 发表于 2017-10-14 12:16:40 | 显示全部楼层
Sj中国智造 发表于 2017-10-14 07:59
i=max+min/2.0 有几个,况且while语句的那串代码是测试正确的,dowhile有问题

我告诉你的将是你的while循环与do while循环的区别,因为这种区别(无论什么情况都会更新中值)导致的do while有时候会出错
最佳答案
0 
累计签到:80 天
连续签到:3 天
Sj中国智造  楼主| 发表于 2017-10-16 12:26:53 | 显示全部楼层
BngThea 发表于 2017-10-14 12:16
我告诉你的将是你的while循环与do while循环的区别,因为这种区别(无论什么情况都会更新中值)导致的do  ...


还是不懂啊,请说的详细些

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /2 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.1 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2017-12-17 14:18

快速回复 返回顶部 返回列表