问题标签 [rational-numbers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 在Objective C中将小数转换为分数(有理数)?
作为计算器应用程序的一部分,我正在尝试使用 sigma 表示法来实现使用。但是,它打印出来的结果始终是小数,其余的并不重要。我只是想将小数更改为分数。
我已经有了reduce函数,我遇到的问题是从这样的小数:'0.96875'到它的小数值'31/32'
谢谢!
PS:我已经调查了几乎所有事情,而对于我的生活,我无法弄清楚这一点。在这一点上,我所需要的只是如何从中取出小数,然后我可以减少它。
这是我的减少方法:
ruby - 为什么在 ruby 中创建 Rational 不需要新方法
我正在阅读红宝石镐书,我对创建有理数的语法感到困惑。
生产
为什么new
不需要该方法Rational
(我也注意到例如我可以在没有新方法的情况下创建一个字符串)?
java - 尝试使用抽象数据类型 - 如何通过继承调用方法
我正在尝试测试我的抽象类,但是当我从测试类调用方法时遇到了问题。自从我使用 Java 以来已经有一段时间了,我以前没有使用过抽象类。任何关于我哪里出错的指示将不胜感激。谢谢。
抽象类
测试类
haskell - 使用 ghci 导入比率模块
我正在学习 Haskell 并尝试使用精确的有理数。我有以下简单的 Haskell 代码:
当我在 WinHugs 中加载它时,一切都很好。但是,当我在 ghci 中加载它时,我收到以下错误消息:
E:\devel\src\haskell\rational.hs:1:8:
失败,加载模块:无。
为什么我会收到此错误?
此外,谷歌在 Haskell 中给我的所有有理数的点击似乎都已经过时了。当前用有理数进行精确算术的方法是什么?
c# - C#以高分辨率打印有理数
我有以下难题。在 C# 中,我想存储一个有理数并获得它的十进制表示法的字符串表示。
通常我只会使用float
或double
存储数字并获取字符串,但我想要一个“高分辨率”十进制表示法。double
数据类型在它的字符串表示中最多只能提供大约 16 个字符。我正在寻找十进制表示法的字符串表示以包含更多字符,大约 30-50 是理想的。我需要“高分辨率”来检查重复的子序列。
有理数可能很简单,但我希望字符串表示非常详细
示例:1/7
=>0.1428571428571428571428571428
我的问题: .NET 库中是否有 C# 数据结构可以存储和打印我上面描述的有理数?
c++ - std::ratio<> 背后的设计原则
我正在查看std::ratio<>
C++11 标准中允许进行编译时有理算术的类。
我发现模板设计和用类实现的操作过于复杂,并且没有找到任何理由不能通过实现一个非常简单的有理类并constexpr
为运算符定义函数来使用更直接和直观的方法。结果将是一个更易于使用的类,并且编译时优势将保持不变。
std::ratio<>
与使用 的简单类实现相比,有人知道当前设计的优势constexpr
吗?实际上,我无法找到当前实施的任何优势。
haskell - 在 Haskell 中使用分数
继续上一个问题:
我正在尝试用 Haskell 编写幂级数,
这样它将输出
我已经有一个没有'/(阶乘y)'的函数
但是,当我运行时出现错误
再说一次,这是一个类型错误,我不明白。
@eakron 告诉我使用 Data.Ratio 包,但 (%) 将打印一个比率,如下所示:
但我想要
有人可以解释类型错误吗?
java - 在Java中将浮点数转换为有理数?
我想在 Java 中采用任意浮点数或双精度数并将其转换为有理数 - 即。a/b 形式的数字,其中 a 和 b 是长整数。我怎样才能以合理有效的方式做到这一点?
(顺便说一句——我已经有了简化分数的代码,所以 a/b 是否是最简单的形式并不重要)。
c++ - C++ 输入运算符重载“>>”
我有一个有理数类由两个整数组成:num
,提名者,和den
,分母。
以下运算符应该从流中读取有理数。
我编写了这段代码来实现我的“理性”类的输入。我从我的 C++ 书中写的那本书修改了它,以便可以输入十进制数字,包括重复数字。
它应该能够处理这些类型的输入:
- 9/8
- 9
- 9.87
- 1.p3 (= 1.3333333333)
但它不起作用,甚至我从书中复制的部分也不起作用。
谁能帮我?