C++ 实现根据输入正整数奇偶性计算偶数和或约数和
以下是实现该功能的 C++ 代码: ```cpp #include <iostream> // 当 n 为奇数时,计算 1 到 n 之间所有偶数之和 int sumOfEvenNumbers(int n) { int sum = 0; // 从 2 开始,以 2 为步长遍历,累加偶数 for (int i = 2; i < n; i += 2) { sum += i; } return sum; } // 当 n 为偶数时,计算 n 的所有约数之和 int sumOfDivisors(int n) { int sum = 0; // 遍历 1 到 n 的所有数 for (int i = 1; i <= n; i++) { // 如果 i 是 n 的约数,则累加到 sum 中 if (n % i == 0) { sum += i; } } return sum; } int main() { int n; std::cout << "请输入一个正整数 n: "; std::cin >> n; if (n % 2 == 1) { // n 是奇数,计算 1 到 n 之间所有偶数之和 int result = sumOfEvenNumbers(n); std::cout << "1 到 " << n << " 之间所有偶数之和为: " << result << std::endl; } else { // n 是偶数,计算 n 的所有约数之和 int result = sumOfDivisors(n); std::cout << n << " 的所有约数之和为: " << result << std::endl; } return 0; } ``` ### 代码解释: 1. **`sumOfEvenNumbers` 函数**:该函数接收一个整数 `n`,用于计算 1 到 `n` 之间所有偶数的和。通过 `for` 循环从 2 开始,每次增加 2,将偶数累加到 `sum` 中。 2. **`sumOfDivisors` 函数**:该函数接收一个整数 `n`,用于计算 `n` 的所有约数之和。通过 `for` 循环遍历 1 到 `n` 的所有数,判断是否为 `n` 的约数,如果是则累加到 `sum` 中。 3. **`main` 函数**:首先从用户输入获取一个正整数 `n`,然后判断 `n` 是奇数还是偶数。如果是奇数,调用 `sumOfEvenNumbers` 函数计算 1 到 `n` 之间所有偶数之和;如果是偶数,调用 `sumOfDivisors` 函数计算 `n` 的所有约数之和,并输出结果。 ######[AI问答 | 660点数解答 | 2026-02-28 20:22:46]
- 使用位运算对黄金城原材料编号进行奇偶分类的C++程序(字节豆包 | 211点数解答 | 2026-02-28 20:38:57)4
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)331
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)298
- 幼儿园小朋友学号奇偶分类:代码实现与详细解释(字节豆包 | 406点数解答 | 2025-11-26 19:39:05)51
- C++实现:输入整数判断奇偶性及是否为 5 或 4 的倍数(DeepSeek | 137点数解答 | 2026-01-04 19:15:44)31
- 超详细!整数奇偶与倍数判断代码解析及补全(字节豆包 | 462点数解答 | 2026-01-08 12:43:56)35
- C++:判断输入整数奇偶性及是否为 4 或 5 的倍数(字节豆包 | 159点数解答 | 2026-01-17 19:02:05)34
- C++ 代码实现自定义运算 x@y = x² + y² - xy 及 x@(x+y) 计算(DeepSeek | 215点数解答 | 2025-12-13 15:08:14)53
- C++ 实现根据输入正整数奇偶性计算偶数和或约数和(字节豆包 | 838点数解答 | 2026-02-28 20:23:59)5
- 无名杀技能代码公开:奇偶手牌触发不同摸弃牌效果,开发要点揭秘(DeepSeek | 279点数解答 | 2025-10-12 21:19:15)101
- C++ 编程:计算黑衣人布袋中黄宝石总重量(字节豆包 | 132点数解答 | 2025-10-18 19:02:51)124
- 揭秘成都治水管水改革:五大机制闭环管理,技术报告助力供排水智能化优化(GPT | 372点数解答 | 2023-12-04 09:49:06)291