【C++练习】05.C++计算1到100累加和的方法
·
目录
- C++计算1到100累加和的方法
-
- 累加和的方法
-
- 1. 使用for循环
- 2. 使用while循环
- 3. 使用do-while循环
- 4. 使用数学公式(高斯求和公式)
- 5. 使用递归函数
- 6. 使用STL accumulate算法
- 7. 使用并行计算(C++17及以上)
C++计算1到100累加和的方法
累加和的方法
1. 使用for循环
int sum = 0;
for (int i = 1; i <= 100; ++i) {
sum += i;
}
cout << "Sum is: " << sum << endl;
2. 使用while循环
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
++i;
}
cout << "Sum is: " << sum << endl;
3. 使用do-while循环
int sum = 0;
int i = 1;
do {
sum += i;
++i;
} while (i <= 100);
cout << "Sum is: " << sum << endl;
4. 使用数学公式(高斯求和公式)
int sum = 100 * (100 + 1) / 2;
cout << "Sum is: " << sum << endl;
5. 使用递归函数
int sumToN(int n) {
if (n == 1) return 1;
return n + sumToN(n - 1);
}
int sum = sumToN(100);
cout << "Sum is: " << sum << endl;
6. 使用STL accumulate算法
#include <numeric>
#include <vector>
vector<int> nums(100);
iota(nums.begin(), nums.end(), 1); // 填充1-100
int sum = accumulate(nums.begin(), nums.end(), 0);
cout << "Sum is: " << sum << endl;
7. 使用并行计算(C++17及以上)
#include <execution>
#include <numeric>
#include <vector>
vector<int> nums(100);
iota(nums.begin(), nums.end(), 1);
int sum = reduce(execution::par, nums.begin(), nums.end());
cout << "Sum is: " << sum << endl;
这些方法各有特点,从简单的循环到数学公式,再到高级的STL算法和并行计算,可以根据具体需求选择合适的方法。
更多推荐


所有评论(0)