java - 循环和显示困惑

标签 java

如果这看起来是一个简单的问题,我深表歉意,但我有一个问题正在尝试解决,但我还没有完全弄清楚如何正确显示结果。所以基本上它要求接受用户对行驶一定距离的汽车的输入。所以我使用扫描仪对象来获取时间(以小时为单位)以及速度(mps)。所以要获得距离,您只需将这 2 个值相乘即可。但是我的问题出在显示上,我使用了一个 for 循环来显示用户每小时行驶了多少距离(从 1 开始 - 直到达到用户输入的时间)for 循环如下所示:

    // Calculate and display distance traveled
    distance = speed * time;
    System.out.println("Hour Distance Traveled");
    System.out.println("--------------------------");

    for (time =1; time <= distance/speed; time++)
    {
             System.out.println(time + "\t" + distance);
    }

所以我很明显被困在如何以递增的形式显示距离,比如如何显示时间,我不确定如何去做,更重要的是,如果 for 循环是适合使用的循环这个案例。我不是要求为我解决问题,但我将不胜感激任何关于如何解决它或我做错了什么的建议或解释。

最佳答案

在循环的每次迭代中,您希望将时间(在当前迭代中)乘以速度,而不是使用最终计算出的距离。

所以:

System.out.println("" + time + "\t" + ( time * speed ) );

应该适合你。

编辑 详细说明以回答评论

您执行相同的任务两次。计算结果时一次,跟踪时一次。您可以将两者连接起来,这样可以显示计算出的进度。当然,如果你不需要打印任何东西,你可以像刚才那样做乘法……

/* time and speed received from user. */
/* initialize distance */
distance = 0;
for (int i = 1; i <= time; i++)
{
    /* increment distance in each iteration */
    distance += speed;
    /* print as you progress */
    System.out.println(i + "\t" + distance);
}

关于java - 循环和显示困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19473243/

相关文章:

Java - 如何查看List接口(interface)中size()方法的定义?

java - Android 上的应用程序崩溃

java - 刷新 JTable 条目

java - 可以在同一个 xls 表上读取和写入吗?

java - java spring中的注释@Repository如何工作?

java - 差异 : @SessionScoped vs @Stateful and @ApplicationScoped vs @Singleton

java - Spring XML 配置中 @Resource List<SomeType> someTypes 的等效项是什么?

java - 设置足球的持续时间(足球)

java - 从节点选择中选择节点

java - 将 ImageView 的大小调整为另一个 ImageView 的大小的动画