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

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

判断一个整数是奇数还是偶数,最常用的方法是利用模运算(%)。模运算符返回除法的余数。对于任何整数n,当你用n % 2(n模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;
}

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

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

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

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

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

相关推荐
octopus_c6 小时前
C++ 模板详解:函数模板、类模板、特化与分离编译
开发语言·c++·算法
椒颜皮皮虾྅7 小时前
让文档不止于文字:DeploySharp + PP-Structure,打通版面分析与表格重建
开发语言·学习·c#·.net·cuda
Eider19987 小时前
Python基础知识之并发相关-2
开发语言·前端·python
第九序言T7 小时前
Python 数据处理进阶(二十二)用 Pandas 做一次完整的用户行为分析
开发语言·python·数据分析·pandas
云和数据.ChenGuang7 小时前
再论深拷贝和浅拷贝
开发语言·人工智能·python·1024程序员节
晚风予卿云月8 小时前
【C++高并发内存池】 2.ThreadCache设计
开发语言·c++·高并发内存池·tcmalloc
Dovis(誓平步青云)9 小时前
拖动关键帧角色就抽动,动画编辑器怎样补齐中间状态
开发语言·前端·javascript·机器学习·编辑器
行走的陀螺仪9 小时前
Claude Code 从入门到实战(二):Bash工具、Plan模式与后台任务
开发语言·bash
努力努力再努力wz9 小时前
【Lua 入门系列】从执行模型到事件驱动:一文理解 Lua 有栈协程、挂起恢复与协作式调度
开发语言·lua
椒颜皮皮虾྅9 小时前
一套 C# 接口,解锁四类视觉任务:DeploySharp 分类、分割、关键点与旋转框实战
开发语言·分类·c#