文章

【GESP】C++一级练习 luogu-B2059, 奇数求和

一级知识点,for循环和取余操作基础练习。

luogu-B2059

题目要求

描述

计算非负整数 $m$ 到 $n$(包括 $m$ 和 $n$)之间的所有奇数的和,其中,$m$ 不大于 $n$,且 $n$ 不大于 $300$。例如 $m=3,n=12,$ 其和则为:$3+5+7+9+11=35$。

输入

两个数 $m$ 和 $n$,两个数以一个空格分开,其中 $0 \le m \le n \le 300$。

输出

输出一行,包含一个整数,表示 $m$ 到 $n$(包括 $m$ 和 $n$)之间的所有奇数的和。

输入样例-1

1
7 15

输出样例-1

1
55

题目分析

  • 读取整数 $m$ 和 $n$ 的值
  • 初始化变量 $ans$,用于存储奇数的和
  • 遍历从 $m$ 到 $n$ 的所有整数 $i$
  • 检查 $i$ 是否为奇数,如果是,则将 $i$ 累加到 $ans$ 中
  • 输出 $ans$ 的值,表示 $m$ 到 $n$ 之间所有奇数的和

示例代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
using namespace std;
int main() {
    int m, n; // 定义变量m和n,用于存储输入的两个整数
    cin >> m >> n; // 从输入流中读取m和n的值
    int ans = 0; // 初始化变量ans,用于存储奇数的和
    for (int i = m; i <= n; i++) { // 从m到n的循环
        if (i % 2 != 0) { // 检查i是否为奇数
            ans += i; // 如果i为奇数,则将其累加到ans中
        }
    }
    cout << ans; // 输出ans的值,即m到n之间所有奇数的和
    return 0; // 返回0,表示程序执行成功
}

所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code

题目已加入洛谷Java、C++初学团队作业清单,可在线评测,团队名额有限,欢迎加入。

本文由作者按照 CC BY 4.0 进行授权