JasonYANG17 2023-01-31 19:26 采纳率: 93.3%
浏览 43
已结题

为啥答案和我想的不一样

小明要做一个跑步训练。
初始时,小明充满体力,体力值计为 10000。如果小明跑步,每分钟损耗
600 的体力。如果小明休息,每分钟增加 300 的体力。体力的损耗和增加都是均匀变化的。
小明打算跑一分钟、休息一分钟、再跑一分钟、再休息一分钟……如此循环。
如果某个时刻小明的体力到达 0,他就停止锻炼。
请问小明在多久后停止锻炼。为了使答案为整数,请以秒为单位输出答案。
答案3880,问题请看代码注释


//跑步训练
//3880
public class Main03 {
    public static void main(String[] args) {
        int tl = 10000;
        boolean b = true;
        int time = 0;
        while (true) {
            //体力为0
        if (tl<600&&b) {     //将判断换成tl==0不行吗?
            System.out.println(time*60+tl/10); //为什么要加tl/0
            break;
        }
        if (b) {
            tl-=600;
            b=false;
            time++;
        }else{
            tl+=300;
            b=true;
            time++;
        }
        }
    }
}

麻烦解释下,没看明白

  • 写回答

5条回答 默认 最新

  • pzzhao 2023-01-31 19:37
    关注

    因为体力不会刚刚好等于0,所以不使用=0去判断。
    并且他那里是用的<600且b为true,也就是剩余体力不到600的时候,正好下一分钟要进行跑步。这个时候这一分钟步是跑不完的,所以又用tl/10,这里的10是没秒消耗的体力(600/60)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 2月9日
  • 已采纳回答 2月1日
  • 创建了问题 1月31日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?