2016-11-10 14 views
0

ユーザーが無効なオプションを選択した場合、終了する必要がある2つのオプションのいずれかを選択するとループする必要があります。正しいオプションが選択されるまでユーザーが正しいオプションを選択するまでループ検証

import java.util.Scanner; 
    public class conversion { 
     public static void main(String[] args){ 
      Scanner input = new Scanner(System.in); 
      System.out.println("Which conversion do you want?"); 
      System.out.println("Pounds to Kilograms(enter 1)"); 
      System.out.println("Kilograms to Pounds(enter 2)"); 
      double kilograms, pounds; 
      int choice = input.nextInt(); 

      while(){ 

       if(choice == 1){ 
        System.out.println("What weight value do you want converted?"); 
        pounds = input.nextDouble(); 
        kilograms = pounds/2.20462; 
        kilograms = Math.round(kilograms * 100.0)/100.0; 
        System.out.println(+pounds+ " pounds is equal to " +kilograms+ " kilograms"); 
       } 

       else if(choice == 2){ 
       System.out.println("What weight value do you want converted?"); 
        kilograms = input.nextDouble(); 
        pounds = kilograms/0.453592; 
        pounds = Math.round(pounds * 100.0)/100.0; 
        System.out.println(+kilograms+ " kilograms is equal to " +pounds+ " pounds"); 
        } 
       else if((choice != 1) || (choice != 2)){ 
        System.out.println("Invalid please try again"); 
        System.out.println("Which conversion do you want?"); 
        System.out.println("Pounds to Kilograms(enter 1)"); 
        System.out.println("Kilograms to Pounds(enter 2)"); 
        choice = input.nextInt(); 
       } 


      } 

     } 
    } 
  • は選択肢のメニューを表示選択されています。
  • ユーザーにどの操作が必要かを尋ねます。
  • ユーザーの応答として読み込まれます。
  • 受け入れ可能な応答であるかどうかを判断し、受け入れられない場合は要求を繰り返します。
  • 計算し、その結果

表示メニューを表示し、彼らが望む変換ユーザー尋ねる:

あなたはどちらの変換をしたいですか?

次に、どの重量値を変換する必要があるかをユーザーに尋ねます。

どの重量値を変換しますか?

ユーザーが1を選択した場合、ポンドをキログラムに変換します。それ以外の場合は、キログラムをポンドに変換します。そうでない場合は、ユーザーの選択肢が無効です。

+0

ので、問題や質問は何ですか? – kaitoy

答えて

1

while (true)を使用してください。ループを終了するときにbreak;を入力してください。

int choice = input.nextInt();を最後にループの内側に置きます。

入力可能なすべての無効な入力をキャプチャするのに、elseを使用することもできます。


double kilograms, pounds; 
while (true) { 

     System.out.println("Which conversion do you want?"); 
     System.out.println("Pounds to Kilograms(enter 1)"); 
     System.out.println("Kilograms to Pounds(enter 2)"); 

     int choice = input.nextInt(); 

     if (choice == 1) { 
      // okay 
      lbsToKg(); // TODO: implement 
      break; // stops the loop 
     } else { 
      // invalid, will already continue the loop 
     } 
+0

助けてくれてありがとう –

+0

これがあなたの質問に答えるなら、答えの隣にあるチェックマークを使ってそれを受け入れることができます –

関連する問題