| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 572 人关注过本帖
标题:这个题目怎么处理
只看楼主 加入收藏
神雕大侠
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-5-18
收藏
 问题点数:0 回复次数:2 
这个题目怎么处理

求素数

Time Limit:1000MS Memory Limit:65536K
Total Submit:478 Accepted:128

Description

素数,又称质数,是只有两个正因数(1和自己)的自然数。 比1大但不是素数的数称之为合数,而1和0既非素数也非合数。素数的属性称为素性,素数在数论中有着非常重要的地位。
关於素数,最小的素数是2,而最大的素数并不存在,这一点欧几里德已在其《几何原本》中证明。 围绕素数存在很多的数学问题、数学猜想、数学定理,较为著名的有孪生素数猜想、哥德巴赫猜想等等。 素数序列的开头是这样:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113。
现在请你编程实现求一定范围内的素数。

Input

包括多个测试用例,每个测试用例占一行,由两个数m和n组成(2<=m<100,10<=n<=2000,m<=n)。当输入为0 0时结束程序。

Output

对应每个测试用例,输出该范围内的所有素数,并且每行10个素数,用空格分隔。每个测试用例输出结果用加一空行。

Sample Input


2 10
2 100
0 0

Sample Output


2 3 5 7


下面是我的程序


#include <iostream>
using namespace std;
int main ()
{
int a,m,j,b,i;
while((cin>>a>>b)&& a!=0 && b!=0)
{
for(i=a;i<=b;i++)
{
m=0;
for(j=2;j<=i/2;j++)
{
if(i%j==0)
{
m=1;
break;
}
}
if(m==0)
{
cout<<i<<endl;
}
}
}
}

这个程序虽然能够输出素数,但是不能够做到大于十个的时候换行。
请问一下大家,怎样才能使输出的数的个数每大于十个的时候就自动换行?

搜索更多相关主题的帖子: 478 哥德巴赫 欧几里德 Memory 
2007-10-13 09:24
coachard
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:1251
专家分:0
注 册:2007-8-12
收藏
得分:0 
用一个变量来控制,如果对10取模为0则打印换行符。

偶学编程,也许本身就是一个错。。。
2007-10-13 09:47
海子星竹
Rank: 1
等 级:新手上路
威 望:1
帖 子:58
专家分:0
注 册:2007-9-4
收藏
得分:0 
#include <iostream>
using namespace std;
int main ()
{
int a,m,j,b,i;
int k = 1;
while((cin>>a>>b)&& a!=0 && b!=0)
{
for(i=a;i<=b;i++)
{
m=0;
for(j=2;j<=i/2;j++)
{
if(i%j==0)
{
m=1;
break;
}
}
if(m==0)
{
cout<<i<<" ";
if(k%10 == 0)
{
cout<<endl;
}
k++;
}

}
}
return 0;
}
2007-10-13 15:01
快速回复:这个题目怎么处理
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050891 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved