如何通过提示退出程序,如何运行循环

时间:2017-04-11 02:10:50

标签: java loops counter exit

嗨,我是编程新手,并为我正在上课的课程分配了“最低硬币计划”。我已经完成了它的主要代码,它运行正常。但部分参数是,如果用户输入零,程序将退出,否则程序将继续循环。我试过查找答案但到目前为止还没有找到答案。

这是我所拥有的,但我似乎无法掌握循环。这是我们的第一个非流程图分配。此外,如果你有任何改善我已经拥有的建议,也将受到赞赏(这位教授是一个非常苛刻的评分者)。

如何让程序通过输入零的用户退出,以及如何在用户输入零之前保持编程循环。截至目前,该程序只运行一次,当我输入零时,它列出了最小的更改量

package mincoins;

import java.util.Scanner;

public class MinCoins
{

public static void main(String[] args)
{ //start code

    //initialization
    Scanner input = new Scanner(System.in); //create input class to get change data 
    int amount, quartercount = 0, dimecount = 0, nickelcount = 0, penniecount = 0; 
    amount = 1;


    while (amount != 0)
    {

        System.out.println("Please Enter amount of change (1-99) or ZERO to EXIT");
        System.out.println("");

        amount = input.nextInt();

        {

            while (amount > 25)
            {
                amount = amount - 25;
                quartercount++;
            }

            while (amount > 10)
            {
                amount = amount - 10;
                dimecount++;
            }

            while (amount > 5)

            {
                amount = amount - 5;
                nickelcount++;
            }
            System.out.println("");

            System.out.println("Quarters: " + quartercount);

            System.out.println("Dimes: " + dimecount);

            System.out.println("Nickles: " + nickelcount);

            System.out.println("Pennies: " + amount);

            System.out.println("");

        }
    }


}//main

}//class

1 个答案:

答案 0 :(得分:0)

你的程序(经常)在1次循环后结束,因为你的代码在进展时会减少amount,如果所需的便士数为零,则循环结束,因为amount减少为零。 / p>

试试这个:

while (true) {
    // print and read amount
    if (amount == 0)
        break;
    // rest of code
}