的Java:寻找素数
这是用于在1到100的一切是除非素数定义的部分简单的找质数代码。我知道每当计数器等于2时都存在素数。但是,当计数器加1并在稍后重置为0时,这是如何工作的。的Java:寻找素数
Public class primeFinder { public static void main (String[] args) {
int i = 0;
int num = 0;
String primeNumbers = "";
System.out.print("Enter the value of n:");
//from here
for (i = 1; i <= 100; i++) {
int counter = 0;
for(num = i; num >= 1 ; num--) {
if(i % num == 0) {
counter++;
}
}
if (counter == 2) {
primeNumbers = primeNumbers + i + " ";
}
}
//To here
System.out.print("Prime numbers from 1 to 100 are : ");
System.out.println(primeNumbers);
}
}
回答:
每个数字是由自身和数字1整除既然是找到所有的素数,印刷质数后常见的计数器,计数器复位到零,以便它可以在递增下一个找到下一个素数的迭代(当counter == 2时)。在使用System.out.println()时,它应该是 System.out.println(“从1到100的素数是:”+ primeNumbers);而在使用System.out.println()时,它应该是 System.out.println
用于类的访问修饰符应该是“公”,而不是“公共”。
public class primeFinder {
public static void main (String[] args) {
int i = 0;
int num = 0;
String primeNumbers = "";
//from here
for (i = 1; i <= 100; i++) {
int counter = 0;
for(num = i; num >= 1 ; num--) {
if(i % num == 0) {
counter++;
}
}
if (counter == 2) {
primeNumbers = primeNumbers + i + " ";
}
}
//To here
System.out.print("Prime numbers from 1 to 100 are : "+primeNumbers);
}
}
OP->从1到100 素数:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
回答:
除了定义素数为 的部分外,一切都很简单。我知道有一个素数,每当计数器等于 2.但如何当计数器加1,并重置为0以后的工作。
这是很简单的。素数只有2个因素 - 1和数字本身。所以这里的代码片段取每个从1到100的数字并向后运行直到1并检查有多少因素在那里。如果因子的数量大于2,则该数字不是质数。
回答:
如果你只是想在0和100之间的检查primenumbers,我真的会输出一个常量数组。如果您需要检查更大的数字,则更好(更快)的算法是sieve of erathostenes。如果这还不够,你可能需要根据代数数论图书馆
回答:
你问为什么它的工作原理当计数器通过0到100之间的每一个整数设置为0 的代码循环,然后执行以下操作:
set Counter to 0 Divide your int with everyone between 0 and 100
If rest equals 0, add one to the counter
甲素是唯一一个和本身整除,所以柜台通常是两个,如果它是一个素数。
Then add the number to the list if count equals two, repeat with next number.
你应该知道,你的代码是不是最好的做法反正,像其他人所说
以上是 的Java:寻找素数 的全部内容, 来源链接: utcz.com/qa/259292.html