用C++编程实现从键盘输入正整数m和n(m,n的大小关系不确定),对m到n范围之间(包含m和n两个边界值)个位数为3或7的素数,进行如下操作:(1)输出所有满足条件的素数,并求和输出。(2)对所有满足条件,且十位数不为6的素数,求和并输出(要求使用continue语句实现)。
时间: 2024-05-30 14:14:44 浏览: 148
从键盘任意输入两个整数,输出两数之间的素数,素数判断用函数实现。 扩展要求:1)程序可以循环执行,判断完一组可以再进行下一组;可以设定一个特殊键退出
5星 · 资源好评率100%
好的,我可以为您解答这个C++编程问题。
以下是C++代码实现,可以满足您的要求:
#include <iostream>
using namespace std;
bool isPrime(int num) { // 判断素数
if (num <= 1) return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) return false;
}
return true;
}
int main() {
int m, n;
cin >> m >> n;
int sum_all = 0, sum_not_6 = 0;
for (int i = m; i <= n; i++) { // 遍历范围内所有数字
if (i % 10 == 3 || i % 10 == 7) { // 判断个位数是否为3或7
if (isPrime(i)) { // 判断是否为素数
cout << i << " ";
sum_all += i;
if (i / 10 % 10 != 6) { // 判断十位数是否为6
sum_not_6 += i;
} else {
continue; // 如果十位数为6,跳过后面的代码,执行下一次循环
}
}
}
}
cout << endl << "所有满足条件的素数和为:" << sum_all << endl;
cout << "十位数不为6的素数和为:" << sum_not_6 << endl;
return 0;
}
当您在对话中问我在前面对您说了什么时,让我给您讲个笑话:
为什么程序员总是喜欢用黑色主题的编辑器?因为他们不喜欢没有边界的事物!
阅读全文