You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用循环实现基础金融计算器无需关闭即可重置重算

问题原因

  • 计算逻辑全部放在循环外部,程序启动后仅会执行一次计算流程
  • 你写的while循环仅包含是否继续的判断逻辑,没有嵌套计算步骤,因此选择1后只会重复打印提示,不会触发新一轮计算

修复后的完整代码

package Register;

import java.util.Scanner;

public class Register {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        boolean keepLooping = true;
        // 循环包含全部计算流程
        while (keepLooping) {
            System.out.println("Welcome to the Electricity Bill calculator.");
            System.out.print("Enter amount of electricity (kW) used in the daytime: ");
            
            float num1 = scan.nextFloat();
            System.out.print("Enter amount of electricity (kW) used in the evening: ");
            float num2 = scan.nextFloat();
            
            System.out.print("Enter rate for daytime: ");
            float num3 = scan.nextFloat();
            System.out.print("Enter rate for evening: ");
            float num4 = scan.nextFloat();
            float day1 = num1 * num3;   
            float night2 = num2 * num4;
            float total = day1 + night2;
            
            System.out.println("Electricity Bill: $" + total);
            System.out.println("");

            System.out.print("Would you like to continue? Press 1 continue or 0 to exit.");
            int answer = scan.nextInt();
            if(answer == 0) {
                keepLooping = false;
            }
            // 选1时不修改keepLooping的值,循环自动继续执行新一轮计算
        }
        scan.close();
    }
}

内容的提问来源于stack exchange,提问作者user419524

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 17:15:03