-8

我的代码不起作用。我正在尝试为x^(3/2).

它告诉我我需要“;” 在double TwoThirdPower(double A). 在括号中。

public class JFindAlphabet {
    static Scanner sc = new Scanner(System.in);

    public static void main(String[] Theory) {

    JWaffles MyWaffles = new JWaffles();
    MyWaffles.ProgramHeading();
    double Glasses;
    Glasses = 1.0   ;

    double TwoThirdPower(double A) {
            double x;
            x = 0.0;
            while ( Math.sqrt(x*x*x) < A ) {
                x = x + 0.0001;
            }
            return x;
    }
    System.out.println("\n\t" + Glasses + " to the two thirds power = "+ TwoThirdPower(Glasses) );

  }
}

任何帮助将不胜感激。

4

3 回答 3

2

功能

double TwoThirdPower(double A)

在里面声明

public static void main(String[] Theory)

您需要先关闭 Main 的定义}

小心缩进大括号(或使用为您执行此操作的编辑器)将有助于防止此类问题。

于 2012-07-09T02:21:19.033 回答
2

您不能在方法中声明另一个方法。

于 2012-07-09T02:23:26.850 回答
1

双TwoThirdPower(双A)

是方法体中间的方法声明。Java中不允许这样的事情。

TwoThirdPower方法定义移到方法之外main,所以main会读

public static void main(String[] Theory) {
  JWaffles MyWaffles = new JWaffles();

  MyWaffles.ProgramHeading();

  double Glasses = 1.0   ;

  System.out.println("\n\t" + Glasses
    + " to the two thirds power = "+ TwoThirdPower(Glasses) );
 }

然后该方法将跟随TwoThirdPower.

于 2012-07-09T02:20:58.390 回答