Go Premium for a chance to win a PS4. Enter to Win


Need help with calling the toString method from my class into my main method...Plz HELP

Posted on 2006-11-18
Medium Priority
Last Modified: 2010-03-31
Im writing a program where you input four coefficients and it evaluates x for f(x) and then prints a table.....Before this table is printed however, I need to call the equasion from a toString method and print it into output using System.out.println(toString). Everytime I compile the main program i get this error

Poly.java:43: cannot find symbol
symbol  : method toString(java.lang.String)
location: class Polynomial

The Class compiles fine....

Here is my code....

import java.util.Scanner;
import java.text.DecimalFormat;

public class Poly
      public static void main (String[] args)
double c4,c3,c2,c1,c0,x,interval,xvalue;
int ptnumber,counter;
String result;

DecimalFormat fmt = new DecimalFormat ("0.##");

Scanner scan = new Scanner (System.in);

System.out.print ("Enter the coefficient of x^4(0.0 if none:");
c4 = scan.nextDouble();

System.out.print ("Enter the coefficient of x^3(0.0 if none:");
c3 = scan.nextDouble();

System.out.print ("Enter the coefficient of x^2(0.0 if none:");
c2 = scan.nextDouble();

System.out.print ("Enter the coefficient of x^1(0.0 if none:");
c1 = scan.nextDouble();

System.out.print ("Enter the constant:");
c0 = scan.nextDouble();

System.out.print ("Enter the starting value of x:");
x = scan.nextDouble();

System.out.print ("Enter the number of points to be graphed(Integer):");
ptnumber = scan.nextInt();

System.out.print ("Enter the interval between points:");
interval = scan.nextDouble();

Polynomial pn = new Polynomial(c4, c3, c2, c1, c0);


System.out.println("x      | f(x)");
counter = 0;
while (counter < ptnumber)

System.out.println(x            +"      | "+fmt.format(pn.evaluate(x)));

x = (x + interval);


import javax.swing.JPanel;
import java.awt.*;
import java.text.DecimalFormat;

import java.text.DecimalFormat;
public class Polynomial
   double coeff4, coeff3, coeff2, coeff1, constant;
   public Polynomial(double c4, double c3, double c2, double c1, double c0)
            coeff4 = c4;
            coeff3 = c3;
            coeff2 = c2;
            coeff1 = c1;
            constant = c0;
      public double evaluate(double x)
            double xsq = x*x;
          return (coeff4*xsq*xsq + coeff3*xsq*x + coeff2*xsq + coeff1*x + constant);
      public String toString()
         //String result = "";
            String result =  (coeff4 + "*x^4 + " + coeff3 + "*x^3 + " + coeff2 + "*x^2 + " + coeff1 + "*x^1 + " + constant);
            return result;
  public void draw(Graphics page, int xPixels, int yPixels)
    final int NUM = 11;
    final double INTERVAL = 0.5;
    final double XSTART = 0.0;

    final int XMARGIN = 70;
    final int XUSABLEPIXELS = xPixels - 2*XMARGIN;
    final int YMARGIN =40;
    final int YUSABLEPIXELS = yPixels - 2*YMARGIN;
        // Label the graph
    page.drawString("Graph of f(x) = " + toString(), XMARGIN + 20, YMARGIN);

    // Draw the x axis and put in hash marks
    page.drawLine(XMARGIN, yPixels - YMARGIN, xPixels - XMARGIN, yPixels - YMARGIN);
    for ( int i = 0; i < NUM; i++ )
        page.drawLine(XMARGIN + i * XINTERVALPIXELS, yPixels - YMARGIN, XMARGIN + i * XINTERVALPIXELS, yPixels - YMARGIN + 5);
       DecimalFormat twoPlaces = new DecimalFormat("0.00");

    // Label the x axis
    for (int i = 0; i < NUM; i++)
        page.drawString( twoPlaces.format(XSTART + i * INTERVAL), 3 * XMARGIN / 4 + i * XINTERVALPIXELS, yPixels - YMARGIN/2);

    // Draw the y axis
    page.drawLine(XMARGIN, YMARGIN, XMARGIN, yPixels - YMARGIN);

    // Label the y axis and put in hash marks
    final double YMIN = 0.0;
    final double YINTERVAL = 100.0;

    for (int i = 0; i < NUM; i++)
        page.drawString(twoPlaces.format(YMIN + i * YINTERVAL), XMARGIN / 4, yPixels - i * YINTERVALPIXELS - YMARGIN);
        page.drawLine(XMARGIN, yPixels - YMARGIN - i * YINTERVALPIXELS, XMARGIN - 5, yPixels - YMARGIN - i * YINTERVALPIXELS);

    // your code

Question by:lusius188
1 Comment
LVL 23

Accepted Solution

Ajay-Singh earned 500 total points
ID: 17972509
the default implementation doesn't take any argument, if you want toString of result varaible, you should just call


Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
Suggested Courses

824 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question