标签: fractions

在Python中将Fractions列表转换为浮点数

我有一个分数列表,例如:

data = ['24/221 ', '25/221 ', '24/221 ', '25/221 ', '25/221 ', '30/221 ', '31/221 ', '31/221 ', '31/221 ', '31/221 ', '30/221 ', '30/221 ', '33/221 ']
Run Code Online (Sandbox Code Playgroud)

我将如何将这些转换为浮点数,例如

data = ['0.10 ', '0.11 ', '0.10 ', '0.11 ', '0.13 ', '0.14 ', '0.14 ', '0.14 ', '0.14 ', '0.14 ', '0.13 ', '0.13 ', '0.15 ']
Run Code Online (Sandbox Code Playgroud)

Fraction模块似乎只转换为Fractions(而不是)并float([x])需要一个字符串或整数.

python floating-point fractions

8
推荐指数
1
解决办法
3444
查看次数

如何输出分数而不是十进制数?

在C++中,当我计算2/3时,它会输出十进制值,我怎样才能得到原始格式(ieg 2/3)而不是0.66666667

谢谢

c++ fractions

8
推荐指数
3
解决办法
4万
查看次数

将float转换为字符串分数表示

在Java中,我试图找到一种方法将浮点数转换为分数字符串.例如:

float num = 1.33333;
String numStr = Convert(num); // Should return "1 1/3"

float num2 = 1.333;
String numStr2 = Convert(num2); // Should also return "1 1/3"

float num3 = 0.5;
String numStr3 = Convert(num3); // Should return "1/2"

float num4 = 2.25;
String numStr4 = Convert(num4); // Should return "2 1/4"
Run Code Online (Sandbox Code Playgroud)

有任何想法如何用Java做到这一点?

java string floating-point fractions

8
推荐指数
1
解决办法
6293
查看次数

Python中的分数

无论如何在Python中计算一个分数,例如2/3或1/2,而不导入math模块?

代码片段很简单:

# What is the cube root of your number
n = float(raw_input('Enter a number: '))
print(n**(1/3))
Run Code Online (Sandbox Code Playgroud)

非常简单的代码,但我看到它告诉我导入math模块.我只是想将该片段添加到我正在处理的更大的代码中.我一直得到1作为我的答案,因为Python感觉像1/3是0而不是.333333333.我可以把.33333,但这只是一个临时修复,我想知道如何为未来的项目执行这个非常基本的计算.

python fractions

8
推荐指数
2
解决办法
2万
查看次数

如何将小数转换为分数?

我需要将十进制转换为分数.它很容易转换为10英尺.

1.5 => 15/10
Run Code Online (Sandbox Code Playgroud)

这可以通过以下代码完成:

public class Rational {

    private int num, denom;

    public Rational(double d) {
        String s = String.valueOf(d);
        int digitsDec = s.length() - 1 - s.indexOf('.');
        int denom = 1;
        for (int i = 0; i < digitsDec; i++) {
            d *= 10;    
            denom *= 10;
        }

        int num = (int) Math.round(d);
        this.num = num;
        this.denom = denom;
    }

    public Rational(int num, int denom) {
        this.num = num;
        this.denom = denom;
    }

    public String toString() {
        return …
Run Code Online (Sandbox Code Playgroud)

java decimal fractions

8
推荐指数
2
解决办法
2万
查看次数

用R读取csv文件中的分数

我有一个带有标题的数字数据的文本文件,其中一些数字作为分数输入,一些作为整数输入,一些作为浮点输入,例如:

col1name, col2name, col3name, col4name    
1, 2, 3, 4
0.5, 0.6, 0.7, 0.8
1/2, 2/3, 3/4, 4/5
1, 0.2, 3/3, 4
Run Code Online (Sandbox Code Playgroud)

当我使用read.csv时,如何评估这些表达式并将其存储为数字?

谢谢...

csv r fractions

8
推荐指数
1
解决办法
498
查看次数

十进制到无理分数近似

我已经实现了一个浮点小数到有理分数近似的算法(例如:0.333 - > 1/3),现在我想知道,有没有办法找到满足条件的无理数.例如,给定输入0.282842712474我希望结果是sqrt(2)/ 5而不是我的算法生成的431827/1526739.唯一的条件是结果的第一个数字(转换回浮点数)应该是输入的数字,其余的无关紧要.提前致谢!

algorithm decimal converter fractions

7
推荐指数
1
解决办法
1463
查看次数

比较没有溢出的分数

我用C++编写代码.我得到2个分数,a/b和c/d,其中a,b,c,d是int.有没有人知道如何做一个/ b> c/d没有溢出.例如,如果我将a,b,c,d设置为小于2147483647的4个最大质数.我如何确定a/b> c/d是否为真.我不允许使用除int之外的任何其他类型(即,我无法转换为long long或double).

c++ overflow fractions

7
推荐指数
2
解决办法
2844
查看次数

如何将表示二进制小数的字符串转换为Python中的数字

让我们假设我们有一个代表二进制分数的字符串,例如:

".1"
Run Code Online (Sandbox Code Playgroud)

作为十进制数,这是0.5.Python中是否有一种标准方法可以将这些字符串转换为数字类型(无论是二进制还是十进制都不是非常重要).

对于整数,解决方案很简单:

int("101", 2)
>>>5
Run Code Online (Sandbox Code Playgroud)

int()接受一个可选的第二个参数来提供基数,但float()没有.

我正在寻找功能相同(我认为)的东西:

def frac_bin_str_to_float(num):
    """Assuming num to be a string representing
    the fractional part of a binary number with
    no integer part, return num as a float."""
    result = 0
    ex = 2.0
    for c in num:
        if c == '1':
            result += 1/ex 
        ex *= 2
    return result
Run Code Online (Sandbox Code Playgroud)

认为这样做我想要的,虽然我可能错过了一些边缘案例.

是否有内置或标准的方法在Python中执行此操作?

python binary fractions

7
推荐指数
1
解决办法
3579
查看次数

C分数算术

对于我需要做的以下事情,我遇到了很大的困难:
a.声明包含有理数的数据结构.
写f'xns将+, - ,*,/有理数.
所有f'xns必须传递3个参数,每个参数指向在a部分中声明的类型I的数据结构; 2个参数=操作数,第3个=结果.
C.编写一个f'xn,它将指向数据结构的指针作为参数,并返回数字的GCD.&denom.
d.使用c部分中的f'xn来编写一个将分数(有理数)减少到最低项的f'xn.传入指向分数的指针,并用f'xn修改分数.
写入输入和输出功能,以便用户可以以1/5的形式输入分数.

应允许用户输入任意数量的问题,程序应以最低的条件输出答案.

我是在正确的轨道上吗?我相信我有下降,但不是d,尤其是e.有人可以指导我或帮我纠正我的剧本吗?

int GCD (int numer, int denom)
{
    int result;
    while (denom > 0) {
        result = numer % denom;
        numer = denom;
        denom = result;
    }
    return numer;
}

int getLCM (int numer, int denom)
{
    int max;
    max = (numer > denom) ? numer : denom;
    while (1) {
        if (max % numer == 0 && max % denom == 0)
            break; …
Run Code Online (Sandbox Code Playgroud)

c struct rational-numbers pointer-arithmetic fractions

7
推荐指数
1
解决办法
4334
查看次数