首页 > 编程语言 >C++机试——查找组成一个偶数最近的两个素数

C++机试——查找组成一个偶数最近的两个素数

时间:2024-09-04 21:25:12浏览次数:7  
标签:prime int number C++ 偶数 素数 num 机试

题目

描述

任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。

数据范围:输入的数据满足 4≤n≤1000 4≤n≤1000 

输入描述:

输入一个大于2的偶数

输出描述:

从小到大输出两个素数

思路

        以num/2为节点分别向上向下搜索素数 如果满足 i为素数,并且num-i同样为素数则打印输出

代码

#include <iostream>
#include "math.h"
using namespace std;
bool prime_number(int num)
{
	for (int i = 2; i <= sqrt(num); i++)
	{
		if (num % i == 0) return false;
	}
	return true;
}
int main() {
	int num;
	cin >> num;
	int max = 0;
	int min = 0;
	for (int i = num/2; i < num; i++)
	{
		if (prime_number(i) && prime_number(num - i))
		{
			max = i;
			min = num - i;
			break;
		}
	}
	cout << max << endl;
	cout << min << endl;
	return 0;
}

标签:prime,int,number,C++,偶数,素数,num,机试
From: https://blog.csdn.net/hemama_/article/details/141887921

相关文章

  • C++语言基础--代码框架
    引入    工欲善其事,必先利其器。我们在编写C++代码之前,一定要了解到C++的代码框架。代码框架可以说是我们所有的C++代码都一定具备的。本章将详细解析C++的代码框架。代码框架#include<cstdio>#include<iostream>usingnamespacestd;intmain(){return......
  • C++:异常
    文章目录什么是异常?异常: 报错:一、异常的处理方式1.抛出异常2.捕获异常二、标准异常三、自定义异常什么是异常?异常: 异常这个概念可能会有一些陌生,但是str.at(i)我们并不陌生,当i值越界时就会产生一个异常语句:terminatecalledafterthrowinganinstanceof......
  • windows C++ 并行编程-并发和UWP(三)
    控制执行线程Windows运行时使用COM线程模型。在此模型中,根据对象处理其同步的方式,对象被托管在不同的单元中。线程安全对象托管在多线程单元(MTA)中。必须通过单个线程访问的对象托管在单线程单元(STA)中。在具有UI的应用程序中,ASTA(应用程序STA)线程负责发送窗......
  • windows C++ 并行编程-并发和UWP(一)
    本文介绍当在通用Windows运行时(UWP)应用中使用任务类生成基于Windows线程池的异步操作时要谨记的一些要点。异步编程的使用是Windows运行时应用模型中的关键组成部分,因为它能使应用保持对用户输入的响应。可以启动长期运行的任务,而不必阻止UI线程,并且可以在以后接......
  • linux C++基于共享内存的同步机制
    无缘进程间同步,本来打算使用有名信号量进行同步,但是有名信号量的初始化会受进程启动顺序影响,故使用共享内存进行封装,封装后的使用方法类似二值信号量,代码如下:1#include<sys/ipc.h>//ipc:inter-processcommunication进程通信2#include<sys/shm.h>//shm:shareme......
  • 坐牢第三十五天(c++)
    一.作业1.使用模版类自定义栈代码:#include<iostream>usingnamespacestd;template<typenameT>//封装一个栈classstcak{private:T*data;//intmax_size;//最大容量inttop;//下标public://无参构造函数stcak();//......
  • 2024.9.4C++作业
    #include<iostream>#include<string>usingnamespacestd;classHuman{public:Human(){name="Unknown";age=0;}Human(stringn,inta){name=n;age=a;}~Hu......
  • 2024.9.3C++
    自行实现Mystring类#include<iostream>#include<cstring>usingnamespacestd;classmystring{public:mystring(){len=0;str=nullptr;}mystring(constchar*s){len=strlen(s);str=ne......
  • 2024.9.2C++作业
    自行实现一个Mystring类#include<iostream>#include<cstring>usingnamespacestd;classmystring{public:mystring(){len=0;str=nullptr;}mystring(constchar*s){len=strlen(s);str=n......
  • C++基础之杂项
    目录思维导图:学习内容:1. Lambda表达式1.1基本概念1.2定义格式1.3常用情况二、异常处理2.1什么是异常处理2.2何时使用异常处理2.3异常处理的格式2.4异常实例2.5构造和析构中的异常 2.6系统提供异常类 三、C++中文件操作3.1文件流对象的介绍3.2关......