亲和数验证(验证范围1~10000)c语言代码和亲和数验证原理
时间: 2024-10-09 14:16:43 浏览: 154
100题全.zip_matlab solve_noj亲和数_variousivw_你会存钱吗noj
亲和数是指两个质数相加等于第三个质数的一对数字,例如6 + 8 = 14,14是一个合数而不是质数,所以6和8不是亲和数。验证1到10000之间的亲和数通常涉及找到所有小于这个范围内的质数,并检查它们是否满足条件。
以下是简单的C语言代码实现亲和数验证的基本步骤:
```c
#include <stdio.h>
#include <stdbool.h>
// 判断一个数是否为质数
bool is_prime(int num) {
if (num <= 1) return false;
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0)
return false;
}
return true;
}
// 验证一对数字是否为亲和数
void check_affine_sum(int a, int b) {
if (is_prime(a) && is_prime(b) && is_prime(a + b)) {
printf("%d 和 %d 是一组亲和数。\n", a, b);
} else {
printf("%d 和 %d 不是亲和数。\n", a, b);
}
}
int main() {
// 遍历1到10000
for (int i = 2; i < 10000; ++i) { // 质数从2开始
for (int j = i + 1; j < 10000; ++j) {
check_affine_sum(i, j);
}
}
return 0;
}
```
阅读全文