2013-01-31 1 views
0

Im 방정식에서 a, b 및 c를 취하여이를 사용하여 수식을 사용하여 x를 찾으십시오. http://www.purplemath.com/modules/quads/qform01.gif.이차 방정식 프로그램 Java?

내가 얻는 문제는 1x^2 + 3x +4 방정식을 플러그인 할 때 x = 1 및 x = -4 대신 x = -Infinity 및 x = 무한대가됩니다.

는 Heres는 내 코드 :

클래스 1 :

public class quadratictest 
    { 
     public static void main(String args[]) 
     { 
      DecimalFormat df = new DecimalFormat("#.###"); 
      System.out.println("--------------------------------------------------"); 
      System.out.println("    ~Quadratic Formula~"); 
      System.out.println("--------------------------------------------------"); 
      System.out.println("in a polynomial, there are 3 important numbers used"); 
      System.out.println("to figure out x. they are a, b, and c, shown below.\n"); 
      System.out.println("\t\t1x^2 +3x +4"); 
      System.out.println("\t\t^ ^ ^"); 
      System.out.println("\t\ta  b c"); 
    Scanner input = new Scanner(System.in); 
      System.out.print("\nPlease type a, b, and c here[a b c]: "); 
      int a = input.nextInt(); 
      int b = input.nextInt(); 
      int c = input.nextInt(); 
      mathey quad = new quadsong(a,b,c); 
     System.out.println("------------"); 
     System.out.println(quad.solveb()); 
     System.out.println(quad.solvea()); 
     //System.out.println("x =" +df.format(quad.solvea())); 
     //System.out.println("x =" +df.format(quad.solveb())); 
     System.out.println("------------"); 
    } 
} 

클래스 2 :

import java.util.*; 
    import java.io.*; 
    import java.text.DecimalFormat; 
      /** 
    * Write a description of class quadsong here. 
    * 
    * @author (your name) 
    * @version (a version number or a date) 
    */ 
    public class mathey 
    { 
     int a;int b;int c; 
     double solution1; 
     double solution2; 
      public mathey(int aN, int bN, int cN) 
     { 
      int a = aN; 
      int b = bN; 
      int c = cN; 
      solvea(); 
      solveb(); 
     } 
     public double solvea() 
     { 
     solution1 = ((b*-1) + Math.sqrt((b^2)-(4*a*c)))/(a+a); 
      if (solution1 == Math.floor(solution1)) 
     { 
     return solution1; 
     } 
     else 
     { 
      return 0; 
     } 
     } 
      public double solveb() 
     { 
     solution2 = ((b*-1) - Math.sqrt((b^2)-(4*a*c)))/(2*a); 
     if (solution2 == Math.floor(solution2)) 
     { 
     return solution2; 
     } 
     else 
     { 
      return 0; 
     } 
     } 
    } 

은을 heres 내 출력 :

-------------------------------------------------- 
        ~Quadratic Formula~ 
    -------------------------------------------------- 
    in a polynomial, there are 3 important numbers used 
    to figure out x. they are a, b, and c, shown below. 

      1x^2 +3x +4 
      ^ ^^
      a  b c 

    Please type a, b, and c here[a b c]: 1 3 4 
    ------------ 
    x =Infinity 
    x =-Infinity 
    ------------ 

무슨 잘못이야? 미리 감사드립니다! 1 배^2 + 배 + 4 더 뿌리가 없습니다 : 코드 서식 죄송 P.S, 나는 하하

답변

1

당신이 여기에서 발생하는 문제는 즉 여기에 원하는처럼 그 작동하지 않는 이유는 나도 몰라. 그것은 무엇보다도 수학 오류입니다.

+0

그래, 그게 ... 고마워. 하하 ... 지금 바보 같아. XD – malymieczek