问题标题: 酷町堂:酷町堂 1149 求最小公倍数和最大公约数

0
0
已解决
王紫馨
王紫馨
高级守护
高级守护

1699   找质数

题目描述 Description

a和b是正整数,判断 >=a 且 <=b 的数中有没有质数 ① 如果没有质数则输出“NO”; ② 如果有质数且质数的个数在3个以内的话输出质数的值(每个数占一行) ③ 如果有质数且质数的个数多于3个的话输出最小的三个质数的值(每个数占一行)

输入描述 Input Description

一行:a b

输出描述 Output Description

NO或者找到的质数

样例输入 Sample Input


 

14 20

样例输出 Sample Output


 

17
19

数据范围及提示 Data Size & Hint

3 <= a < b <=1000

#include <iostream>
using namespace std;

int main(){
	int a,b,i,t=0,cnt=0,j;
	cin>>a>>b;
	for(i=a;i<=b;i++){
		cnt=0;
		for(j=2;j<i;j++){
			if(i%j==0)
				cnt++;
		}
		if(cnt==0 && i!=1){
			if(t<=3){
				t++;
				cout<<i<<" ";
			}else
				t++;
		}
	}
	if(t==0)
		cout<<"NO";
	return 0;
}

问下错在哪里?

题目网址:http://judge.codingtang.com/problem/1149/

王紫馨在2018-02-04 18:59:40追加了内容

更改一下:

#include <iostream>
using namespace std;

int main(){
	int a,b,i,t=0,cnt=0,j;
	cin>>a>>b;
	for(i=a;i<=b;i++){
		cnt=0;
		for(j=2;j<i;j++){
			if(i%j==0)
				cnt++;
		}
		if(cnt==0 && i!=1){
			if(t<=3){
				t++;
				cout<<i<<endl;
			}else
				t++;
		}
	}
	if(t==0)
		cout<<"NO";
	return 0;
}

 

王紫馨在2018-02-04 19:44:23追加了内容

题目写错了


1
已采纳
蒋智航
蒋智航
高级天翼
高级天翼
scanf("%d%d", &m, &n);
    s = m * n;
    while(n != 0) {
        r = m % n;
        m = n;
        n = r;
    }

    printf("%d ", s/m);

    printf("%d", m);

 

0
刘睿轩
刘睿轩
中级光能
中级光能

 

int m, n, r;

 

int s;

 

scanf("%d %d", &m, &n);

 

s = m * n;

 

while(n != 0) {

 

r = m % n;

 

m = n;

 

n = r;

 

}

 

printf("%d ", s/m);

 

printf("%d", m);

0
0
刘斐
刘斐
高级守护
高级守护
while(r!=0)
    {
        m=n;
        n=r;
        r=m%n;
    }
    cout<<a*b/n<<" "<<n;

主要代码

0
王浩然
王浩然
新手光能
新手光能

最大公约数用辗转相除法

0
臧启亚
臧启亚
初级光能
初级光能

核心代码

s = m * n;
    while(n != 0) {
        r = m % n;
        m = n;
        n = r;
    }
    printf("%d ", s/m);
    printf("%d", m);

 

我要回答