diff options
Diffstat (limited to 'sem_5/HLIN505_Java/HLIN505/src/TP2')
| -rw-r--r-- | sem_5/HLIN505_Java/HLIN505/src/TP2/Constante.java | 11 | ||||
| -rw-r--r-- | sem_5/HLIN505_Java/HLIN505/src/TP2/Exp.java | 5 | ||||
| -rw-r--r-- | sem_5/HLIN505_Java/HLIN505/src/TP2/ExpComp.java | 28 | ||||
| -rw-r--r-- | sem_5/HLIN505_Java/HLIN505/src/TP2/Main.java | 19 |
4 files changed, 63 insertions, 0 deletions
diff --git a/sem_5/HLIN505_Java/HLIN505/src/TP2/Constante.java b/sem_5/HLIN505_Java/HLIN505/src/TP2/Constante.java new file mode 100644 index 0000000..5d3cb70 --- /dev/null +++ b/sem_5/HLIN505_Java/HLIN505/src/TP2/Constante.java @@ -0,0 +1,11 @@ +package TP2;
+
+public class Constante extends Exp {
+ float val;
+ public float eval() {
+ return val;
+ }
+ public Constante(float x) {
+ val = x;
+ }
+}
diff --git a/sem_5/HLIN505_Java/HLIN505/src/TP2/Exp.java b/sem_5/HLIN505_Java/HLIN505/src/TP2/Exp.java new file mode 100644 index 0000000..b465d4c --- /dev/null +++ b/sem_5/HLIN505_Java/HLIN505/src/TP2/Exp.java @@ -0,0 +1,5 @@ +package TP2;
+
+public abstract class Exp {
+ public abstract float eval ();
+}
diff --git a/sem_5/HLIN505_Java/HLIN505/src/TP2/ExpComp.java b/sem_5/HLIN505_Java/HLIN505/src/TP2/ExpComp.java new file mode 100644 index 0000000..30cfc2e --- /dev/null +++ b/sem_5/HLIN505_Java/HLIN505/src/TP2/ExpComp.java @@ -0,0 +1,28 @@ +package TP2;
+
+public class ExpComp extends Exp{
+ private Exp val1;
+ private Exp val2;
+ private String op;
+
+ public ExpComp (Exp v1,String op, Exp v2) {
+ val1= v1;
+ this.op = op;
+ val2=v2;
+ }
+
+ public float eval() {
+ switch (op) {
+ case "*":
+ return val1.eval()*val2.eval();
+ case "/":
+ return val1.eval()/val2.eval();
+ case "+":
+ return val1.eval()+val2.eval();
+ case "-":
+ return val1.eval()-val2.eval();
+ default :
+ return 0;
+ }
+ }
+}
diff --git a/sem_5/HLIN505_Java/HLIN505/src/TP2/Main.java b/sem_5/HLIN505_Java/HLIN505/src/TP2/Main.java new file mode 100644 index 0000000..de235ce --- /dev/null +++ b/sem_5/HLIN505_Java/HLIN505/src/TP2/Main.java @@ -0,0 +1,19 @@ +package TP2;
+
+public class Main {
+
+ public static void main(String[] args) {
+ Constante a = new Constante(5);
+ Constante b = new Constante(2);
+ Constante c = new Constante(3);
+ ExpComp e1 = new ExpComp(a,"+",b);
+ ExpComp e2 = new ExpComp(e1,"*",c);
+ ExpComp e3 = new ExpComp(new Constante(4),"*",e2);
+ System.out.println(a.eval());
+ System.out.println(e1.eval());
+ System.out.println(e2.eval());
+ System.out.println(e3.eval());
+
+ }
+
+}
|
