2017-04-11 12 views
-2

こんにちは、私はプログラミングを初めて勉強しており、授業では「最小コインプログラム」が割り当てられています。私はそれのためのメインコードを完了し、それは正常に動作します。しかし、パラメータの一部は、ユーザがゼロを入力するとプログラムは終了し、そうでなければプログラムはループを続けるということです。私は答えを探してみましたが、これまで働いた人はいません。プロンプトでプログラムを終了するにはどうすればいいですか?

これは私が持っているものですが、私はループを把握していないようです。これはフローチャートではない最初の割り当てです。また、私がすでに持っているものを改善するための提案があれば、それはまた評価されるでしょう(この教授は非常に厳しいグレーダーです)。

ユーザがゼロを入力することでプログラムを終了させるにはどうすればよいのですか?また、ユーザがゼロを入力するまでプログラミングのループを維持するにはどうすればよいですか。今の時点でプログラムが一度だけ実行され、私はゼロを入力すると、それは

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 
+2

さて、それは質問を投稿あなたの最初の時間をだから、最初の私は、あなたが回答したい質問を定義することができ尋ねるだろうか?あなたが直面している問題は何ですか?次に、ドキュメントで読んだことがありますか? "どうやっていい質問をするの?" - > https://stackoverflow.com/help/how-to-ask –

+0

こんにちは、私はより多くの情報を追加しました。ユーザーがプロンプトを入力した後にプログラムを終了させる方法と、ユーザーが終了プロンプトに入っていない場合にプログラムをループさせ続ける方法を知りたい。 –

+0

'if(amount == 0)return;' – Bohemian

答えて

0

の変化の最小量を示していますあなたのコードは、それが進むにつれてamount減少し、多くの場合ので、あなたのプログラムは、(多くの場合)1つのループ後に終了します必要なペニーがゼロであれば、amountがゼロになるのでループが終了します。

これを試してみてください:

while (true) { 
    // print and read amount 
    if (amount == 0) 
     break; 
    // rest of code 
} 
関連する問題