欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C++ / Java 输出a和b之间的素数

程序员文章站 2024-03-14 21:25:41
...

输入两个整数a和b,输出a和b之间的素数。

输入
有多组数据,每组包括两个整数a和b。
输出
a和b之间的素数,每组输出一行,每个素数后面有1个空格。
样例输入

2 10
8 23

样例输出

2 3 5 7
11 13 17 19 23


#include<iostream> 
#include<cmath> 
using namespace std; 
int main() 
{   
    int a,b,j;  
    while(cin>>a>>b)
	{ 
	    if(a>b)     
	    {
	        int mid=a;      
	        a=b;    
	        b=mid;  
	    }       
	    for (double i=a;i<=b;i++)   
	    {
	        int c=sqrt(i);//从2开始测试能否被整除         
	        for(j=2;j<=c;j++)       
	        {           
	            if((int)i%j==0)             
	            {               
	                break;          
	            }   
	        }       
	        if(j>=c+1)      
	        {           
	            cout<<i<<" ";   
	        } 
	    }  
	} 
    return 0; 
} 


//补充一种java的写法
import java.util.Scanner;

public class Main {

    private static Scanner in;

	public static void main(String[] args) {
    	in = new Scanner(System.in);
    	while(in.hasNext()) {
	    	int a=in.nextInt();
	    	int b=in.nextInt();
	    	if(a>b) {
	    		int mid=a;
	    		a=b;
	    		b=mid;
	    	}
	    	if(a==1)
	    		a++;
	    	for(int i=a;i<=b;i++) {
	    		boolean mid=true;
	    		for(int j=2;j<=sqrt(i);j++) {
	    			if(i%j==0) {
	    				mid=false;
	    				break;
	    			}
	    		}
	    		if(mid==true) {
	    			System.out.print(i+" ");
	    		}
	    			
	    	}
    	}
    	
    	
    }
 
}
相关标签: c++