Not Yet Answered # Polynomials In Java?

pbl 22 Discussion Starter AndrewSD Discussion Starter AndrewSD Marc_1 George_1

0

Well I am trying to write a simple "polynomial engine" that has two functions:

- simplifyPolynomial
- solvePolynomial

I just don't know where to start:(

I can't think of a method to use. I don't think there are any polynomial libraries in java?

My question is: do any of you have any idea on a simple way to simplify polynomials?

Please help!

Thanks in advanced,

Andrew

*Edited 5 Years Ago by AndrewSD*: I typed "Jaca" instead of "Java"

0

So a basic question, you won't find any *polynomial* library

What is the probelm with the code you wrote ?

0

That's the problem, I don't have any code I have written! I am very talented at math or at least I was when I was doing algebra in 5th grade. So I keep going through the steps of evaluating:

- Combine alike terms
- Re-order alphabetically

I get stuck at the very first item "Combine alike terms" I just don't know how I would do that, since the user, is supposed to enter the polynomial, and I get it as a string.

I know that if I can evaluate the polynomial then solving it becomes easy if you know the unknowns.

Help please,

Andrew

0

*I don't know if I should make a new thread for this so I will use this one which I have created!*

Ok well I wrote a class that simplifies polynomials, but I always get weird answers. Take a look at the code and then at the bottom of the post.

```
package polynomialhelper;
import javax.swing.*;
/**
* This class helps with polynomials!
* @author Andrew
*/
public class polynomialEngine {
/**
* Class constructor nothing interesting.
*/
public polynomialEngine() {
}
/**
*
* @param x the array of x coefficients
* @param x2 the array of x<sup>2</sup> coefficients
* @param coeff coefficient at the end
* @return polynomial in string state.
*/
public String simplifyPolynomial(float[] x, float[] x2, float coeff) {
String polynomial = "Error";
float xs = 0, x2s = 0;
for(int i = 0; i <3; i++) {
xs = xs + x[i];
x2s += x2[i];
}
JOptionPane.showConfirmDialog(null, x2s);
if ( xs != 0 & x2s !=0 ) {
polynomial = "<html>" + String.valueOf(x2s) + "x<sup>2</sup>+" + String.valueOf(xs) + "x+" + String.valueOf(coeff) + "</html>";
}
else if (xs != 0 & x2s == 0) {
polynomial = "<html>" + String.valueOf(xs) + "x" + "+" + String.valueOf(coeff) + "</html>";
}
else if (xs == 0 & x2s != 0) {
polynomial = "<html>" + String.valueOf(x2s) + "x<sup>2</sup>+" + String.valueOf(coeff) + "</html>";
}
else if (xs == 0 & x2s == 0) {
polynomial = "<html>" + String.valueOf(coeff) + "</html>";
}
else if (xs != 0 & x2s != 0 & coeff == 0) {
polynomial = "<html>" + String.valueOf(x2s) + "x<sup>2</sup>+" + String.valueOf(xs) + "x" + "</html>";
}
else if (xs != 0 & x2s == 0 & coeff == 0) {
polynomial ="<html>" + String.valueOf(xs) + "x" + "</html>";
}
else if (xs == 0 & x2s != 0) {
polynomial = "<html>" + String.valueOf(x2s) + "x<sup>2</sup>" + "</html>";
}
else {
polynomial = "Error please check data!";
JOptionPane.showMessageDialog(null, "Error please check the data you enter!", "Polynomial Helper", JOptionPane.ERROR_MESSAGE);
}
return polynomial;
}
}
```

Please note that I am using this class in an other program, it has a limit of three coefficients per-variable and here are some of the test values I passed and here is what I got:

1st x value: 1

2nd x value: 2

3rd x value: 3

1st x^2 value: 1

2nd x^2 value: 2

3rd x^3 value: 3

Coeff. value : 4

Answer: 6x^2 + 6x + 4 (totally right)

1st x value: 1

2nd x value: 3

3rd x value: 5

1st x^2 value: 2

2nd x^2 value: 4

3rd x^3 value: 6

Coeff. value : 7

Answer: 11x^2 + 9x + 7

What is wrong with my code?:(

0

My package com.perisic.ring (available at ring.perisic.com) provides polynomial arithmetic.

0

If you are running on windows you should use a system call to bertini32 which solves polynomial systems using homotopic continuation. It will run slower but will find much more difficult polynomial systems.

See:

http://dl.acm.org/citation.cfm?id=1473186]

http://www.nd.edu/~sommese/bertini

This article has been dead for over six months. Start a new discussion instead.

Recommended Articles

Help! I want to create a java program that finds the highest even integer among the values entered by the user. Stop asking values when a value less than 1 have been entered. If no even integer is entered, display "No Even Integer"

Here is the sample output that I ...

Hello All ...

Iam Getting An Error With try to excecute the stored procedure .

I have Have Sql database , the stored procedure like so :

```
USE [MPRS]
GO
/****** Object: StoredProcedure [dbo].[Search_Licenses_By_Number] Script Date: 26-Nov-16 8:06:52 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE ...
```

I don’t want at this stage work on a big separate project as I've already got plenty ...