📜  查找所有不超过N的五角形和六边形数字(1)

📅  最后修改于: 2023-12-03 15:26:37.840000             🧑  作者: Mango

查找所有不超过N的五角形和六边形数字

本程序用于查找不超过给定数字N的五角形和六边形数字。以下是代码实现和相关说明。

代码实现
def find_nums(n):
    res = set()
    i = 1
    while (i * (3 * i - 1) / 2) <= n: # 五角形数字公式
        res.add(i * (3 * i - 1) / 2)
        i += 1
    j = 1
    while (j * (2 * j - 1)) <= n: # 六边形数字公式
        res.add(j * (2 * j - 1))
        j += 1
    return list(res)
参数说明
  • n: 一个正整数,表示需要查找的数字范围。
返回值说明

本程序返回一个列表,包含所有不超过n的五角形和六边形数字。若n小于1,返回一个空列表。

使用示例
>>> find_nums(10)
[1, 5]
>>> find_nums(50)
[1, 5, 12, 22, 35, 51]
>>> find_nums(0)
[]
>>> find_nums(-1)
[]
返回格式
# 查找所有不超过N的五角形和六边形数字

## 代码实现

```python
def find_nums(n):
    # 代码实现
参数说明
  • n: 一个正整数,表示需要查找的数字范围。
返回值说明

本程序返回一个列表,包含所有不超过n的五角形和六边形数字。若n小于1,返回一个空列表。

使用示例
>>> find_nums(10)
[1, 5]
>>> find_nums(50)
[1, 5, 12, 22, 35, 51]
>>> find_nums(0)
[]
>>> find_nums(-1)
[]