我正在創建一個計算兩個數字的程序。我的問題是0將是該程序的非法輸入,但不是再次詢問兩個數字。Java循環和零除數
程序繼續運行時沒有出現錯誤,或者在ZERO被估算時給出任何答案,假設要求用戶再次輸入兩個不同的數字。
我已經完成了所有的代碼,它主要工作,並沒有可見的錯誤。
import java.util.*;
import java.util.Scanner.*;
public class MinilabLoopLogic
{
public static void main(String[ ] args)
{
int num1, num2, divisor, total;
Scanner kb = new Scanner(System.in); //you do it!
System.out.print("Please enter 2 integers (separated by spaces): ");
num1 = kb.nextInt();
num2 = kb.nextInt();
System.out.println("\n\nThis program will generate numbers BETWEEN "+ num1 + " " + num2);
System.out.println("\nPlease enter the integer your output should be divisible by: ");
divisor = kb.nextInt();
while (divisor == 0)
{
divisor = kb.nextInt();
}
System.out.println("\n\n----------------------------------------");
//Be able to handle 1st number smaller
// OR 2nd number smalle
//Use the modulus operator to check if a number is divisible
if (num1 < num2)
{
for (total = num1+1; total < num2; total++)
{
if (total % divisor == 0)
{
System.out.println(total);
}
}
}
else
{
for (total = num1 - 1; total > num2; total--)
{
if (total % divisor == 0)
{
System.out.println(total);
}
}
}
}
}//end main()
這是什麼問題? 你可以擴展運行永遠的部分? –
我只是檢查代碼纔看到問題,所以我運行它,並且對我來說工作正常。如果輸入一個零除數,它會等待我輸入一個新的數字,一旦輸入一個非零數字,它就會給出結果並退出。 – blm
如果修復(對齊)所有縮進,代碼可能會更容易閱讀。 – Andreas