1741 - 输出N以内的素数 nprime [1*+]

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

输入一个整数n

输出N以内的所有素数

<b><span>Input</span> </b> 

<span> 一个整数n <br />

<b><span>Output</span> </b> 

<span> 由小到大输出N以内的所有素数 <br />

每行一个数

<b><span>Sample Input</span> </b> 

样例输入1
10

样例输出1 2 3 5 7

<b><span>Sample Output</span> </b> 

 

<b><span>Hint</span> </b> 

2<=N<=5000

题目输入

题目输出

输入/输出样例

输入格式


                        

输出格式


                        

C++解答

#include<iostream>
using namespace std;
int n,c=0;
int main(){
    cin>>n;
    for(int i=2;i<=n;i++){
            for(int j=2;j<=i-1;j++)
            if(i%j==0) c++;
            if(c==0) cout<<i<<endl;
            c=0;
            }
    return 0;
}

Java解答

import java.util.*;

public class Main{
  public static void main(String[] args) {
    Scanner cin = new Scanner(System.in);
    int n = cin.nextInt();
    for(int i = 0; i <= n; i ++){
      if(isPrime(i)){
        System.out.println(i);
      }
    }
  }

  public static boolean isPrime(int n){
    if(n == 1 || n ==0){
      return false;
    }
    for(int i = 2; i <= (int)Math.sqrt(n); i ++){
      if(n%i==0){
        return false;
      }
    }
    return true;
  }
}