gpt4 book ai didi

c++ - 寻找地理和伤害意味着重载

转载 作者:行者123 更新时间:2023-11-28 04:30:59 28 4
gpt4 key购买 nike

我正在为一个类(class)做一个项目,我遇到了一些麻烦,这给了我 2 个错误,我不明白它们的意思......它给出了错误:c4716“medie”必须返回一个值。

代码如下:

#include <iostream>
#include <stdlib.h>
#include<math.h>
using namespace std;

float medie(float a, float b, float c)
{
float MG,MA;
MG= sqrt(a*b*c);
cout<< "MG="<< MG<<endl;
MA=(2*a*b*c)/(a+b+c);
cout<< "MA="<< MA<<endl;

}

float medie(float a,float b,float c,float d)
{
float MG,MA;
MG= sqrt(a*b*c*d);
cout<< "MG="<< MG<<endl;
MA=(2*a*b*c*d)/(a+b+c+d);
cout<< "MA="<< MA<<endl;
}

int main()
{
float a,b,c,d;
cout<<"a="<<endl;
cin>>a;
cout<<"b="<<endl;
cin>>b;
cout<<"c="<<endl;
cin>>c;
cout<<"d="<<endl;
cin>>d;

medie(a,b,c);

medie(a,b,c,d);
}

最佳答案

您的 medie 函数被声明为返回一个 float 值,但您在其中没有任何 return 语句。如果您声明它们返回 void,错误应该消失。

#include <iostream>
#include <stdlib.h>
#include <math.h>
using namespace std;

void medie(float a, float b, float c)
{
float MG,MA;
MG = sqrt(a*b*c);
cout<< "MG="<< MG<<endl;
MA = (2*a*b*c)/(a+b+c);
cout<< "MA="<< MA<<endl;

}

void medie(float a,float b,float c,float d)
{
float MG,MA;
MG = sqrt(a*b*c*d);
cout<< "MG="<< MG<<endl;
MA = (2*a*b*c*d)/(a+b+c+d);
cout<< "MA="<< MA<<endl;
}

int main()
{
float a,b,c,d;
cout<<"a="<<endl;
cin>>a;
cout<<"b="<<endl;
cin>>b;
cout<<"c="<<endl;
cin>>c;
cout<<"d="<<endl;
cin>>d;

medie(a,b,c);

medie(a,b,c,d);
}

关于c++ - 寻找地理和伤害意味着重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52916459/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com