ユーザーに整数を入力するように求めるプログラムを作成する必要がありますが、それらは正でなければなりません。ループを使用する必要があると確信しており、Math.abs() を使用することは許可されていないと思います。
私が今書いたものはかなり面倒に見えます。コードは次のとおりです。
public class Q1{
public static void main(String[] args){
int num1, num2, num3;
while(true){
System.out.println("Input first integer.");
num1 = TextIO.getInt();
if(num1 > 0)
break;
System.out.println("Integer isn't positive. Try again");
}
while(true){
System.out.println("Input second integer.");
num2 = TextIO.getInt();
if(num2 > 0)
break;
System.out.println("Integer isn't positive. Try again");
}
while(true){
System.out.println("Input third integer.");
num3 = TextIO.getInt();
if(num3 > 0)
break;
System.out.println("Integer isn't positive. Try again");
}
....
}
}
基本的に、整数が正であるかどうかをテストするために、整数ごとに個別の while ループを実行しました。これは、1 つのループを使用すると、適切に実行できないためです。まだ機能するループを 1 つだけ使用する方法はありますが、よりきれいに見えますか?