protected override SymbolicObject Sum(SymbolicObject obj) { //TODO : Sumowanie var k = obj as Integer; if (k != null) { return(new Integer(_data + k._data)); } var k2 = obj as Real; throw new NotImplementedException(); }
protected override SymbolicObject Sum(SymbolicObject nr) { if (nr == null) { throw new ArgumentNullException(nameof(nr)); } var output = new Real(); var integer = nr as Integer; if (integer != null) { output.FractionalPart = FractionalPart; var k = (BigInteger)integer; output.IntegerPart = IntegerPart + k; return(output); } if (nr is Real) { } if (nr is Rational) { } throw new NotSupportedException(); }
protected abstract SymbolicObject Power(SymbolicObject nr);
protected abstract SymbolicObject Divide(SymbolicObject nr);
protected abstract SymbolicObject Multiply(SymbolicObject nr);
protected abstract SymbolicObject Sum(SymbolicObject nr);
protected override SymbolicObject Power(SymbolicObject nr) { throw new NotImplementedException(); }
protected override SymbolicObject Multiply(SymbolicObject nr) { throw new NotImplementedException(); }