import java.io.*;
创新互联建站网站建设公司,提供成都网站建设、成都网站制作,网页设计,建网站,PHP网站建设等专业做网站服务;可快速的进行网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,是专业的做网站团队,希望更多企业前来合作!
class prime{
private int num;
static boolean isprime(int num){
if(num=1) return false;
int i;
for(i=2;i=num/2;i++)
if(num%i==0) return false;
return true;
}
}
class Main {
public static void main (String[] args)
throws IOException{
int num=0;
String data;
BufferedReader br = new
BufferedReader(new
InputStreamReader(System.in));
System.out.print( "请输入一个整数:" );
data=br.readLine ();
try{
num = Integer.parseInt (data);
}
catch(NumberFormatException e){}
if(prime.isprime (num)){
System.out.println ( num+"是素数!" );
}
else
System.out.println ( num+"不是素数!" );
}
}
祝君好运啊
import java.util.*;
class Test {
public static void main(String[] args) {
System.out.println("请输入要进行判断的整数:");
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
System.out.println("您输入的整数是:" + number);
if(isPrimeNumber(number)) {
System.out.println("您输入的数" + number + "是素数。");
} else {
System.out.println("您输入的数" + number + "不是是素数。");
}
}
//判断素数的静态方法
public static boolean isPrimeNumber(int num) {
boolean flag = true;
if(num == 2) {
return flag;
}
for(int i = 1; i Math.sqrt(num); i++) {
if(num % 2 == 0) {
flag = false;
break;
}
}
return flag;
}
}
写了一个,不知道满足你的要求不?
求1-N以内的所有素数,实现思路如下:
1、 得到1到n之间的素数,存到一个ArrayList集合。
2、判断一个数是不是素数:只能被1和本身整除
说明:从2开始除,不需要到n,也就是循环条件是 n 就可以,这之间只要被整除了,那么他就不是素数了。
3、设置主函数,运行 getPrimeNumberToN获取限定范围内的素数。
执行结果图:
扩展资料:
实现功能的编程事项:
1、模块化思想。
先拆分需求,先拆分先考虑怎么确定一个数是不是素数,然后再复用到所有。不能把方法堆到一起,否则无法复用代码。
2、注意注释。
就算是自己的测试代码,尽量写清楚注释,这样即使过了三个月,再看代码,也能清晰明了。不要觉得简单,就懒得注释。
3、注意参数命名。
从类名到方法名,再到变量名,都不能随意取名,关于这个命名,不要嫌弃长,重点是意思清楚明白。见名知意(语义化),是最好的。
使用java编写判断自然数是否为素数的方式是,使用scanner来接受用户输入的数值,使用素数的算法,实例如下:
Scanner sr = new Scanner(System.in);
System.out.print("请输入a的值:");
int a = sr.nextInt();
boolean is = true;
if (a 1)
{
System.out.println(a + "不是质数,因为他小于一");
}
else
{
ListInteger list = new ArrayListInteger();
for (int i = 2; i a; i++)
{
if (a % i != 1 a % i != a)
{
if (a % i == 0){
is=false;
list.add(i);
}
}
}
if(is){
System.out.println("a是质数");
}else{
String yz="";
for (int i = 0; i list.size(); i++)
{
if (yz=="")
{
yz=yz+list.get(i);
}else{
yz=yz+","+list.get(i);
}
}
System.out.println("a不是质数,因为他含有因子"+yz);
}
}
楼主,首先你得知道,java是面向对象的语言。而c语言是面向过程的。
C语言你可以用scanf输入n。但是java是面向对象的。你想从屏幕得到一个数。必须调用一个类的方法从而取得n。这些类就是输入输出流对象。如BufferedReader等。
建议你去看看java的输入输出流。
一下是代码:
import java.io.*;
public class SystemInTest{
//判断是否为质数,是的话返回true不是的话返回false
public static boolean isPrimeNumber(int n)
{
//2为质数
if(2==n)
{
return true;
}
for(int i=2;in;i++)
{
if(n%i==0)
return false;
}
return true;
}
public static void main(String [] args) throws NumberFormatException, IOException{
int n=0;
while(true){//为了方便测试,无限循环
System.out.println("请输入一个大于1的整数:");
//以屏幕为输入源 新建一个BufferedReader
BufferedReader bin=new BufferedReader(new InputStreamReader(System.in));
n=Integer.parseInt(bin.readLine()); //从屏幕得到的是字符串类型的,转换为整数类型
if(isPrimeNumber(n))
{
System.out.println(n+":是一个质数.");
}else{
System.out.println(n+"不是一个质数.");
}
}
}
}