惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
N
Netflix TechBlog - Medium
Google Online Security Blog
Google Online Security Blog
月光博客
月光博客
量子位
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
The Cloudflare Blog
Blog — PlanetScale
Blog — PlanetScale
F
Full Disclosure
G
Google Developers Blog
罗磊的独立博客
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
A
About on SuperTechFans
IT之家
IT之家
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队
GbyAI
GbyAI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
The Register - Security
The Register - Security
U
Unit 42
D
Docker
Martin Fowler
Martin Fowler
L
LINUX DO - 热门话题
NISL@THU
NISL@THU
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
博客园_首页
Google DeepMind News
Google DeepMind News

飞絮落叶雪 - 编程

我让 Ai 写了一个记账本 1011-空心六边形 1149 - 回文数个数 1071 - 字符图形7-星号菱形 1140 - 亲密数对 1136 - 输出m和n范围内的完全数(完美数) 1089 - 找数字 1151-桐桐数
1138 - 求无暇素数
Mr.He · 2024-06-14 · via 飞絮落叶雪 - 编程

1138无暇素数.jpg

思路

  1. 将字符串读取并存入到数组a[i]中;
  2. 编写相关函数;
  3. 调用函数判断是否符合要求;
  4. 输出。

知识点

  1. 字符串的读入与存储;
  2. 函数的编写与调用;
  3. 难点是去掉最后一个逗号。

代码实现

#include <iostream>
using namespace std;

//MrHe.net原创,转载需保留链接,谢谢。

//定义一个判断质数的函数
bool isPrime(int x) {
    int i;
    bool r = true;
    for(i = 2; i * i <= x; i++) {
        if(x % i == 0) {
            r = false;
            break;
        }
    }
    if (x < 2) {
        r = false;
    }
    return r;
}
//定义一个函数,将字符串转换成数字
int charToNum(char a) {
    return a - 48;
}

int main() {
    char a[20];
    int b[20];
    int n1, n2, j, k = 0, x;
    cin >> a;
    int sum = 0;
    //将字符串%前面的数字存入数组a[i]
    for (int i = 0; a[i] != '%'; i++) {
        //从第二位开始,因为第一位没有i-1
        if(i > 0) {
            //判断相邻两个数和交换数位后是否均为质数
            n1 = charToNum(a[i]) * 10 + charToNum(a[i - 1]);
            n2 = charToNum(a[i - 1]) * 10 + charToNum(a[i]);
            //符合条件的数存入数组b[k]
            if(isPrime(n1) == true and isPrime(n2) == true) {
                b[k] = n2;
                k++;
            }
        }
    }
    //输出,这里去掉后面的逗号脑子都想破了~
    for(x = 0; x < k; x++) {
        cout << b[x];
        if(x < k - 1) {
            cout << ",";
        }
    }
}