import java.io.*; 
import java.math.*;
 class PrintNum

public static void main(String args[]) 

int n; 
String str=" "; 
BufferedReader buf; 
buf=new BufferedReader(new InputStreamReader(System.in)); 
System.out.print("请输入一个整数:"); 
try 

str=buf.readLine(); 
}catch(IOException ex){

n=Integer.parseInt(str); //n是整数
jud(n);} public static void jud(int n){
boolean prime[n+1];
for(int m=2;m<=n+1;m+=2)
prime[m-1]=true;
prime[m]=false;

for(int i=3;i<=sqrt(n);i+=2){
if(prime[i])
for(j=i+i;j<=n)prime[j]=false;
}
System.out.println("测试"+i+"余数"+a);



}

解决方案 »

  1.   

    import java.io.*;  
    import java.math.*;
    import java.util.*;
     class test
    {  
    public static void main(String args[])  
    {  
    Scanner sc=new Scanner(System.in);
    int n=sc.nextInt();
       getPrime(n);
    }
     public static void  getPrime(int n)
    {
     for(int i=2;i<n+1;i++)
    {
     boolean isPrime =true;
    for(int j=2;j<Math.sqrt(i+1);j++)
    {
    if(i%j==0)
    {
    isPrime=false;
    break;
    }
    }
    if(isPrime)
    System.out.print(i+",");
    }
    }
    }你的逻辑看不懂
      

  2.   

    import java.io.*;  
    import java.math.*;
     class test
    {  
    public static void main(String args[])  
    {  
    int n;  
    String str=" ";  
    BufferedReader buf;  
    buf=new BufferedReader(new InputStreamReader(System.in));  
    System.out.print("请输入一个整数:");  
    try  
    {  
    str=buf.readLine();  
    }catch(IOException ex){
    }  
    n=Integer.parseInt(str); //n是整数
    jud(n);}  public static void jud(int n){boolean[] prime=new boolean[n+1];
    for(int m=2;m<=n+1;m+=2)
    {
      prime[m-1]=true;
       prime[m]=false; 
    }
    int i=3;
    for(;i<=Math.sqrt(n);i+=2){
    if(prime[i])
    for(int j=i+i;j<=n;)
    prime[j]=false;
    }
    System.out.println("测试"+i+"余数");}}
    改了下,能编译,逻辑自己改
      

  3.   

    做法和二楼的基本一样import java.io.*;  
    import java.math.*;
    public class Exct5{  
    public static void main(String args[]){  
    int n;  
    String str=" ";  
    BufferedReader buf;  
    buf=new BufferedReader(new InputStreamReader(System.in));  
    System.out.print("请输入一个整数:"); 

    try  
    {  
    str=buf.readLine();  
    }catch(IOException ex){
    }  
    n=Integer.parseInt(str); // n是整数
    jud(n);

    }  

    public static void jud(int n){
    boolean bool = true;
    for(int j=2;j<n;j++){
    bool = true;
    for(int i=2;i<=j/2;i++){
    if(j%i == 0){
    bool = false;
    break;
    }
    }
    if(bool){
    System.out.print(j + "\t");
    }
    }

    }
    }
      

  4.   

    public static void main(String...strings)
    {

    printPrime(50,200);//输入N=200 }
    public static void printPrime(int m,int n)
    {
    for(int i=m;i<=n;i++) 
    {
    boolean flag=false;
    if(i==2||i==3) 
    {System.out.println(i+" ");continue;}

    int b=(int)(i/2);
    for(int j=2;j<=b;j++)
    {
    if(i%j==0) {flag=false;break;}
    if(i%j!=0) {flag=true;continue;}
    }
    if(flag)
    System.out.println(i+" ");   
    }
    }