📅  最后修改于: 2023-12-03 14:54:43.859000             🧑  作者: Mango
在简单算术中,有理数是带有分母和分子的数字。这意味着通过分子除以分母的结果是一个关于基数或分数的数字。对于任何小于 5 的 4 个有理数,下面是介绍如何在代码中提及它们的方法。
在你的代码中,你可以直接将这四个有理数硬编码进去。以下是它们的值:
可以按照以下方式在代码中使用它们:
num1 = 1/2
num2 = 2/3
num3 = 4/5
num4 = 3/4
如果你需要一个在给定范围内的随机小数值,你可以用循环来生成它们。以下是一个 Python 示例:
import random
numbers = []
for i in range(4):
while True:
num = random.uniform(0, 5)
if num < 1: # 构造1/2
if num not in numbers:
numbers.append(num)
break
elif num < 2: # 构造3/4
if (num - 1/2) not in numbers:
numbers.append(num - 1/2)
break
elif num < 4/3: # 构造2/3
if (num - 2/3) not in numbers:
numbers.append(num - 2/3)
break
else: # 构造4/5
if (num - 3/4) not in numbers:
numbers.append(num - 3/4)
break
print(numbers)
在上面的代码中,我们使用了random.uniform()
函数来生成随机小数值。我们使用while循环来检查生成的数字是否是小于 5 的有理数,并将它们存储在数组中。注意,对于需要满足上述条件的四个有理数,我们使用了四个if分支,每个分支用于构造一个有理数。最后我们打印出生成的四个数字。
你也可以使用 Numpy 库来生成随机小数,并将它们转换为有理数。以下是一个示例代码:
import numpy as np
numbers = np.random.uniform(0, 5, size=4)
numbers = np.around(numbers, decimals=2)
numbers = np.unique(numbers)
numbers = np.sort(numbers)[:4]
frac_numbers = np.array([])
for num in numbers:
frac = np.array(np.around([num.as_integer_ratio()], decimals=0)).flatten()
frac_numbers = np.append(frac_numbers, frac)
print(frac_numbers)
在上面的代码中,我们使用了numpy.random.uniform()
函数来生成四个随机小数。我们使用numpy.around()
函数将数字四舍五入到小数点后两位,并使用numpy.unique()
函数删除生成的重复数字。我们使用numpy.sort()
函数将数组中的元素升序排列,并取前4个,以确保我们只获取四个小于 5 的数字。
然后,我们使用numpy.as_integer_ratio()
函数将小数转换为有理数,并使用numpy.flatten()
函数将结果转换为一维数组。最后,我们将四个有理数存储在frac_numbers
数组中,并打印出来。
这三种方法中,第二种方法比较适用于需要生成多个小于 5 的有理数的情况。如果你只需要四个特定的有理数,则第一种方法是最简单的方法。如果你想使用更多的 Python 库来生成有理数,则可以研究 Sympy 库和 Fractions 库。