C++ 中查找五角锥数

2025年5月14日 | 阅读 4 分钟

在本文中,我们将讨论如何使用 C++ 查找五角锥数

什么是五角锥?

五角锥是一种金字塔,其五边形底座(具有 5 条边,类似于三角形的底座)置于地面,侧面也呈 5 个三角形的形状。几何学中的金字塔是具有多边形底座的三维形状,金字塔的体积是每个边缘处的三角形总和到一个单一顶点的体积。五角锥是 3D 图形,由作为五边形的底座构成。五条边在侧面形成三角形,并在顶点处相交。因此,顶点是金字塔形五边形的峰值,因为它结合了三个侧面和底座。正五角锥的底座是正五边形,而一个侧面呈等边三角形。

五角锥是一种特殊的金字塔。它具有与其他金字塔相同的基本属性,并且具有与五边形底座相关的特殊属性。以下是五角锥的属性:

  • 正五角锥正面有五个等边三角形,背面有规则的五边形。
  • 五角锥有 6 个顶点和 10 条边。
  • 五角锥有 6 个面,它们都相同。
  • 五角锥也可以根据等腰三角形作为其侧面来构建。

方法 1:朴素法

这是一种简单的方法。它涉及运行到 n 个值。下面是上述方法的实现。

输出

126

说明

给定程序查找五角锥中的第 n 个对数。函数 pentagon_pyramidalNumber 接收整数 num 作为输入,并从 1 到 num 启动一个循环。因此,在循环 num + 4*i 中,我们以五边形的形式创建底座。在循环中,它通过公式 (3 * i * i - i)/2 计算五角数并增加总和值。函数通过返回总和完成。在 main() 函数中,为 num 设置的值是 6,并打印对 pentagon_pyramidalNumber 函数的调用。五角锥数是一系列数字,表示堆叠的具有五边形底座的金字塔所需的球体数量。

方法 2:高效方法

输出

6

说明

该程序确定第 n 个五角锥数。函数 pentagon_pyramidalNumber 接受一个整数作为输入,并使用公式 number * number * (number + 1) / 2 确定五角锥数。该公式表示前几个三角数之和。

在 main() 函数中,变量 number 定义为 number = 2。调用 pentagon_pyramidalNumber 函数的步骤,并打印结果。

结论

总之,给定的 C++ 程序使用两种不同的方法计算第 n 个五角锥数。

第一种方法是朴素方法。它在 1 到 n 之间递归运行,并使用公式 (3 * i * i-i) / 2 计算五角数。它通过将这些数字加到运行总数中来执行算术运算(加法),总和即为结果。此方法通过查找第 6 个五角锥数(即 126)来解释该过程。第二种方法使用公式 number * number * (number + 1) / 2 直接确定五角锥数。它等效于前 n 个三角数的算术和。该程序通过生成系列中第二个带五边形的金字塔数(等于 6)来演示此方法。

两种方法都是正确获取第 n 个五角锥数的方法,但第二种方法更好,因为它不需要循环迭代。