Pyramidal Number in Java2025 年 5 月 9 日 | 阅读 9 分钟 在本节中,我们将学习什么是金字塔形数,并创建Java 程序来检查给定的数字是否是金字塔形数。金字塔形数程序经常在 Java 编码面试和学术中被问到。 金字塔形数有两种类型
平方金字塔形数前 n 个自然数的平方和称为平方金字塔形数。前几个平方金字塔形数的列表是 1, 5, 14, 30, 55, 91, 140, 204, 285, 385, 506, … 如果我们尝试以几何形式定义平方金字塔形数,这些数字代表堆叠的球的数量,以形成一个以每个数字的平方为底的金字塔。 给定一个数字 b (1 <= b <= 1000000000)。如果 b 是前 n 个自然数的平方和,则打印 n,否则打印 -1。 金字塔数可以用物理空间中的给定数量的球和方形框架来建模,该框架固定了形成底座的球的数量,即 n2。它们还可以解决计算 n × n 网格中正方形数量的问题。 ![]() 平方数示例用户输入:55 检查后输出:5 说明:1*1 + 2*2 + 3*3 + 4*4 + 5*5 = 55 示例 用户输入:26 检查后输出:-1 金字塔形数 Java 程序 一个 Java 程序,用于识别用户输入的数字是否为金字塔形数。 PyramidalNumberExample.java 输出 Enter a number: 14 Position of Pyramidal number 14 is: 3 在上面的 Java 程序中,使用 Scanner 类的 `nextInt()` 方法从用户那里接受一个输入 s。定义了一个方法 findPyramid() 来检查一个数字是否是金字塔形数。结果使用 `main()` 方法显示在控制台上。 一个 Java 程序,用于识别金字塔形数在从 1 开始的金字塔形数系列中的位置。 SquarePyramidalNumberExample.java 输出 Square Pyramidal Number at position 5 = 55.0 在上面的 Java 代码中,使用公式计算指定位置 n 处的金字塔形数,并将其值存储在双精度变量 s 中。使用 `print()` 方法将输出显示在控制台上。 借助金字塔形数,我们还可以打印金字塔数模式。 金字塔数模式金字塔数模式是最常见的面试问题之一。它是一种以金字塔形状排列数字的方法。 数字可以使用不同的模式以金字塔形状排列。其中一些在此进行了讨论。 ![]() 金字塔数模式 Java 程序模式 1 的 Java 程序PyramidPattern1.java 输出 Enter number of rows for the Pyramid: 9 Pyramid Pattern: 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 1。 模式 2 的 Java 程序PyramidPattern2.java 输出 Enter number of rows for the Pyramid: 9 Pyramid Pattern: 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 1。 模式 3 的 Java 程序PyramidPattern3.java 输出 Enter number of rows for the Pyramid: 9 Pyramid Pattern: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 1。 模式 4 的 Java 程序PyramidPattern4.java 输出 Enter number of rows for the pyramid: 9 Pyramid Pattern: 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 1 2 3 4 5 6 5 4 3 2 1 1 2 3 4 5 6 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 1。 模式 5 的 Java 程序PyramidPattern5.java 输出 Enter number of rows for the pyramid: 9 Pyramid Pattern: 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 6 5 4 3 2 1 1 2 3 4 5 6 5 4 3 2 1 1 2 3 4 5 4 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 nrows。 模式 6 的 Java 程序PyramidPattern6.java 输出 Enter number of rows for the pyramid: 9 Pyramid Pattern: 9 8 9 8 7 8 9 8 7 6 7 8 9 8 7 6 5 6 7 8 9 8 7 6 5 4 5 6 7 8 9 8 7 6 5 4 3 4 5 6 7 8 9 8 7 6 5 4 3 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 在上面的代码中,金字塔模式是通过嵌套的 for 循环构建的。金字塔的行数从用户那里接受。 rowCount 被初始化为 1。 在本文中,我们讨论了 Java 中的平方金字塔形数是什么,一个理解其背后逻辑的示例,一个用于识别金字塔形数的 Java 程序,以及用于不同金字塔数模式的 Java 程序。 |
查找最小后缀翻转的问题涉及处理两个二进制字符串:初始字符串 s 和目标字符串 target。在这里,两个字符串的长度都为 n,并且初始字符串 s 是一个全零字符串(即,s = "000....
阅读 12 分钟
Java 作为一种多功能编程语言,为开发人员提供了各种工具和结构来高效地管理和处理数据。用于处理数据的两个最广泛使用的机制是集合(Collections)和流(Streams)。它们各自服务于不同的目的,并具有各自的优点和...
阅读 4 分钟
名为 Java.util.concurrent.atomic.AtomicIntegerArray.set() 的内置 Java 函数允许您在 AtomicIntegerArray 的任何位置设置值。此函数通过提供 AtomicIntegerArray 的索引值作为参数来修改指定索引处的值。上述方法不返回值....
阅读 3 分钟
Java 是一种通用的编程语言,拥有一套丰富的特性,可满足各种编程需求。从简单的应用程序到复杂的系统,Java 提供了许多工具和技术来处理各种编程挑战。其中一些棘手的程序是...
阅读9分钟
在数论领域,Kaprekar 数因其有趣的性质而占有特殊地位。这些数字以印度数学家 D. R. Kaprekar 的名字命名,它们具有一个独特的特性,即可以将它们分成两部分,这两部分的平方相加可以得到...
5 分钟阅读
Thread 类提供了用于创建和控制线程的构造函数和函数。它作为 Object 类的子类,还实现了 Runnable 接口。已弃用的方法不再被认为重要,不应使用,因为它们可能会在将来的版本中从类中删除...
阅读 6 分钟
在数字娱乐领域,游戏一直占据着特殊的位置,以其身临其境的体验和引人入胜的游戏玩法吸引着观众。在无数游戏的开发中扮演重要角色的技术之一是 Java。Java 以其多功能性、可移植性和丰富的库而闻名...
阅读 4 分钟
Java 12 版本引入了 Switch 语句的模式匹配,并在 Java 13 版本中将其作为标准功能引入。让我们在以下段落中详细了解 Java 中的 Switch 模式匹配。它的主要目的是...
阅读 6 分钟
根据应用程序需要支持的并发连接数,定义连接池要求,确定最大池大小。选择连接池是否应该是动态的——即,根据需求进行扩展或收缩。选择超时机制,例如……
阅读 3 分钟
软件开发需要日志记录,这对于调试和故障排除也至关重要。Java 中的 Logger 类是日志记录数据的关键工具,并在许多应用程序中得到广泛使用。Java 标准库包含 Logger 类,它提供了一种简单灵活的机制...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India