Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package net.sf.kerner.utils.math;
 
 import java.util.List;
 
 public class Polynomial {
 
 	private final List<Doubleelements;
 
	public Polynomial(int size) {
		 = new ArrayList<Double>(size);
	}
	public Polynomial() {
		this(10);
	}
	public synchronized double calculate(double y) {
		double result = 0;
		for (int x = .size() - 1; x > -1; x--) {
			double d = .get(x);
			// System.out.println("d="+d + ",x="+x);
			if (x > 0)
				result += (d * Math.pow(yx));
			else
				result += d;
			// System.out.println("result="+result);
		}
		return result;
	}
	public synchronized void add(int posdouble element) {
		.add(poselement);
	}
	public synchronized Polynomial getDerivate() {
		final Polynomial result = new Polynomial();
		for (int i = 1; i < .size(); i++) {
			double element = .get(i);
			result.add(i - 1, element * i);
		}
		return result;
	}
	public synchronized Polynomial getDerivate(int nr) {
		if (nr < 1) {
			throw new IllegalArgumentException("nr must be >= 1");
		}
		Polynomial result = getDerivate();
		for (int i = 1; i < nri++) {
			result = result.getDerivate();
		}
		return result;
	}
	public synchronized double[] getPolynoms() {
		final double[] result = new double[.size()];
		for (int i = 0; i < .size(); i++) {
			result[i] = .get(i);
		}
		return result;
	}
	public synchronized String toString() {
		final StringBuilder sb = new StringBuilder();
		for (int x = .size() - 1; x > -1; x--) {
			sb.append(String.format("%22.20f".get(x)) + (x > 0 ? "x^" + x + "+" : ""));
		}
		return sb.toString().replaceAll("\\s""");
	}
New to GrepCode? Check out our FAQ X