Hi all,
Im writing a program, that takes the a, b, and c from an equation, and uses them to find x using the formula:

The problem im getting, is that when I plugin the equation 1x^2 +3x +4 I get x = -Infinity and x = infinity instead of x = 1 and x = -4.

Heres my code:

Class 1:

``````public class quadratictest
{
public static void main(String args[])
{
DecimalFormat df = new DecimalFormat("#.###");
System.out.println("--------------------------------------------------");
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();
System.out.println("------------");
System.out.println("------------");
}
}
``````

Class 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;
}
}
}
``````

Whats going wrong? Thanks in advance!

2
Contributors
1
6
Views
5 Years
Discussion Span
Last Post by M4trixSh4d0w

What answers do you get exactly? Can you paste the output?
In your constructor of the class that solves your equation, why do you make it solve when you create it, but then later on solve it again?

`````` public mathey(int aN, int bN, int cN)
{
int a  = aN;
int b = bN;
int c = cN;
//Why is this here?
solvea();
solveb();
}
//If you just print it out above?
//Maybe print out solution1 & 2, or get rid of solvea() & b() in your constructor
``````

Also, did you forget to provide some code? because the constructor you use isn't the class you provided.

``````mathey quad = new quadsong(a,b,c);
``````
This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.