我不明白如何使用Modulus

时间:2018-02-11 05:40:27

标签: modulus

我对编码很陌生,我在使用它时遇到了很多麻烦:

声明2个整数变量。提示用户输入两个号码。 使用Scanner对象将值存储到变量中。 如果第二个数字是第一个数字的倍数,则显示“是”的倍数。否则显示“不是”的倍数

我在下面有这个代码然后我迷路了:

int number1, number2;
System.out.println("Enter a number:");
number1 = keyboard.nextInt();
System.out.println("Enter a Number:");
number2 = keyboard.nextInt();

4 个答案:

答案 0 :(得分:0)

模数是除以2个数的余数。如果number2是number1的倍数,则除以它们将具有余数0,否则不是。

package test;

import java.util.Scanner;

public class MyTest {

    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);

        int number1, number2;
        System.out.println("Enter a number:");
        number1 = keyboard.nextInt();
        System.out.println("Enter a Number:");
        number2 = keyboard.nextInt();

        int mod = number2 % number1;

        if (mod == 0) {
            System.out.println(number2 + " is a multiple of " + number1);
        } else { 
            System.out.println(number2 + " is not a multiple of " + number1);
        }
    }

}

答案 1 :(得分:0)

模数只是给你两个数的除法的余数。例如:4/3以编程方式给出余数为1,您可以尝试4%3,其中两个将给出相同的响应。在下面添加了一个python代码片段:

a = int(input("Enter first no."))
b = int(input("Enter second no."))
print("Modulus operation a%b gives : ", (a % b))
print("Is ", a, " multiple of ", b)
print((a%b) == 0)

答案 2 :(得分:0)

如果number1是number2的倍数,则将number2与余数0分开,  如果4是2的倍数而不是4%2 == 0,则为真,  这里%是模数运算符,它返回两个数的除法的余数:::

在你的情况下,如果number1是number2的倍数而不是 Number1%number2 == 0(必须);

比你的程序应该是这样的:

If(number1%number2==0)
{
System.out.println("number1 is a multiple of number 2");
 }
Else
 System.out.println("not a multiple");

答案 3 :(得分:0)

  

我迷失了

假设你正在参加吃巧克力的比赛,规则是:

同时吃三个巧克力

如果给你:

1 chocolate,  you will not eat, and 1 chocolate  will be left
2 chocolates, you will not eat, and 2 chocolates will be left
3 chocolates, you eat once,     and 0 chocolates will be left
4 chocolates, you eat once,     and 1 chocolate  will be left
5 chocolates, you eat once,     and 2 chocolates will be left
6 chocolates, you eat twice,    and 0 chocolates will be left
7 chocolates, you eat twice,    and 1 chocolate  will be left
...
100 chocolates, you eat 33 times, 1 chocolate will be left
...
1502 chocolates, you eat 500 times, 2 chocolates will be left

每次剩下的巧克力数量称为模数是数学,是计算机中的强大操作。

正如您所知,您随时可以使用少于3个巧克力(012)。

因此,x modulus y始终小于y0范围内的y-1

在编程中,modulus运算符为%

因此,如果我们使用modulus运算符%编写巧克力的方式,它看起来像:

1 % 3  =  1
2 % 3  =  2
3 % 3  =  0
4 % 3  =  1
5 % 3  =  2
6 % 3  =  0
7 % 3  =  1
...
100 % 3  =  1
...
1502 % 3  =  2

现在告诉我,你输了吗?