首页 > 解决方案 > 计算偶数平均值时出现浮点异常错误

问题描述

我试图用 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;
}

标签: c++

解决方案


改变

vidurk = sum / kiekis;

vidurk = kiekis == 0 ? sum : (sum / kiekis);

推荐阅读