range()
Python中是否有等效的浮点数?
>>> range(0.5,5,1.5)
[0, 1, 2, 3, 4]
>>> range(0.5,5,0.5)
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
range(0.5,5,0.5)
ValueError: range() step argument must not be zero
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Java中的分数.
我想实现算术函数.为此,我首先要求一种方法来规范化功能.我知道我不能加1/6和1/2,直到我有一个共同点.我将不得不添加1/6和3/6.一个天真的方法会让我添加2/12和6/12,然后减少.如何实现性能损失最小的共同点?什么算法最适合这个?
版本8(感谢hstoerr):
改进包括:
- equals()方法现在与compareTo()方法一致
final class Fraction extends Number {
private int numerator;
private int denominator;
public Fraction(int numerator, int denominator) {
if(denominator == 0) {
throw new IllegalArgumentException("denominator is zero");
}
if(denominator < 0) {
numerator *= -1;
denominator *= -1;
}
this.numerator = numerator;
this.denominator = denominator;
}
public Fraction(int numerator) {
this.numerator = numerator;
this.denominator = 1;
}
public int getNumerator() {
return this.numerator;
}
public int getDenominator() {
return this.denominator;
} …
Run Code Online (Sandbox Code Playgroud) 我想知道如何在Python中将小数转换为最低形式的分数.
例如:
0.25 -> 1/4
0.5 -> 1/2
1.25 -> 5/4
3 -> 3/1
Run Code Online (Sandbox Code Playgroud) 我想写分数值,如下图:
如何在不使用图像的情况下使用html编写分数值?
注意:我不希望这个1 1/2模式,但严格如上图所示
说我们有2/4分数,它可以减少到1/2.有没有可以减少的javascript函数?
在我的老式节拍TI-83上,我可以使用以下语法得到有理实数的简化分数表示.
.14>Frac
7/50
Run Code Online (Sandbox Code Playgroud)
是否有类似的语法,功能或CRAN包允许我在R中执行此操作?
重要的是要注意我不是在寻找舍入函数.我正在寻找一个函数,它返回任意数字的简化十进制表示中的小数位数.也就是说,我们有以下内容:
decimalPlaces(5555.0); //=> 0
decimalPlaces(5555); //=> 0
decimalPlaces(555.5); //=> 1
decimalPlaces(555.50); //=> 1
decimalPlaces(0.0000005); //=> 7
decimalPlaces(5e-7); //=> 7
decimalPlaces(0.00000055); //=> 8
decimalPlaces(5.5e-7); //=> 8
Run Code Online (Sandbox Code Playgroud)
我的第一直觉是使用字符串表示:拆分'.'
,然后打开'e-'
,并进行数学计算,如此(示例是详细的):
function decimalPlaces(number) {
var parts = number.toString().split('.', 2),
integerPart = parts[0],
decimalPart = parts[1],
exponentPart;
if (integerPart.charAt(0) === '-') {
integerPart = integerPart.substring(1);
}
if (decimalPart !== undefined) {
parts = decimalPart.split('e-', 2);
decimalPart = parts[0];
}
else {
parts = integerPart.split('e-', 2);
integerPart = parts[0];
}
exponentPart = parts[1]; …
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个javascript函数,它可以采用分数输入字符串,例如'3/2'
将其转换为十进制 - 或者作为字符串'1.5'
或数字1.5
function ratio(fraction) {
var fraction = (fraction !== undefined) ? fraction : '1/1',
decimal = ??????????;
return decimal;
});
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?
如何使用正则表达式匹配不可缩减的部分?
例如,23/25,3/4,5/2,100/101等.
首先,我不知道正则表达式中的gcd算法实现.
所有回答的人都会更新 "您正在使用错误的工具":
是的,伙计们,我正在意识到正则表达式通常用于什么.没关系.但这个问题很奇怪,这就是它的重点.
更新2:想法是找到一个在以下情况下可能有用的正则表达式:
$> echo "1/2" | grep -P regex
1/2
$> echo "2/4" | grep -P regex
Run Code Online (Sandbox Code Playgroud)
因此,正则表达式应该只是一个字符串,而不使用任何脚本和变量.只有正则表达式.
实际上,我已经知道一些与一元数系统中写入的可简化分数相匹配的正则表达式.
$> echo "11/1111" | grep -P '^1/1+$|(11+)+\1+/\1+$'
11/1111
Run Code Online (Sandbox Code Playgroud)
所以事情是在正则表达式中从十进制转换为一元数系统,但我不知道如何.
有没有办法在Python 2中以分数访问分母?
例如,我有一个变量:
x =分数.分数(4,1)
我想获得它的分母.我怎么做?