0

基本的に、私は 3 つの変数を持つ 2 次方程式の判別式を与えるプログラムを作成しようとしています。ただし、二次関数の ab 値と c 値を持つオブジェクトを作成しようとすると、オブジェクトを作成していないと表示されます。また、私は新しいので、明らかに間違ったことをした場合はご容赦ください。

これは私が得るエラーです。

スレッド「メイン」の例外 java.lang.RuntimeException: コンパイルできないソース コード - エラー ツリー タイプ: quadratic.equation.solver.QuadraticEquationSolver.main(QuadraticEquationSolver.java:38) で Java 結果: 1

以下はコードです。

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package quadratic.equation.solver;

/**
 *
 * @author User
 */
public class QuadraticEquationSolver {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {

    class Quadratic {

        int aValue;
        int bValue;
        int cValue;

        public Quadratic(int A, int B, int C) {
            aValue = A;
            bValue = B;
            cValue = C;
        }

        public int calculateDiscriminant(int A, int B, int C) {
            int answer = ((bValue*bValue)+(-4*aValue*cValue));
            return answer;
        }

        Quadratic firstQuad = new Quadratic(7, 5, 3); 

     } 
     System.out.println(firstQuad.calculateDiscriminant);
}
4

1 に答える 1

1

これはより明確な解決策です。

public class Quadratic {


    private int aValue;
    private int bValue;
    private int cValue;

   //constructor
   public Quadratic(int a, int b, int c) {
      aValue = a;
      bValue = b;
      cValue = c;
    }

  public int calculateDiscriminant() {
    int answer = ((bValue*bValue)+(-4*aValue*cValue));
    return answer;
  }

}//end class

そして今、テストクラス。

public class Test{    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        Quadratic firstQuad = new Quadratic(7, 5, 3); 
        System.out.println(firstQuad.calculateDiscriminant());

    } 

}

あるいは単に

public final class MathUtil {

private MathUtil(){}

 public static int calculateQuadraticDiscriminant(int aValue,int bValue, int cValue) {
        return ((bValue*bValue)+(-4*aValue*cValue));        
 }

}
于 2013-06-22T20:55:23.023 に答える