Initial commit for 4.1
parent
b4e4047df7
commit
801008236f
@ -0,0 +1,23 @@
|
|||||||
|
package _4._1;
|
||||||
|
|
||||||
|
public abstract class Function {
|
||||||
|
|
||||||
|
protected Function predecessor;
|
||||||
|
|
||||||
|
public Function() {
|
||||||
|
this.predecessor = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Function(Function predecessor) {
|
||||||
|
this.predecessor = predecessor;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double calculate(double x) {
|
||||||
|
if(this.predecessor == null) {
|
||||||
|
return this.apply(x);
|
||||||
|
}
|
||||||
|
return this.predecessor.calculate(x);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract double apply(double x);
|
||||||
|
}
|
||||||
@ -0,0 +1,16 @@
|
|||||||
|
package _4._1;
|
||||||
|
|
||||||
|
public class SineFunction extends Function {
|
||||||
|
public SineFunction() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public SineFunction(Function predecessor) {
|
||||||
|
super(predecessor);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double apply(double x) {
|
||||||
|
return Math.sin(x);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,16 @@
|
|||||||
|
package _4._1;
|
||||||
|
|
||||||
|
public class SquareFunction extends Function {
|
||||||
|
public SquareFunction() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public SquareFunction(Function predecessor) {
|
||||||
|
super(predecessor);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected double apply(double x) {
|
||||||
|
return x * x;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue