java求素数代码
1、设计实现:通过for循环输出,使用break跳出。
(1)需求:输出1~100的所有素数。
(2)素数:
--判断条件1:只能被1和本身整除的称为素数。
--判断条件2:在区间(1,x/2)中找不到能整除素数x的整数。
--判断条件3:在区间(1,sqrt(x))中找不到能整除素数x的整数。
(3)完整代码如下:
2、if(b)语句解析:是否是质数的标志,是就输出 。
b的值写在if (n % i == 0){ b = false; }中。这就是质数的判断发发(即如果有能被整除的,则不是质数 ),判断结束后给b赋值,如果为真就通过if语句输出,如果为假则跳过循环(break)。
扩展资料:
java中break函数:用于switch语句当中,用于终止语句。
试验代码如下:
输出:
参考资料:
百度百科--break
这个的主要点是嵌套的循环,要注意循环要遍及数据的循环、逻辑判断,素数就是表示除1及其本身外不能被其他比他小的整数整除,掌握这点就可以理解了,下面代码仅供参考:
//实现求1-100之间的所有素数public class Test{public static void main(String[] args) {//使用外层循环来控制1-100的数据的遍历for(int i = 1 ; i j){ //如果可以被小于他的数据整除,表示该数不是素数,跳出循环 if(i % j == 0){break; } j++;}//如果没有找到比其小的数据可以整除,则表示该数是素数if(i == j){System.out.println(i);}}}}
求1-N以内的所有素数,实现思路如下:
1、 得到1到n之间的素数,存到一个ArrayList集合。
2、判断一个数是不是素数:只能被1和本身整除
说明:从2开始除,不需要到n,也就是循环条件是 < n 就可以,这之间只要被整除了,那么他就不是素数了。
3、设置主函数,运行 getPrimeNumberToN获取限定范围内的素数。
执行结果图:
扩展资料:
实现功能的编程事项:
1、模块化思想。
先拆分需求,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有。不能把方法堆到一起,否则无法复用代码。
2、注意注释。
就算是自己的测试代码,尽量写清楚注释,这样即使过了三个月,再看代码,也能清晰明了。不要觉得简单,就懒得注释。
3、注意参数命名。
从类名到方法名,再到变量名,都不能随意取名,关于这个命名,不要嫌弃长,重点是意思清楚明白。见名知意(语义化),是最好的。
一、素数存放数组
int[] array=new int[100];
int i,j;
int Index=0;//设置一个变量用于存放索引的改变
for (i=2;i<=100;i++){ //外循环进行遍历素数范围
for(j=2;j<i;j++) //内循环用于判断外循环的值是否为素数
if(i%j==0) //判断在1-i之间是否存在能让i整除的数
break; //如果存在就代表,不是素数,反之则是
if (j==i){ //如果j==i,则证明在1-i之间没有数能整除i,说明i是一个素数
array[Index]=i; //将i存放进数组
Index++; //每存放一个数,则索引位置加1
}
else
continue; //如果不相等,则继续外循环下一个数
}
for (int k=0;k<Index;k++)//输出,实际存放个数则为Index
System.out.println(array[k]);
}
最后如果不存放数组直接输出的话,只需要在array[Index]=i处直接使用System.out.println(i)即可
public class test {
public static void main(String ags[]) {
for(int i = 1; i <= 100; ++i) // 测试输出1~100之间的素数
if(isPrime(i)) System.out.print(i + " ");
}
static boolean isPrime(int n) // 检测数n是否是素数的函数
{
int i;
if(n < 2) return false; // 排除0,1
for(i = (int)Math.sqrt(n); i >= 2; --i)
if(n % i == 0)
break;
return i == 1; // 如果除1和n本身以外没有其他因子,那么n是素数
}
}
class Sushu
{
public static void main(String args[])
{
int i, j;
for (i = 1; i <= 100; i++)
{
for (j = 2; j < i; j++)
if (i % j== 0) break;
if(j<i)
continue;
else
System.out.print(i);
}
}
}
如下是球100到200之间的素数public class shisi {
public static void main(String[] args){
int sum = 0;
int num = 0;
boolean isNum=false;
System.out.println("素数分别如下:");
for(int i=101;i<=200;i++)
{
for(int j=2;j<=(int)Math.sqrt(i);j++)
{
if(i%j==0)
{
isNum=false;
break;
}
else
{
isNum=true;
num=i;
}
}
if(isNum)
{
sum++;
System.out.println(num);
}
}
System.out.println("一共有"+sum+"个素数");
}
}
用java求3到100的素数,初学者,求简单的
System.out.println("1--100之间的素数(也称质数)的个数 -->"+count);System.out.println("1--100之间的素数(也称质数)的个数之和 -->"+sum);}
Java求100以内的质数的小代码!
(1)需求:输出1~100的所有素数。(2)素数:--判断条件1:只能被1和本身整除的称为素数。--判断条件2:在区间(1,x\/2)中找不到能整除素数x的整数。--判断条件3:在区间(1,sqrt(x))中找不到能整除素数x的整数。(3)完整代码如下:2、if(b)语句解析:是否是质数的标志,是就输出 ...
怎样用Java求1~10000中的所有质数最简便的方法
运用java8新特性stream来解决 参考以下代码 \/** * IntStream.range(1,10001) :获取一个stream,是从1-10000的 * filter: 取出stream每个数字进行过滤,比如选取数字300,则再构造一个stream,从2-299,依次用300取余2-299中的数,若有一个是整除,余数为0的话,这个数字就不是我们要找的质数,...
java里怎么实现素数?
import java.util.Scanner;\/\/质数又称素数,是指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数public class PrimeNumber {public static void main(String[] args) {Scanner scan = new Scanner(System.in);\/\/ 扫描器,接收控制台输入信息System.out.print("请输入一个整...
输出1到100之间的素数 用JAVA编写
for(int i=1;i <=100;i++){ int iii=0;for(int ii=2;ii <=100;ii++){ if(i%ii==0){ iii=iii+1;} } if(iii==1){ Console.WriteLine(i.ToString());} } Console.ReadLine();这个最好理解 int MAX_NUM = 100; \/\/最大 List <int> primes = new List <int>(); \/\/...
JAVA(求修改代码)读入整数n,对于大于等于6的偶数,分解为两个素数之...
当满足条件b%j!=0&&a%i!=0时,有可能出现两数可以被其他数整除。例如a为10不被3整除,b为12不被5整除。修改方法:通过先计算一定数量的素数,放在一个数组中,然后从小到大遍历,若是n-a=b,若a和b都在数组中,则满足题目条件。
编写java程序找出2-100之间的所有素数 求大神
编写java程序找出2-100之间的所有素数 求大神 素数又称质数,有无限个。素数定义为在大于1的整数中,除了1和它本身以外不再有其他因数的数称为素数。java程序找出2-100之间的所有素数,代码如下:public void findPrimeNumber(){ 存放素数集合 List<Integer> lists=new ArrayList<Integer>();遍历2...
要求用JAVA编程输出3---100以间的所有素数。
package number;import java.util.HashMap;import java.util.Map;\/ 查找小于某个数的所有素数。最简单的方法就是试除法,将该数N用小于等于N的平方根的所有素数去试除,若均无法整除,则N为素数。author Owner \/ public class CheckPrime { \/ 用来保存所有已查找到的素数,为后面验证N为素数时提供...
利用Java编写应用程序求100以内的全部素数
public static void main(String[] args) { int i,n,k=0;for (n = 3; n<=100; n++) { \/\/3~100的所有数 i=2;while (i<n) { if (n%i==0) break; \/\/若能整除说明n不是素数,跳出当前循环 i++;} if (i==n) { \/\/如果i==n则说明n不能被2~n-1整除,是素数...
用Java语句求100以内的素数
public static void main(String[] args) { for (int i = 1; i <= 100; i++) { \/\/声明变量判断是否能被其它整除 boolean flage = false;\/\/其它数,表示从2开始,i-1结束 for (int j = 2; j < i; j++) { \/\/判断如果被其它数整除,那么这个数就不是素数 \/\/结束次循环,并标识为...
广娴天泉: 求1-N以内的所有素数,实现思路如下: 1、 得到1到n之间的素数,存到一个ArrayList集合. 2、判断一个数是不是素数:只能被1和本身整除 说明:从2开始除,不需要到n,也就是循环条件是 < n 就可以,这之间只要被整除了,那么他就不...
静安区17593555575: java判断素数的代码 - ?
广娴天泉: 法一:class Test2 { public static void main (String []args) { int j; for(int n=1;n<=100;n++) { for(j=2;j<=n-1;j++) { if(n%j==0) break; } if(j>=n-1) System.out.println(n); } } }法二:import java.awt.*; import java.applet.*; import java.awt.event.*; public ...
静安区17593555575: java求素数程序 - ?
广娴天泉: 只有几两除数是最好的例道子根据该方法做出判断 进口java.math中* ;. 类尝试{ 公共静态布尔IsTrue运算回答(INT NUM){ 布尔IsTrue运算= TRUE; 的for(int i = 2;我<=的Math.sqrt(NUM);我++){ 如果(NUM%我== 0){IsTrue运算= FALSE; 突破; }}返回IsTrue运算; }公共静态无效的主要(字串[] args){System.out.print(IsTrue运算(15)); }}
静安区17593555575: 跪求~~JAVA求1到100的全部素数 - ?
广娴天泉: public class Test{ int m=0; for(int i=1;i<=100;i++){ for(int int j=1;j<=i/2;j++){ if(i%j == 0) m++; } if(m == 2){ System.out.print(i+","); } m=0; } } 这样不知道可不可以 我没有运行.你试试看吧!
静安区17593555575: JAVA:求1到100素数 - ?
广娴天泉: public class Test{public static void main(String []arg){prime(100);} // 什么是质数,合数,约数? // “素数”,又称“质数”,是指: // 除1和其自身之外,没有其它约数的正整数 // 如 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,... // 2是最小的质...
静安区17593555575: 请看下面一段JAVA求素数的代码 - ?
广娴天泉: 哪里不通呢?求2-100之间的素数 如果a能被b整除,说明a不是素数,break跳出循环,这样,没有循环完毕,b==a也就不成立.a是素数,则b从2到a-1都不会有a % b == 0成立,则到最后b为a时循环结束.b == a条件成立.str += " "+a;是以字符型储存.结果是:2 3 5 7……
静安区17593555575: java编程 素数 - ?
广娴天泉: do{n++;flag=1; for(i=2;i<=n/2;i++)if(n%i==0){flag=0;break;}}while(flag==0);}
静安区17593555575: 用JAVA程序求素数 - ?
广娴天泉: public class Prime1 { public static void main(String[] args) { // TODO Auto-generated method stub int n = 2;while(nboolean isPrime=false; for(int i = 2; iif(n % i == 0) {isPrime = true;break;}}if(isPrime==false) {System.out.println(n); }n++; } } }
静安区17593555575: Java编程,求纯粹素数 - ?
广娴天泉: 求纯粹素数的Java程序如下 import java.util.Scanner; public class PurePrime {public static boolean isPrime(int num){int i;if(num==1) return true;for(i=2;i<num;i++){if(num%i==0){break;}}if(i==num)return true;elsereturn false;}public ...
静安区17593555575: 用JAVA语言编写一程序,求100以内的所有素数 - ?
广娴天泉: <pre t="code" l="java">public class Yugi{ public static void main(String[] args){ int sum = 0; for(int i = 2; i < 100; i++){ boolean isPrime = true; for(int j = 2; j < i; j++){ if(i % j == 0){ isPrime = false; break; } } if(isPrime){ sum += i; } } System.out.println(sum); } }