TB椰程 TypeBuddy 打字搭子

【例36.3】 最大质数

C++语法 · 循环结构 · 代码 · cpp · 难度 4/5 · 共 613 字

找 1 到 n 里最大的质数

  • C++语法
  • 例题

正文

// 原题:https://oj.yecheng.tv/p/P217
// 题意:输入 n,输出 1 到 n 里最大的质数;
//       一个质数都没有输出 No。
// 思路:从 n 往下枚举,
//       对每个数用试除法判断是否质数,
//       找到第一个就停。
#include <iostream>
using namespace std;

int main() {
    long long n;
    cin >> n;
    for (long long i = n; i >= 2; i--) {
        bool isPrime = true;
        // 试除法判断质数
        for (long long d = 2; d * d <= i; d++) {
            if (i % d == 0) {
                isPrime = false;
                break;
            }
        }
        if (isPrime) {
            cout << i << endl;
            return 0;
        }
    }
    cout << "No" << endl;
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK