Manish
Manish

Reputation: 53

How to extract polynomial coefficients in Java?

Taking the string -2x^2+3x^1+6 as an example, how how to extract -2, 3 and 6 from this equation stored in the string?

Upvotes: 2

Views: 9870

Answers (2)

MoveFast
MoveFast

Reputation: 3025

    String polynomial= "-2x^2+3x^1+6";
    String[] parts = polynomial.split("x\\^\\d+\\+?");
    for (String part : parts) {
        System.out.println(part);
    }

This should work. Sample output

polynomial= "-2x^2+3x^1+6"
Output:
-2
3
6 
polynomial = "-30x^6+20x^3+3"
Output:
-30
20
3

Upvotes: 2

Azodious
Azodious

Reputation: 13882

Not giving the exact answer but some hints:

  • Use replace meyhod:

    replace all - with +-.

  • Use split method:

    // after replace effect
    String str = "+-2x^2+3x^1+6"
    String[] arr = str.split("+");
    // arr will contain: {-2x^2, 3x^1, 6}
    
  • Now, each index value can be splitted individually:

    String str2 = arr[0];
    // str2 = -2x^2;
    // split with x and get vale at index 0
    

Upvotes: 10

Related Questions