From 5303ea6652b10846bc4365ff13f7e3cade326dd2 Mon Sep 17 00:00:00 2001 From: PaddiM8 Date: Wed, 14 Dec 2022 19:03:22 +0100 Subject: [PATCH] Make sgn(0) equal to 0, closing #106 --- kalk/src/prelude/mod.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/kalk/src/prelude/mod.rs b/kalk/src/prelude/mod.rs index 24ef2b1..90fdd67 100644 --- a/kalk/src/prelude/mod.rs +++ b/kalk/src/prelude/mod.rs @@ -937,8 +937,11 @@ pub mod funcs { x.clone().div_without_unit(&abs(x)?) } else { let (real, _, unit) = as_number_or_return!(x); - - Ok(KalkValue::Number(real.signum(), float!(0), unit)) + if real == 0f64 { + Ok(KalkValue::Number(float!(0), float!(0), unit)) + } else { + Ok(KalkValue::Number(real.signum(), float!(0), unit)) + } } }