[C/C++入门][for]22、输出奇偶数之和

复习一下我们前面如何判断奇数

判断一个整数是奇数还是偶数,最常用的方法是利用模运算(%)。模运算符返回除法的余数。对于任何整数n,当你用n % 2n模2)来计算时,如果结果是0,那么n就是偶数;如果结果是1,那么n就是奇数。这是因为所有的偶数都可以被2整除,而奇数则不能。

原理详解:

  1. 模运算a % b表示a除以b的余数。例如,5 % 2等于1,因为5除以2的商是2,余数是1。

  2. 偶数的性质 :任何偶数都可以表示为2的倍数,即存在某个整数k使得n = 2k。因此,当n是偶数时,n % 2的结果将是0,因为n能够被2完全整除。

  3. 奇数的性质 :任何奇数可以表示为n = 2k + 1的形式,其中k是某个整数。这意味着当n是奇数时,n % 2的结果将是1,因为n除以2后会有一个余数1。

cpp 复制代码
#include <iostream>
using namespace std;

bool isEven(int n) {
    return n % 2 == 0; // 如果n模2等于0,那么n是偶数
}

bool isOdd(int n) {
    return n % 2 != 0; // 如果n模2不等于0,那么n是奇数
}

int main() {
    int number = 15;
    
    if (isEven(number)) {
        cout << number << " 是偶数。" << endl;
    } else {
        cout << number << " 是奇数。" << endl;
    }

    return 0;
}

要输出1到100内所有奇数和偶数的和,我们可以通过两个for循环分别计算奇数和与偶数和,或者更高效地,在一个循环中同时处理奇数和偶数。

cpp 复制代码
#include <iostream>
using namespace std;

int main() {
    int oddSum = 0; // 用于存储奇数的和
    int evenSum = 0; // 用于存储偶数的和

    for (int i = 1; i <= 100; ++i) {
        if (i % 2 == 0) { // 如果i是偶数
            evenSum += i; // 将i加到evenSum上
        } else { // 如果i是奇数
            oddSum += i; // 将i加到oddSum上
        }
    }

    cout << "1到100内所有奇数的和为: " << oddSum << endl;
    cout << "1到100内所有偶数的和为: " << evenSum << endl;

    return 0;
}

这段代码首先初始化了两个整型变量oddSumevenSum来分别存储奇数和偶数的和。

然后通过一个for循环遍历1到100的每个数。

在循环体内,使用if语句检查当前数i是否为偶数(即i % 2 == 0)。如果是偶数,则将其加到evenSum;否则,将其加到oddSum

最后,打印出奇数和与偶数和的结果。

有问题我们评论区讨论一下吧!

相关推荐
lubiii_3 分钟前
Aircrack-ng工具使用原理与实操笔记
开发语言·网络·web安全·php
weixin_307779136 分钟前
Jenkins Metrics 插件全解析:从数据采集到智能监控的实践指南
运维·开发语言·架构·jenkins
阿拉伯柠檬7 分钟前
实现一个异步操作线程池
开发语言·数据结构·c++·面试
半瓶榴莲奶^_^9 分钟前
后端Web进阶(AOP)
java·开发语言
raoxiaoya12 分钟前
ADK-Go:Golang开发AI Agent
开发语言·人工智能·golang
一只乔哇噻13 分钟前
java后端工程师+AI大模型开发进修ing(研一版‖day61)
java·开发语言·学习·算法·语言模型
我爱学习_zwj20 分钟前
Node.js模块管理:CommonJS vs ESModules
开发语言·前端·javascript
ldmd28423 分钟前
Go语言实战:入门篇-6:锁、测试、反射和低级编程
开发语言·后端·golang
bing.shao28 分钟前
Golang中实现基于角色的访问控制(RBAC)
开发语言·后端·golang
shenzhenNBA28 分钟前
如何在python项目中使用日志功能?通用版本
java·开发语言·python·日志·log