decimal r_right_sin(const decimal& a) { if(r_right(a)) { return r_round(r_sin_deg(a,false)); } return r_sin_deg(a); }
Value* SinFunction::evaluate(Context* ctx) { NumberValue* numVal=dynamic_cast<NumberValue*>(getParameterArgument(ctx,0)); if(numVal) { decimal num=numVal->getNumber(); return new NumberValue(r_sin_deg(num)); } return Value::undefined(); }