Java实现直角三角形打印及不同形态展示

更新时间:2024-05-18 16:00:05   人气:6962
在计算机编程中,尤其是学习基础语法和逻辑控制时,一个常见的练习题目是利用 Java 语言来绘制各种图形。下面我们将通过详细的代码解析与实例演示如何使用Java实现不同类型(即等腰、非等腰)的直角三角形打印。

首先理解基本需求:以星号(*)为元素,在命令行界面按照指定样式输出一系列形成直角形状的图案。

1. **简单直角三角形**

基础形式下,我们可以用两层循环构建一个简单的右斜边为正整数长度的直角三角形:

java

public class RightTriangle {
public static void print(int base) {
for (int i = 0; i <= base; ++i) { // 控制每一行星星的数量
for (int j = 0; j < i ;++j) {
System.out.print("* ");
}
System.out.println(); // 换到下一行
}
}

public static void main(String[] args) {
int triangleBase = 5;
print(triangleBase);
}
}

运行这段程序将会得到如下的五阶直角三角形:

*
**
***
****
*****


2. **等腰直角三角形**

为了构造出具有对称性的等腰直角三角形,我们需要同时考虑左斜线部分。以下是其Java实现方式:

java

public class IsoscelesRightTriangle {
public static void printIsosceles(int size) {
for (int row = 0; row < size * 2 - 1; row++) { // 总行数等于底座乘以2减一
if(row >= size - 1){ // 对于下半部三角形直接全列填充*
for (int col = 0; col < size + Math.abs(size-row-1); col++)
System.out.print("*");
} else{ // 上半部按正常规则递增填充
for (int col = 0; col <= row && col <= size - 1 -row; col++)
System.out.print("* ");
}

System.out.println();
}
}

public static void main(String[] args) {
int triangleSize = 4;
printIsosceles(triangleSize);
}
}


执行此段代码后将呈现如下四阶等腰直角三角形效果:

*
***
*****
*******
*********


以上两种示例展示了如何运用嵌套for循环以及条件判断语句实现在终端上打印不同形态的直角三角形,这不仅能帮助我们深入理解和掌握Java的基本结构,同时也锻炼了我们的算法思维能力,并能激发更多有趣的二维图形创作灵感。