Java 打印房屋星形图案

Java 打印房屋星形图案

解决有趣的图案问题可以增强对循环的理解。它们是必需的,因为它们帮助建立对特定编程语言的坚实基础。有各种各样的图案,包括数字、星星和字母图案。本文将指导您使用Java中的嵌套for循环解决一个房屋星形图案。

Java程序打印房屋星形图案

由于我们将使用嵌套for循环来解决问题,因此有必要讨论其语法。

语法

for ( initial expression; conditional expression; increment/decrement expression ){
   for ( initial expression; conditional expression; increment/decrement expression ) {
      // code to be executed
   }
}

初始表达式 − 循环开始时执行一次。

条件表达式 − 只要条件表达式为真,代码将被执行。

增量/减量表达式 − 用于增加/减少循环变量。

模式

Java 打印房屋星形图案

步骤

  • 将整个图案划分为两部分。第一部分是一个上三角形,第二部分是一个下矩形。

  • 声明并初始化一个整数’n’,指定上下两部分的行数。

  • 声明并初始化空格和星号的初始计数。

  • 现在,对于上三角形部分,定义一个嵌套的for循环。外循环运行到’n’,第一个内循环运行到空格计数并打印空格。打印完后,将空格计数减1。

  • 第二个内循环运行到星号计数并打印星号。打印完后,将星号计数增加2。

  • 再次创建另一个嵌套的for循环。外循环运行到’n’,第一个内循环打印左矩形形状,第二个内循环打印空格,最后一个内循环打印右矩形形状。

示例

public class Hut {
   public static void main(String[] args) {
      // count of upper triangle row and lower rectangle row 
      int n = 5; 
      int spc = n-1; 
      // initial count of space
      int str = 1; 
      // initial count of star
      // upper triangular shape
      for(int i = 1; i <= n; i++) {
         for(int j = 1; j <= spc; j++) {
            // for space
            System.out.print("\t"); 
         }
         spc--;
         for(int k = 1; k <= str; k++) { 
            // for star
            System.out.print("*\t");  
         }
         str += 2;
         System.out.println(); 
         // to move the cursor to next line
      }
      // lower rectangular shape
      for (int i = 0; i < n; i++) {
         // for left rectangular shape
         for (int j = 0; j < n/2; j++) { 
            System.out.print("*\t");
         }
         // for space
         for (int j = 0; j < 5; j++) {
            System.out.print("\t");
         }
         // for right rectangular shape
         for (int j = 0; j < n/2; j++) {
            System.out.print("*\t");
         }
         System.out.println(); 
         // to move the cursor to next line
      }
   }
}

输出

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

结论

在本文中,我们讨论了小屋星型图案的解决方案。我们利用嵌套的for循环解决了这个特定问题。这将帮助你解码图案问题的逻辑,并使你能够自己解决其他图案。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程