C# 将简单代码重构为4个函数,并向main()请求返回值
我是否可以使用以下代码将其重构为4个函数,即平方面积、rt三角形周长、平方面积和平方周长,并要求至少1个函数向Main返回值?如果是的话,谁能给我一个如何做的提示?我正在自学C语言,从过去三天开始我一直在努力学习,但都失败了C# 将简单代码重构为4个函数,并向main()请求返回值,c#,function,C#,Function,我是否可以使用以下代码将其重构为4个函数,即平方面积、rt三角形周长、平方面积和平方周长,并要求至少1个函数向Main返回值?如果是的话,谁能给我一个如何做的提示?我正在自学C语言,从过去三天开始我一直在努力学习,但都失败了 class Program { static void Main(string[] args) { double tribase = 9; double triwidth = 6; double trihypo
class Program
{
static void Main(string[] args)
{
double tribase = 9;
double triwidth = 6;
double trihypotenuse = Math.Sqrt((tribase * tribase) + (triwidth * triwidth));
double triarea = 0.5 * (tribase * triwidth);
double triperimeter = tribase + triwidth + trihypotenuse;
Console.WriteLine("Area of right triangle = {0}\nPerimeter of rigth triangle = {1}\n", triarea, triperimeter);
double squareside = 8;
double squarearea = squareside * squareside;
double squareperimeter = 4 * squareside;
Console.WriteLine("Area of square = {0}\nPerimeter of square = {1}\n", squarearea, squareperimeter);
}
}
C中的一个基本函数是这样写的:
static ReturnType Name(ParamType1 paramname1, ParamType2 paramname2)
{
// Code
return someValue;
}
其中ReturnType是返回值的类型,例如在您的案例中为double,Name是函数的名称,例如GetSquareArea,ParamTypeN是函数的参数类型,paramnameN是该参数的名称。最后,您将使用一个表达式或变量来代替someValue,该表达式或变量具有您想要返回的值
因为我怀疑这是一个家庭作业,所以我只做平方函数的面积。你必须从那里做另外三个
static double GetSquareArea(double side)
{
double area = side * side;
return area;
}
要在现有代码中使用此选项:
double squarearea = GetSquareArea(squareside);
请注意如何为side参数提供值。在这种情况下,值来自squareside变量。并注意函数的结果是如何存储在squarearea变量中的
为了给您一个概述,这是您的代码中包含该函数时的外观。现在你加上另外三个
class Program
{
static void Main(string[] args)
{
double tribase = 9;
double triwidth = 6;
double trihypotenuse = Math.Sqrt((tribase * tribase) + (triwidth * triwidth));
double triarea = 0.5 * (tribase * triwidth);
double triperimeter = tribase + triwidth + trihypotenuse;
Console.WriteLine("Area of right triangle = {0}\nPerimeter of rigth triangle = {1}\n", triarea, triperimeter);
double squareside = 8;
double squarearea = GetSquareArea(squareside); // <--
double squareperimeter = 4 * squareside;
Console.WriteLine("Area of square = {0}\nPerimeter of square = {1}\n", squarearea, squareperimeter);
}
static double GetSquareArea(double side)
{
double area = side * side;
return area;
}
}
高亮显示要进入单独函数的行,右键单击->重构->提取方法。然后观看VisualStudio的魔术表演。+1表示无需填鸭的noob的答案