栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

C++求素数问题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++求素数问题

求助!!!

最近在刷一道求素数的问题,问题描述如下:

描述

输入一个整数m,输出比m小的最大的素数。

输入

一个正整数n,表示测试案例的数量。

每组测试案例中有一个整数m。

输出

针对每组案例,输出一个整数,表示比m小的最大的素数。如果比m小的数字里没有素数,则输出-1。

每组案例输出完都要换行。

样例输入复制样例 

3

11

15

0

样例输出

7

13

-1

然后我CSDN找了许多大佬的代码,只能查到如何求素数,但查不到如何求上一个素数的QAQ

然后想了半天想不出来。。下面是我找到的代码@

慢慢来8

#include
using namespace std;
int f(int m)
{
	int i, k = 0;
	for (i = 2; i < m; i++)
	{
		if (m % i == 0)
		{
			k++;
		}
	}
		 if (k == 0)
		{
			return 1;
		}
		else
		{
			return 0;
		}
	
}

int main()
{
	int n=0, a;
	cin >> a;
	for (a; a>= 2; a--)
	{
		if (f(a) == 1)
		{
			cout<< a< 

希望有大佬路过帮忙看看怎么求出上一个素数,或者讲讲怎么在循环中输出上一个数,谢谢!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1041189.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号