【例36.3】 最大质数
找 1 到 n 里最大的质数
正文
// 原题: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++语法 · 循环结构的其它内容
- 【例24.1】 重要的话说 n 遍
- 【例24.2】 26个兄弟姐妹1
- 【例24.3】 奇数求和
- 练24.1 老狼老狼
- 练24.2 for循环求和
- 练24.3 循环输出
- 【例25.1】 不说脏话
- 【例25.2】 26个兄弟姐妹2
- 【例25.3】 输出奇偶数之和
- 练25.1 打老虎
- 练25.2 订餐时间
- 练25.3 偶数求和
- 【例26.1】 人类的本质
- 【例26.2】 循环判断输出
- 【例26.3】 多数求和
- 练26.1 输出偶数
- 练26.2 分苹果
- 练26.3 求平均年龄
- 【例27.1】 求整数的和与均值(限c++)
- 【例27.2】 最小n值
- 【例27.3】 第几项
- 练27.1 叮叮当当
- 练27.2 布纳特难题
- 练27.3 称心如意(限c++)
- 【例28.1】 统计奖牌
- 【例28.2】 求出e的值
- 【例28.3】 数列分段
- 练28.1 多边形内角和
- 练28.2 满足条件的数累加
- 练28.3 短信计费(限c++)
- 练28.4 上课点名(限c++)
- 【例29.1】 求阶乘
- 【例29.2】 幂的末尾
- 【例29.3】 求小数的某一位
- 练29.1 人口增长问题
- 练29.2 末两位数
- 练29.3 银行利息
- 【例30.1】 平方根
- 【例30.2】回家作业
- 【例30.3】 按要求计算输出
- 练30.1 鸡尾酒疗法
- 练30.2 错误减法
- 练30.3 奇偶分家
- 【例31.1】 石头剪子布
- 【例31.2】 证书等级
- 【例31.3】正常血压
- 练31.1 年龄与疾病
- 练31.2 数值统计
- 练31.3 画图
- 【例32.1】 学游泳
- 【例32.2】 凑数
- 【例32.3】 数位积
- 练32.1 立方和不等式
- 练32.2 种植竹笋
- 练32.3 买房子
- 【例33.1】 卡(qia)常数
- 【例33.2】 两位数
- 【例33.3】 凑数
- 练33.1 3721数
- 练33.2 素数判断