素数

原创 2018年04月16日 16:34:40

素 数



描述

走进世博园某信息通信馆,参观者将获得前所未有的尖端互动体验,一场充满创想和喜悦的信息通信互
动体验秀将以全新形式呈现,从观众踏入展馆的第一步起,就将与手持终端密不可分,人类未来梦想的惊喜
从参观者的掌上展开。
在等候区的梦想花园中,参观者便开始了他们奇妙的体验之旅,等待中的游客可利用手机等终端参
与互动小游戏,与梦想剧场内的虚拟人物 Kr. Kong 进行猜数比赛。当屏幕出现一个整数 X 时,若你能比
Kr. Kong 更快的发出最接近它的素数答案,你将会获得一个意想不到的礼物。
例如:当屏幕出现 22 时,你的回答应是 23;当屏幕出现 8 时,你的回答应是 7;若 X 本身是素数,
则回答 X;若最接近 X 的素数有两个时,则回答大于它的素数。

输入

第一行: N 要竞猜的整数个数
接下来有 N 行, 每行有一个正整数 X X

输出

输出有 N 行,每行是对应 X 的最接近它的素数。
【 约束条件】
1≤N≤5 1≤X≤1000

样例输入

4
22
5
18
8

样例输出

23
5
19

7


答案:(纯手写亲们)思路是:首先判断是否为素数,若为素数,则输出,不是素数,则判断该数的上下俩个素数,然后在比较距离大小,进行输出。亲,多多练习------波。


#include<iostream>
using namespace std;
int prime(int w)
{
int i;
for (i = 2; i < w; i++)
{
if (w%i == 0)
return 0;
}
if (i == w)
return 1;
}
void nearprime(int q)
{
int i1,i2,l1,l2;
i1 = q - 1;
i2 = q + 1;
while (i1>=2)
{
if (prime(i1))
{
l1 = i1;
break;
}
i1--;
}
while (1)
{
if (prime(i2))
{
l2 = i2;
break;
}
i2++;
}
if (q - l1 >= l2 - q)
{
printf("%d\n", l2);
}
else
printf("%d\n", l1);
}
int main()
{
int n,m;
scanf("%d", &n);
while (n--)
{
scanf("%d", &m);
if (prime(m))
printf("%d\n", m);
else
nearprime(m);
}
}



素数猜想(ACM题)

  • 2010年11月13日 10:30
  • 201KB
  • 下载

VB 找素数

  • 2010年06月07日 14:05
  • 36KB
  • 下载

素数定义 素数判定证明 素数求解算法

  • 2009年07月12日 16:11
  • 5KB
  • 下载

素数算法素数代码

  • 2011年12月22日 13:00
  • 32KB
  • 下载

素数Vb检测

  • 2013年03月23日 17:40
  • 20KB
  • 下载

C++ 玩转素数(前方高能哦)

以下均为多组输入: 1. 判断一个数是否为素数,是则输出YES,不是则输出NO 源代码: #include #include using namespace std; int main() ...
  • cr496352127
  • cr496352127
  • 2016-08-28 12:12:33
  • 1350

素数的分布(素数定理),求1~10^n 素数个数的位数

素数定理: 素数有无穷多个,能估计出一个小于正实数x的素数有多少个,并用π(x)来表示,这就是素数定理 定理内容: 随着x的增长,π(x)/(x/lnx)=1  具体数据见下表: n     ...
  • qq547276542
  • qq547276542
  • 2016-01-26 00:03:08
  • 4136

HDU:分拆素数和

主要是求素数,用素数筛选法求素数,制出一张素数表。访问起来比较方便
  • wyxeainn
  • wyxeainn
  • 2016-09-07 20:35:02
  • 455

多素数RSA系统简介

普通的RSA系统,在生成密钥时使用两个大素数,以它们的乘积作为模。本文介绍一种PKCS#1 V2.1中描述的“多素数RSA系统”,它可以使用超过两个素数的乘积作为模。 多素数RSA密钥产生算法如下:1...
  • Micro_lee
  • Micro_lee
  • 2006-12-25 16:59:00
  • 934

NYOJ24 素数距离问题

描述 现在给出你一些数,要求你写出一个程序,输出这些整数相邻最近的素数,并输出其相距长度。如果左右有等距离长度素数,则输出左侧的值及相应距离。 如果输入的整数本身就是素数,则输出该素数本身,距离输出0...
  • xn4545945
  • xn4545945
  • 2013-12-08 15:19:09
  • 4194
收藏助手
不良信息举报
您举报文章:素数
举报原因:
原因补充:

(最多只允许输入30个字)