Java 打印 Floyd 三角的程序

编写一个 Java 程序,通过示例打印 Floyd 三角。Floyd 三角是具有自然数数组的直角三角形。

Java 打印 Floyd 三角的程序

此 Java 程序允许用户输入他们想要打印的最大行数。然后,该程序将打印自然数的 Floyd 三角,直到达到用户指定的行数。

package ShapePrograms;

import java.util.Scanner;

public class FloydTriangle {
	private static Scanner sc;
	
	public static void main(String[] args) {
		int  rows, i,  j, number = 1;
		sc = new Scanner(System.in);		
		System.out.println(" Please Enter the Number of Rows you wish to see in FloydTriangle:  ");
		rows = sc.nextInt();
		System.out.println("---- Printing FLOYD'S Triangle ------");
		for ( i = 1 ; i <= rows; i++ ){
			for ( j = 1 ; j <= i; j++ ) {
				System.out.format("%d ", number);
				number++;
			}
			System.out.println("");
		}
	}
}
Program to print Floyd Triangle 1

前两个语句将允许用户输入他们想要打印的行数范围或最大行数。

现在让我们逐个迭代地查看 Java 中的嵌套 for 循环

外层 For 循环 – 第一次迭代

从上面的屏幕截图中,请注意 i 的值为 1,Rows 为 5。因此,条件 (i <= 5) 为 True,将进入第二个 for 循环。

内层 For 循环 – Java 程序打印 Floyd 三角的第一次迭代

j 的值为 1,条件 (j <= 1) 为 True。因此,它将开始执行循环内的语句。System.out.format 语句将打印数字作为输出,我们都知道 Number = 1。所以,打印了 1。

下面的 number++ 语句将使用 递增运算符 将 Number 的值加 1。

内层 For 循环 – 第二次迭代:j 的值将为 2,条件 (2 <= 1) 为 False,因此将退出第二个循环。

System.out.println 语句用于终止当前行。

外层 For 循环 – 第二次迭代:i 的值将为 2,条件 (2 <= 5) 为 True。因此,将进入第二个 for 循环。

打印 Floyd 三角的程序 内层 For 循环 – 第一次迭代

j 的值为 1,条件 (1 <= 2) 为 True。因此,它将开始执行循环内的语句。它将打印数字作为输出,我们都知道 Number = 2。所以,打印了 2。

将 Number 加 1

接下来,j 的值也将加 1。

内层 For 循环 – 第二次迭代:j 的值为 2,条件 (2 <= 2) 为 True。因此,它将开始执行循环内的语句。这意味着打印了 3。

内层 For 循环 – 第三次迭代:j 的值将为 3,条件 (3 <= 2) 为 False。因此,将退出第二个循环。

一直到 5,之后内层和外层循环都将终止。

使用函数打印 Floyd 三角的 Java 程序

程序 允许用户输入要打印的最大行数。接下来,此程序将使用函数打印自然数的 Floyd 三角。

package ShapePrograms;

import java.util.Scanner;

public class FloydTriangleusingMethods {
	private static Scanner sc;
	
	public static void main(String[] args) {
		int  rows;
		sc = new Scanner(System.in);		
		System.out.println(" Please Enter the Number of Rows you wish to see :  ");
		rows = sc.nextInt();
		
		System.out.println("---- Printing ------");
		FloydTriangle(rows);		
	}
	
	public static void FloydTriangle (int rows)  {
		int  i,  j, number = 1;
		for ( i = 1 ; i <= rows; i++ )  {
			for ( j = 1 ; j <= i; j++ )  {
				System.out.format("%d ", number);
				number++;
			}
			System.out.println("");
		}
	}
}

输出

 Please Enter the Number of Rows you wish to see :  
10
---- Printing ------
1 
2 3 
4 5 6 
7 8 9 10 
11 12 13 14 15 
16 17 18 19 20 21 
22 23 24 25 26 27 28 
29 30 31 32 33 34 35 36 
37 38 39 40 41 42 43 44 45 
46 47 48 49 50 51 52 53 54 55 

当编译器到达 FloydTriangle(rows); 行时,编译器将立即跳转到下面的函数。

public static void FloydTriangle (int rows)  {

我们已经在上面的示例中解释了逻辑。

不带自然数的 Floyd 三角的 Java 打印程序

此程序允许用户输入他们想要显示的行数。在此示例中,我们将使用 * 符号打印 Floyd 三角。此 Java 程序也可以打印带 * 符号的直角三角形。

package ShapePrograms;

import java.util.Scanner;

public class FloydTrianglewithoutNumbers {
	private static Scanner sc;
	
	public static void main(String[] args) {
		int  rows, i,  j;
		sc = new Scanner(System.in);		
		System.out.print(" Please Enter the Number of Rows you wish to see :  ");
		rows = sc.nextInt();
		
		System.out.println("---- Printing ------");
		for ( i = 1 ; i <= rows; i++ ) {
			for ( j = 1 ; j <= i; j++ ) {
				System.out.format("* ");
			}
			System.out.println("");
		}
	}
}
 Please Enter the Number of Rows you wish to see :  8
---- Printing ------
* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * * 
* * * * * * * 
* * * * * * * *