我的余数函数没有正确计算我遇到了问题。我正在尝试编写一个程序,告诉用户输入一个数字之后它可以被(2-9)整除的整数。无论数字是否符合条件,我都遇到问题if if语句总是在运行:
int five;
five = digit % 5;
if (five == 0)
{
System.out.println("This number is divisible by five!");
}
else {
}
System.out.println(five);
我还添加了一个println语句,看看五个是什么,当我输入数字36时,它给了我一个0的余数,应该是1.我也尝试过这种格式:< / p>
int five;
//five = digit % 5;
if (digit % 5 == 0)
{
System.out.println("This number is divisible by five!");
}
else {
}
System.out.println(five);
仍然有相同的结果。
答案 0 :(得分:0)
public static int remainder(int dividend, int divisior){
int remainder = dividend%divisior;
if(remainder==0){
System.out.println("no remainder");
return remainder;
}
else{
System.out.println("Remainder is =>"+remainder);
return remainder;
}
}
答案 1 :(得分:0)
java modulo运算符一切都很好,相信我。尝试手动设置digit
变量并检查结果,一切都会好的。问题可能是你从键盘输入值并以某种错误的方式转换它,从而改变变量,同时改变其余部分。如果是这种情况,只需使用:
Scanner sc = new Scanner(System.in);
int digit = sc.nextInt();
另外,你的第二种方法是不打印任何东西,你不会在任何地方初始化five
。