fix: don't add sign if the float is negative (#345)

Fix #341

Signed-off-by: Frost Ming <me@frostming.com>
GitOrigin-RevId: bf01a25e26e5968c0fcb515f0513b9f88ab83e03
Change-Id: I979ce2b8eff5cd13ece491dc1606c1014d15b60a
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2778f2a..19eed13 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
 # Change Log
 
+## [unreleased]
+
+### Fixed
+
+- Remove the extra minus sign added to the float value after calculation. ([#341](https://github.com/python-poetry/tomlkit/issues/341))
+
 ## [0.12.4] - 2024-02-27
 
 ### Fixed
diff --git a/tomlkit/items.py b/tomlkit/items.py
index c483eed..4caf559 100644
--- a/tomlkit/items.py
+++ b/tomlkit/items.py
@@ -714,9 +714,8 @@
     def _new(self, result):
         raw = str(result)
 
-        if self._sign:
-            sign = "+" if result >= 0 else "-"
-            raw = sign + raw
+        if self._sign and result >= 0:
+            raw = f"+{raw}"
 
         return Float(result, self._trivia, raw)