输入一个正整数判断是否为素数
发布网友
发布时间:2022-05-26 21:49
我来回答
共2个回答
热心网友
时间:2023-11-05 15:36
package test;
import java.io.*;
/**
*
* @author chench 输入一个任意正整数,判断是否为素数
*/
public class Prime {
public static void main(String[] args) {
int i=0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
try {
System.out.print("Please enter a number:");
int num = Integer.parseInt(br.readLine());
for(i=2;i<=num;i++){
if(num%i!=0)
continue;
else
break;
}
if(i==num){
System.out.println("1");
}else{
System.out.println("0");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
我也知道这不是最有效的方法,好像for循环里的i小于num开方就可以了,但我试过,失败了,原因可能是类型的问题吧!所以也没有再去试了。如果大家有更好的办法,希望多多指教.......
热心网友
时间:2023-11-05 15:36
#include<stdio.h>
#include<math.h>
int fun(int a)
{int i;
for(i=2;i<=sqrt(a);i++)
{if(a%i==0)
return(0);};
return(1);
}
void main()
{
int n;
printf("请输入一个数字:");
scanf("%d",&n);
printf("%d\n",fun(n));
}