gpt4 book ai didi

C++(函数、余弦)没有给出正确答案

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

我一个月前才开始学习这门 C++ 类(class)。现在我被分配去写一个程序来计算这个。我不知道我做错了什么。

#include <stdio.h>
#include <math.h>

float gatherl1();
float gatherl2();
float gatheran();
void values(float,float,float);
float findlength(float,float,float);
float findan2(float,float,float);
float findan3(float,float,float);
void name(float,float,float);


int main(void)
{
float length1,length2;

float length3;

float angle1,angle2,angle3;

length1 = gatherl1();
length2 = gatherl2();
angle1 = gatheran();

values(length1,length2,angle1);

length3 = findlength(length1,length2,angle1);

angle2 = findan2(length1,length2,length3);
angle3 = findan3(length1,length2,length3);

name(angle1,angle2,angle3);
}

float gatherl1()
{
float l1;

printf("Enter the length of one of the sides of any triangle\n");

scanf("%f",&l1);

return l1;
}

float gatherl2()
{
float l2;


printf("Enter the length of the other side\n");

scanf("%f",&l2);



return l2;
}

float gatheran()
{
float angle;

printf("Enter the angle between them.\n");

scanf("%f",&angle);

return angle;
}



void values(float l1, float l2, float angle)
{
printf("\n The two sides are %f and %f. The angle between them is %f \n",l1,l2,angle);
}
float findlength(float l1, float l2, float angle)
{
float l3,pyt,boy;

if (angle==90)
{
pyt = pow(l1,2) + pow(l2,2);
l3 = sqrt(pyt);

}
else
{
boy = pow(l1,2) + pow(l2,2) - 2*l1*l2*cos(angle);
l3 = sqrt(boy);
}


printf("\nthe third side is = %f",l3);
return l3;
}

float findan2(float l1, float l2, float l3)
{
float cosangle2,angle2;

cosangle2 = (pow(l2,2) + pow(l3,2) - pow(l1,2)) / (2*l2*l3);
angle2 = acos(cosangle2);
return angle2;

}
float findan3(float l1, float l2, float l3)
{
float cosangle3,angle3;

cosangle3 = (pow(l1,2) + pow(l3,2) - pow(l2,2)) / (2*l1*l3);
angle3 = acos(cosangle3);
return angle3;

}

void name(angle,angle2,angle3)
{
printf("\n\n\n the other two angles are %f and %f",angle2,angle3);

printf("\n\n\n The angle you put is %f",angle);


if(angle == 90)
{
printf("\n The triangle is a right triangle\n");
}
else if(angle < 90)
{
printf("\n The triangle is a acute triangle\n");
}
else
{
printf("\n The triangle is a obtuse triangle\n");
}


}

我以前从未使用过 cos 和 arccos 函数,所以我不确定这是否是原因。或功能,因为我也是新手。请帮我!!谢谢。

最佳答案

您传递给函数的值是以弧度表示的吗?因为 cos 和 arccos 假定弧度作为输入。

关于C++(函数、余弦)没有给出正确答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15822947/

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