c++ - 计算偶数平均值时出现浮点异常错误
问题描述
我试图用 c++ 找到偶数平均值,我的代码似乎很好,它计算一切都很好,但是当我输入 n 作为 2 或 n 作为 1 时,我得到浮点异常错误。
#include <iostream>
using namespace std;
int main()
{
int kiekis = 0, sum = 0, vidurk = 0, n;
cin >> n;
if (n < 2) {
cout << "NO" << endl;
}
else if (n == 2) {
cout << n / 2 << endl;
}
else {
for (int i = 1; i <= n; i++) {
if (i % 2 == 0) {
kiekis++;
sum += i;
}
}
}
vidurk = sum / kiekis;
cout << vidurk << endl;
return 0;
}
解决方案
改变
vidurk = sum / kiekis;
至
vidurk = kiekis == 0 ? sum : (sum / kiekis);
推荐阅读
- java - 迁移到用于 Win 64 位 && 32 位 DLL 的 OpenJDK (amazon-corretto)
- google-sheets - 可以使用 importXML() 从 SERP 中抓取数据吗?
- python - 如何在scrapy python中跳过重复项
- javascript - 如何使用 Vue.JS 添加属性
- laravel - Laravel 将表单呈现为空
- python - 如何在python中解码json unicode字符串?
- c# - 更新字典值将行添加到 DataGrid WPF
- haskell - 存在 GADT 的 Eq 或 Ord 实例
- php - 如何在发生时立即访问 PHP 多 cURL 句柄响应
- angular - 如何将点击功能应用于警报控制器并更改 Ionic 4 中的语言