Tag: 模数

某些语言是否允许负模数?

我很好奇这些语言(Java,C …)忽略了模数运算的数学定义。 在模块操作中返回负值的意义是什么(根据定义,它应该总是返回正数)?

两个整数的乘积模

我必须找到c, c =(a * b)mod m a,b,c,m是32位整数。 但是(a * b)可以超过32位。 我试图找出一种计算c的方法,而不使用长或任何数据类型> 32位。 有任何想法吗? 如果m是素数,那么可以简化一下吗? 注意:基于一些评论, c =((mod m)*(b mod m))mod m,但在我的情况下,即使这个乘法也会溢出

用Java排序数组

用Java编写静态方法: public static void sortByFour (int[] arr) 它接收一个充满非负数(零或正数)的数组作为参数,并按以下方式对数组进行排序: 在数组的开头,将出现所有可被4整除的数字。 在它们之后,将出现数组中除以4且余数为1的所有数字。 在它们之后,将显示数组中除以4且余数为2的所有数字。 在数组的末尾,将出现所有剩余数字(除以4除以3的数字)。 (每组中数字的顺序无关紧要。) 该方法必须尽可能高效。 以下是我写的,但不幸的是它不能很好地工作…… 🙁 public static void swap( int[] arr, int left, int right ) { int temp = arr[left]; arr[left] = arr[right]; arr[right] = temp; } public static void sortByFour( int[] arr ) { int left = 0; int right = ( […]

请解释为什么17%40 = 17

我是Java的新手,实际上是编程。 我知道模数运算符(%)返回两个数的余数,但是,我不明白为什么17%40 = 17。 据我所知,40%17 = 6,17%5 = 2,40%5 = 0.我得到了剩下的返回值的要点。 但是17%40 = 17让我难过。 我可以设计的唯一合理化是,由于余数小于1,所以返回总值17,为什么不是0? 请帮我解释这个谜。

为什么Java的%运算符给出的结果与我的计算器的结果不同?

怎么来计算器-1 mod 26 = 25,但在C或Java -1 % 26 == -1 。 我需要一个像计算器一样解决它的程序。 这两者有区别吗?

`java(0%2!= 0)== false`

我一直坚持的部分是boolean(0 % 2 !=0) == false。 我的意思是如果2进入0,0次然后余数将是2,而2不等于0.所以它应该是真的。 然而,当我把boolean放在我的java程序中时,它将它视为false。 谁知道为什么? 我可以解决的唯一合乎逻辑的答案是,整数可能会进入0和无限次,因此被认为是假的,任何人?

如何在没有字符串或数组的情况下按升序排序整数数字?

我试图按升序排序任意长度的整数的数字,而不使用字符串,数组或递归。 例: Input: 451467 Output: 144567 我已经想出如何用模数除法得到整数的每个数字: int number = 4214; while (number > 0) { IO.println(number % 10); number = number / 10; } 但我不知道如何在没有数组的情况下订购数字。 不要担心IO类; 这是我们教授给我们的定制课程。