Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- * @author Skoczek Kacper S15532
- *
- */
- package zad1;
- import java.lang.reflect.Method;
- import java.math.BigDecimal;
- import java.math.MathContext;
- import java.util.HashMap;
- public class Calc {
- HashMap<String, BigDecimal> calc = new HashMap<>();
- private MathContext mc = new MathContext(7);
- Class<?> c = getClass();
- Method m = null;
- BigDecimal l1;
- BigDecimal l2;
- public Calc() {
- calc.put("+", dodawanie());
- calc.put("-", odejmowanie());
- calc.put("*", mnozenie());
- calc.put("/", dzielenie());
- }
- public BigDecimal dodawanie() {
- return l1.add(l2);
- }
- public BigDecimal odejmowanie() {
- return l1.subtract(l2);
- }
- public BigDecimal mnozenie() {
- return l1.multiply(l2, mc);
- }
- public BigDecimal dzielenie() {
- return l1.divide(l2, mc);
- }
- public String doCalc(String cmd) {
- // TODO Auto-generated method stub
- try {
- String[] s = cmd.split("\\s+");
- l1 = new BigDecimal(s[0]);
- l2 = new BigDecimal(s[2]);
- m = c.getMethod(s[1]);
- return m.toString();
- } catch (Exception e) {
- return "Invalid command to calc";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment