我的IF统计和计算技巧

Tips for my IF-statments and a calculation

本文关键字:计算 IF 统计 我的      更新时间:2023-10-16

我的代码需要一些帮助!对我来说,它看起来还可以,但不起作用。我试过了,找过了,但找不出什么问题。

我还需要帮助进行另一项计算。如果输入2和4,它应该计算出2*2+3*3+4*4。如果我键入1和3,它应该是1*1+2*2+3*3,我希望你能理解!

#include <iostream> 
#include <math.h>
using namespace std;
void sort(float & tal1, float & tal2);
int main() {
    float x, y;
    int sum, i, a, m, val;
    cout << "Give to numbers: " << endl;
    cout << "Type one number n";
    cin >> x;
    cout << "Type another number n";
    cin >> y;
    if (x > y) {
        sort(x, y);
    }
    cout << x << " och " << y << endl;
    cout << "Choose between a and m! " << endl;
    cin >> val;
    if (val == 'a') {
        sum = 0;
        for (int i = x; i <= y; i++)
            sum += i;
        cout << "Sum = " << sum << endl;
    } else if (val == 'm') {
        sum = 1;
        for (int i = x + 1; i < y; i++) {
            sum *= i;
            cout << "Sum = " << sum << endl;
        }
    }
}
void sort(float & tal1, float & tal2) {
    float temp = tal1;
    tal1 = tal2;
    tal2 = temp;
}
for( int i = x ; i <= y ; i++ ){
        sum +=i;
        cout << "Sum = "<< sum <<endl;
    }

这应该改为

for( int i = x ; i <= y ; i++ ){
        sum +=(i*i);
        cout << "Sum = "<< sum <<endl;
    }

我想您必须修改检查val是否为"m"的else分支

else if (val == 'm')
{
    sum = 0;
    for (int i = x; i <= y; i++)
    {
        sum += i*i;
        cout << "Sum = "<<sum<<endl;
    } 
}