Note that there are some explanatory texts on larger screens.

plurals
  1. POCreating a polynomial from Int text file.
    primarykey
    data
    text
    <p>I'm reading in a .txt file to create polynomials. I am having trouble actually printing the polynomials (after they've been put into the linked list). I'm not really sure how to go about 'linking' the linked list and the polynomial method... </p> <p>Text File: </p> <pre><code>P1 = 3 5 1 -1 0 8 P2 = 5 6 2 -1 1 7 0 -4 p3 = p1 + p2 p4 = p3 - p1 </code></pre> <p>Code: </p> <pre><code>import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Iterator; import java.util.LinkedList; import java.util.Scanner; public class Polynomial { public Term first; public Term last; private int[] coef; // coefficients private int deg; // degree of polynomial (0 for the zero polynomial) // a * x^b public Polynomial(int a, int b) { coef = new int[b + 1]; coef[b] = a; deg = degree(); } // return the degree of this polynomial (0 for the zero polynomial) public int degree() { int d = 0; for (int i = 0; i &lt; coef.length; i++) if (coef[i] != 0) d = i; return d; } // return c = a + b public Polynomial plus(Polynomial b) { Polynomial a = this; Polynomial c = new Polynomial(0, Math.max(a.deg, b.deg)); for (int i = 0; i &lt;= a.deg; i++) c.coef[i] += a.coef[i]; for (int i = 0; i &lt;= b.deg; i++) c.coef[i] += b.coef[i]; c.deg = c.degree(); return c; } // return (a - b) public Polynomial minus(Polynomial b) { Polynomial a = this; Polynomial c = new Polynomial(0, Math.max(a.deg, b.deg)); for (int i = 0; i &lt;= a.deg; i++) c.coef[i] += a.coef[i]; for (int i = 0; i &lt;= b.deg; i++) c.coef[i] -= b.coef[i]; c.deg = c.degree(); return c; } // convert to string representation public String toString() { if (deg == 0) return "" + coef[0]; if (deg == 1) return coef[1] + "x + " + coef[0]; String s = coef[deg] + "x^" + deg; for (int i = deg - 1; i &gt;= 0; i--) { if (coef[i] == 0) continue; else if (coef[i] &gt; 0) s = s + " + " + (coef[i]); else if (coef[i] &lt; 0) s = s + " - " + (-coef[i]); if (i == 1) s = s + "x"; else if (i &gt; 1) s = s + "x^" + i; } return s; } // test client public static void main(String[] args) throws IOException { // Welcome message System.out .println("Welcome! The following program processes single-variable polynomials represented as linked lists.\n" + "Test Data will appear below, and is also saved to a text file (userSpecification.txt) \n" + "-------------------------------" + "\n"); String content = new String(); String name = new String(); File file = new File("polynomialTest.txt"); LinkedList&lt;String&gt; list = new LinkedList&lt;String&gt;(); try { Scanner sc = new Scanner(new FileInputStream(file)); while (sc.hasNext()) { name = sc.next(); content = sc.nextLine(); // ..just checking things as they come in. System.out.println("name " + name + " content " + content); list.add(content); } sc.close(); } catch (FileNotFoundException fnfe) { fnfe.printStackTrace(); } catch (Exception e) { e.printStackTrace(); System.out.println("\nProgram terminated Safely..."); } Iterator&lt;String&gt; i = list.iterator(); while (i.hasNext()) { System.out.println(name + i.next() + "\n"); } private class Term { int coef; int expo; Term next; Term(int coef, int expo, Term n) { this.coef = coef; this.expo = expo; this.next = n; } } } </code></pre> <p>Desired output: </p> <pre><code>P1 = 5X^3 – 4X + 8 P2 = 6X^5 -2X^2 +7X -4 P3 = 6X^5 +5X^3 -2X^2 +3X +4 P4 = 6X^5 -2X^2 +7X -4 </code></pre> <p>Output right now: </p> <pre><code>Project #2 Welcome! The following program processes single-variable polynomials represented as linked lists. ------------------------------- P1 = 3 5 1 -1 0 8 P2 = 5 6 2 -1 1 7 0 -4 p3 = p1 + p2 p4 = p3 - p1 [P1 = 3 5 1 -1 0 8, P2 = 5 6 2 -1 1 7 0 -4, p3 = p1 + p2, p4 = p3 - p1] </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload