我正在编写下面的程序,我希望程序做同样的事情,但是没有一个main()函数,而是一个main()函数PLUS一个用户定义的函数,名为computeConeVolume,它包含计算。换句话说,我想删除一行计算并用函数调用替换它,然后在计算中编写并添加main下面的函数,包含我需要完成它的任何其他语法。
该函数应包含局部变量和声明的常量,并且必须进行计算,它可能不会执行任何其他操作,例如输入或输出。 应该能够在任何地方声明“全局”变量,但不允许在main()之上或之外的变量和函数。 应该使用值返回函数,因为它更容易理解,但您可以使用void函数。 需要在代码顶部有一个函数原型,然后是main,然后是你的函数。
需要一些帮助,因为我是C ++的新手并且正在努力学习。
//Cone Volume Calculator Program
#include <iostream>
using namespace std;
int main( )
{
//Declare variables and constants
double coneRadius = 0.0;
double coneHeight = 0.0;
const double PI = 3.1415;
double coneVolume = 0.0;
//Prompt the user for inputs
cout << "Enter the radius of the cone: ";
cin >> coneRadius;
cout << "Enter the height of the cone: ";
cin >> coneHeight;
//Do the calculation
coneVolume = 0.3333 * PI * coneRadius * coneRadius * coneHeight;
//Display the result
cout << "The volume of your cone is: " << coneVolume << endl;
system("pause");
return 0;
} //end of main
答案 0 :(得分:1)
我试图回收一些Amadeus&#39;回答并使用你的一些代码。
首先,您应该定义您想要计算锥体积的函数。像
这样的东西double coneVolume(double, double);
您应该注意始终将主要功能留在.c文档的末尾。
您还需要一个功能的声明。这是你实际写下函数功能的地方。
double coneVolume(double coneRadius = 0.0, double coneHeight = 0.0) {
double coneVolume = coneVolume = 0.3333 * PI * coneRadius * coneRadius * coneHeight;
return coneVolume;
}
方法头中的值设置只是默认值的设置,这里不需要这样做,只是为了向您展示。
const double PI = 3.1415;
去哪儿了?在您的功能之上,它在您的文档中随处可见。您还可以考虑使用include math.h
,然后使用M_PI
,这与PI常量大致相同。 (更准确地说,它是一个定义,它取代了你用实际的Pi值写M_PI的任何时候)
如果你真的希望函数只是在没有输入的情况下进行计算(为什么你会想要那样),你可以在本地定义它们,就像在你的主体中一样。
注意:全局范围总是超出主要方法。
如果有更多问题,请问:)
答案 1 :(得分:-2)
这个程序怎么样
#include <cmath>
#include <iostream>
using namespace std;
double coneVolume(double, double);
int main( )
{
//Declare variables and constants
double coneRadius = 0.0;
double coneHeight = 0.0;
//Prompt the user for inputs
cout << "Enter the radius of the cone: ";
cin >> coneRadius;
cout << "Enter the height of the cone: ";
cin >> coneHeight;
//Do the calculation
//Display the result
cout << "The volume of your cone is: " << coneVolume(coneRadius, coneHeight) << endl;
system("pause");
return 0;
} //end of main
double coneVolume(double coneRadius, double coneHeight)
{
double PI = acos(-1.0);
double volume = coneRadius * coneRadius * coneHeight * PI / 3.0;
return volume;
}
请注意我添加了cmath库以使用acos功能。
double PI = acos(-1.0);
我在一段代码中读到了这个技巧,一个人曾经使用C ++做三角测量。 我计算音量时没有使用任何类型的括号,因为*和/的优先顺序相同,从左到右进行评估。我除以3.0因为我使用的是双打。对于主函数正上方的函数原型
double coneVolume(double, double);
我刚写了函数的参数类型,因为只有函数的参数类型才是propotypes所需要的。