Methods Summary |
---|
public void | PrintResults(java.io.OutputStream os)
PrintStream pos = new PrintStream(os);
pos.println("Problem solution: " + currProblem.getSolution());
|
public int | getIterations()
// Not used on this solver
return 0;
|
public ProblemSet | getProblem()
return currProblem;
|
public void | run()
solve();
|
public void | setIterations(int dummy)
// Not used on this solver
|
public void | setProblem(ProblemSet s)
currProblem = s;
|
public boolean | solve()
boolean success = true;
SimpleCmdInputStream sin = new SimpleCmdInputStream(clientIn);
String inStr = null;
try {
System.out.println("Reading from client...");
inStr = sin.readString();
}
catch (IOException e) {
System.out.println("Error reading data from client.");
return false;
}
if (inStr.compareTo("problem") == 0) {
try {
inStr = sin.readString();
}
catch (IOException e) {
System.out.println("Error reading data from client.");
return false;
}
System.out.println("Got \"" + inStr + "\" from client.");
double problem = Double.valueOf(inStr).doubleValue();
ProblemSet p = new ProblemSet();
p.setValue(problem);
success = solve(p, 0);
}
else {
System.out.println("Error reading problem from client.");
return false;
}
return success;
|
public boolean | solve(ProblemSet s, int iters)
boolean success = true;
if (s == null) {
System.out.println("No problem to solve.");
return false;
}
System.out.println("Problem value = " + s.getValue());
// Solve problem here...
try {
s.setSolution(Math.sqrt(s.getValue()));
}
catch (ArithmeticException e) {
System.out.println("Badly-formed problem.");
success = false;
}
System.out.println("Problem solution = " + s.getSolution());
System.out.println("Sending solution to output...");
// Write the solution to the designated output destination
try {
DataOutputStream dout = new DataOutputStream(clientOut);
dout.writeChars("solution=" + s.getSolution() + "\n");
}
catch (IOException e) {
System.out.println("Error writing results to output.");
success = false;
}
return success;
|