如何使用函数计算具有两个变量的面积?

时间:2019-05-01 03:15:14

标签: java function

我正在解决此问题以便计算出答案为double和int的区域。它没有用,代码有什么问题吗?

我尝试在其中包含double半径和int半径,这表明它不适用于给定类型。

public static void main(String args[]){
     for (int radius = 0; radius < 5 ; radius++)
         PrintArea(radius);
    for (double  radius = 0; radius < 2.6 ; radius+= 0.5)
         PrintArea(radius);
}
public static void PrintArea(int radius,double radius){
        double area=3.142*radius*radius;
        System.out.println(area);

}

我希望它可以计算并以双精度显示答案,但它显示错误。

3 个答案:

答案 0 :(得分:0)

一件事,您不应对功能的两个参数使用相同的名称

因此PrintArea(int radius, double radius)是不正确的,可能是您遇到的错误之一。

另一个是,当您期望使用两个参数时,仅使用一个参数调用PrintArea。

将您的参数重命名为int r1和double r2,就像这样:

public static void PrintArea(int r1,double r2){
    double area=3.142*radius*radius;
    System.out.println(area);
}

或者使用仅一个参数,类型为double的PrintArea:

public static void PrintArea(double radius){
    double area=3.142*radius*radius;
    System.out.println(area);
}

答案 1 :(得分:0)

您的代码存在某些问题,您的printArea函数接受两个参数,但是您仅发送 一个,同时调用该函数。您的printArea函数仅需要一个参数radius(不需要两个参数)。另一个问题是 在您的printArea函数中,参数data type的类型为int。所以当你打电话给这个 函数具有int以外的其他参数的函数,当您在第二个printArea中调用类型为double的函数for loop时,它将引发错误。

答案 2 :(得分:0)

有一些事情可以清除。首先,为什么PrintArea函数需要2个参数?您只用一个就可以称呼它,而总的来说,我们不需要两个信息就能得到一个圆的面积。因此,我猜测您的意思仅是一个参数。

public static void PrintArea(double radius){
  double area=3.142*radius*radius;
  System.out.println(area);
}

这将同时适用于intdouble类型。通常,我们在Java中也使用camelCase,这意味着对于由多个单词组成的“ PrintArea”之类的方法,第一个单词以小写字母开头,之后的其他每个单词以大写字母开头。