exo6: add constructor and some sanity checks to Chiffre and Variable
[Project_POO.git] / exo6 / Variable.java
index d023c985b72183324cc6fb1e37e342c78c3d535c..30b7830a2b239517fcd0041c973229fe40c304ae 100644 (file)
@@ -1,7 +1,24 @@
+import java.util.TreeMap;
 
 class Variable extends Terme {
+    TreeMap<Character, Double> v;
 
-    public boolean evaluer() {
-        return true;
+    Variable(Character c) throws NotCharacterException {
+        v = new TreeMap<Character, Double>();
+        //TODO?: remove extragenous whitespace
+        if (Character.isLetterOrDigit(c)) {
+            v.put(c, 0.0); // we suppose the default variable value is 0
+        } else {
+            throw new NotCharacterException(c + " is not a character type");
+        }
+    }
+
+    private boolean isVariable() {
+        //FIXME: this cover more than latin alphabet
+        return Character.isLetter(v.firstKey());
+    }
+
+    public double evaluer() {
+        return 0.0;
     }
 }