public class HelloWorld {
公司主营业务:成都网站设计、做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出桑日免费做网站回馈大家。
public static void main(String[] args) {
System.out.println("请输入一个正整数n");
Scanner input = new Scanner(System.in);
int n = input.nextInt();
for (int i = 2; i = n; i++) // 1不是素数,所以直接从2开始循环
{
int j = 2;
while (i % j != 0) {
j++; // 测试2至i的数字是否能被i整除,如不能就自加
}
if (j == i)
//当有被整除的数字时,判断它是不是自身,若是,则说明是素数
{
System.out.println(i); // 如果是就打印出数字
}
}
}
}
求1-N以内的所有素数,实现思路如下:
1、 得到1到n之间的素数,存到一个ArrayList集合。
2、判断一个数是不是素数:只能被1和本身整除
说明:从2开始除,不需要到n,也就是循环条件是 n 就可以,这之间只要被整除了,那么他就不是素数了。
3、设置主函数,运行 getPrimeNumberToN获取限定范围内的素数。
执行结果图:
扩展资料:
实现功能的编程事项:
1、模块化思想。
先拆分需求,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有。不能把方法堆到一起,否则无法复用代码。
2、注意注释。
就算是自己的测试代码,尽量写清楚注释,这样即使过了三个月,再看代码,也能清晰明了。不要觉得简单,就懒得注释。
3、注意参数命名。
从类名到方法名,再到变量名,都不能随意取名,关于这个命名,不要嫌弃长,重点是意思清楚明白。见名知意(语义化),是最好的。
public class PrimeNumberMethod {
public static void printPrimeNumbers(int numberOfPrimes) {
int count = 0;
int number = 2;
final int NUMBER_OF_PRIMES_PRE_LINE = 10;
while (count numberOfPrimes) {//while也加个大括号啊,看了半天没看出来
if (isPrime(number)) {
count++;
if (count % NUMBER_OF_PRIMES_PRE_LINE == 0) {
System.out.println(number + " ");
} else {
System.out.print(number + " ");
}
}
//number写在if判断外面,如果if判断不成立,number一直是4
number++;
}
}
public static boolean isPrime(int number) {
for (int i = 2; i = number / 2; i++) {
if (number % i == 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
System.out.println("The first 50 prime numbers are \n");
printPrimeNumbers(50);
}
}