Java-判断一个数是不是素数

 1 import java.util.Scanner;
 2
 3 /**
 4  * @author 薛定谔的猫
 5  * java判断一个数是不是素数
 6  *
 7  * 素数又称质数,是指在一个大于1的自然数中,除了1和本身之外,不能被其他自然数整除的数*/
 8 public class PrimeNumber {
 9     public static void main(String[] args) {
10         Scanner sc = new Scanner(System.in);//扫描器,接收控制台输入信息
11         System.out.println("请输入一个大于1的整数:");
12
13         try {
14             int num = sc.nextInt();//接收控制台输入的整数
15
16             if (isPrime(num)) {//调用isPrime()方法
17                 System.out.println(num + "是素数");//若isPrime()方法返回true,输出是素数
18
19             } else {
20
21                 System.out.println(num + "不是素数");//若isPrime()方法返回false,输出不是素数
22             }
23
24         } catch (Exception e) {
25
26             System.out.println("请输入整数");//捕获异常,若输入非法数,输出异常
27         }
28         sc.close();
29     }
30
31     /**
32      * 用于判断一个数是否是素数,如果是,返回true,否则返回false
33      * @param a 输入的值
34      * @return true  false*/
35
36     public static boolean isPrime(int a) {
37         boolean flag = true;
38
39         if (a<2) {//素数不小于2
40             return false;
41         } else {
42             for(int i = 2;i<=Math.sqrt(a);i++) {
43                 if (a % i == 0) {//若果能被整除则说明不是素数,返回false
44                     flag = false;
45                     break;
46                 }
47             }
48         }
49         return flag;
50     }
51 }
时间: 2024-10-25 19:47:48

Java-判断一个数是不是素数的相关文章

Java 求1-100以内的所有素数,判断一个数是不是素数

质数(prime number)又称素数,有无限个. 质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数. 小师弟问了我个这么个联系题,虽然看似简单,但是,大家都觉得简单的东西,没必要分享的话,那初学者,不是很痛苦吗? 所以,我就给小师弟示范了一下.方便初学者,看看怎么写代码. 代码内部的细节(都是针对没开始工作,或者刚刚工作的哥们): 1,模块化思想. 先拆分需求,本来让你求1-100以内的素数,你不能上来就干,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有.

c语言:实现一个函数,判断一个数是不是素数。

实现一个函数,判断一个数是不是素数. 程序: #include <stdio.h> #include <math.h> int prime(int num) //prime表示素数 { int i = 0; int k = 0; k = sqrt(num); for (i = 2; i <= k; i++) { if (num%i == 0) { return 0; } } return 1; } int main() { int num; int ret; printf(&

java判断一个数是否为素数[转]

http://blog.csdn.net/lwcumt/article/details/8027586 import java.util.Scanner; //质数又称素数,是指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数 public class PrimeNumber { public static void main(String[] args) { Scanner scan = new Scanner(System.in);// 扫描器,接收控制台输入信息 Sy

Java判断一个数是不是快乐数

快乐数的定义: 快乐数(happy number)有以下的特性: 在给定的进位制下,该数字所有数位(digits)的平方和,得到的新数再次求所有数位的平方和,如此重复进行,最终结果必为1. 以十进制为例: 2 8 → 22+82=68 → 62+82=100 → 12+02+02=1 3 2 → 32+22=13 → 12+32=10 → 12+02=1 3 7 → 32+72=58 → 52+82=89 → 82+92=145 → 12+42+52=42 → 42+22=20 → 22+02=

c语言判断一个数是不是素数

#include <stdio.h> #include <math.h> int main() { // 输入一个整数数判断是不是素数 // 方法是用这个数去除2到根号num这些数如果为0则不是素数 int m,i,k; printf("请输入一个整数:"); scanf("%d",&m); k=(int)sqrt(m); for(i=2;i<=k;i++) if(m%i==0) break; if(i>k) printf

java 判断两个数是否异号

java 整型int占4个字节32位,两个数异或后移动31位判断结果,如果是1则异号,如果是0则同号 1 public class ShowEnviromentViarible { 2 3 public static void main(String[] args) { 4 int num1 = 1; 5 int num2 = -1; 6 System.out.println("num1 = " + num1); 7 System.out.println("num2 = &q

【c语言】判断一个数是不是素数?

#include<stdio.h>#include<math.h>int prime(int n){    int i;    if(n<2){        printf("数据错误!\n");        return -1;    }    for(i=2;i<=sqrt(n);i++){     if(n%i==0){         printf("%d不是素数!\n",n);            return 1;

如何判断一个数为素数(转载)

1000以内有35对双素数 public class Sushu { public static void main(String[] args) { // TODO Auto-generated method stub int qian = 3;//记录前一个素数 int l = 0;//计数器 for (int i = 5 ; i <= 1000; i++){ boolean b= true; //是素数 int k = (int)(Math.sqrt(i));//对素数开根号 for(in

实现一个函数,判断一个数是不是素数

#include<stdio.h> #include<stdlib.h> int fun(int i, int j) {  scanf_s("%d", &i);  for (j = 2; j < i; j++)  {   if (i%j == 0)   {    printf("%d不是素数\n", i);    return 0;   }  }   if (i == j)   {    printf("%d是素数\n

C语言函数实现判断一个数是不是素数

#include <stdio.h> #include <math.h> #define YES 1 #define NO 0 void main() {  int n;  int Prime_num(int n);//声明Prime_num函数    printf("please enter a number:");  scanf("%d",&n);//输入要判断的的数  Prime_num(n);//调用Prime_num函数