Java 程序:打印空心菱形星形图案
原文:https://www.studytonight.com/java-programs/java-program-to-print-hollow-diamond-star-pattern
在本教程中,我们将看到如何在 Java 中打印空心菱形星形图案。首先,我们将要求用户初始化行数。然后,我们将使用循环来打印空心钻石星形图案。但是在继续之前,如果你不熟悉 java 中循环的概念,那么一定要查看关于 Java 中循环的文章。
输入:输入行数:4
输出:模式为:
这可以通过使用以下方法来实现:
方法 1:使用 For 循环
方法 2:使用 While 循环
方法 3:使用边做边循环
让我们看看这些方法中的每一种,以便更好地理解
程序 1:打印空心钻石星形图案
在这个程序中,我们将看到如何使用 for 循环在 java 中打印空心菱形星形图案。
算法:
开始
创建 Scanner 类的实例。
声明一个变量来存储行数。
要求用户初始化变量。
使用 for 循环打印图案。
第一个外部 for 循环将显示空心菱形图案的一半,第二个外部 for 循环将显示剩余的空心菱形图案。
第一个外部 for 循环执行该组语句,直到条件 i
下一秒内循环将被执行,直到条件为假。对于 i=0,空心图案的第一行完成。第一个 for 循环将显示此模式。
第二个外部 for 循环执行语句,直到条件为假。第一个内部循环执行语句,直到条件为假。在此循环中,如果“if”条件为真,则显示字符“*”,否则显示空格。
第二个内部循环执行该组语句,直到条件为假,在第二个内部循环中,如果“if”条件为真,则显示空格,否则显示字符“*”。第二个外环将显示此模式。
显示结果
下面的例子说明了上述算法的实现。
//Java Program to Print the Hollow Diamond Star Pattern
import java.util.*;
public class Main
{
public static void main(String []args)
{
Scanner sc=new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int n=sc.nextInt();
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(j<n-i)
System.out.print("*");
else
System.out.print(" ");
}
for(int j=0;j<n;j++)
{
if(j<i)
System.out.print(" ");
else
System.out.print("*");
}
System.out.println();
}
for(int i=1;i<=n;i++)
{
for(int j=0;j<n;j++)
{
if(j<i)
System.out.print("*");
else
System.out.print(" ");
}
for(int j=0;j<n;j++)
{
if(j<n-i)
System.out.print(" ");
else
System.out.print("*");
}
System.out.println();
}
}
}
输入行数:7
- T2】 T3】 T4】 T5】 T6】 T7】 *
- *
- T10】 T11】 T12】 T13】 T14】 *
程序 2:打印空心钻石星形图案
在这个程序中,我们将看到如何使用 while 循环在 java 中打印空心菱形星形图案。
算法:
开始
创建 Scanner 类的实例。
声明一个变量来存储行数。
要求用户初始化变量。
使用 while 循环打印图案。
第一个外部 while 循环将执行代码,直到条件为真。第一个内部 while 循环执行语句,直到条件 j
在第一个内部 while 循环中,如果 j
在第一个内部循环执行之后,第二个内部循环将执行这些语句,直到条件 j
第二个外部 while 循环将执行这些语句,直到条件 i<=n 为假。第一个内部循环执行语句,直到条件 j
在第一个内部循环执行之后,将执行第二个内部循环,直到条件 j
显示结果
停止
下面的例子说明了上述算法的实现。
//Java Program to Print the Hollow Diamond Star Pattern
import java.util.*;
public class Main
{
public static void main(String []args)
{
Scanner sc=new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int n=sc.nextInt();
int i=0;
int j;
while(i<n)
{
j=0;
while(j<n)
{
if(j<n-i)
System.out.print("*");
else
System.out.print(" ");
j++;
}
j=0;
while(j<n)
{
if(j<i)
System.out.print(" ");
else
System.out.print("*");
j++;
}
System.out.println();
i++;
}
i=1;
while(i<=n)
{
j=0;
while(j<n)
{
if(j<i)
System.out.print("*");
else
System.out.print(" ");
j++;
}
j=0;
while(j<n)
{
if(j<n-i)
System.out.print(" ");
else
System.out.print("*");
j++;
}
System.out.println();
i++;
}
}
}
输入行数:7
- T2】 T3】 T4】 T5】 T6】 T7】 *
- *
- T10】 T11】 T12】 T13】 T14】 *
Java 程序:程序 3:打印空心钻石星形图案
在这个程序中,我们将看到如何使用 do-while 循环在 java 中打印空心菱形星形图案。
算法:
开始
创建 Scanner 类的实例。
声明一个变量来存储行数。
要求用户初始化变量。
使用边做边循环打印图案。
第一个外部 do-while 循环将执行代码,直到条件 i
在第一个内部循环执行之后,将执行第二个内部循环,直到条件 j
将执行第二个外部 do-while 循环,直到条件 i<=n。第一个内部循环执行语句,直到条件为假。在这个循环中,如果条件 j
完成第一个内部循环后,将执行第二个内部循环,直到条件 j
显示结果
停止
下面的例子说明了上述算法的实现。
//Java Program to Print the Hollow Diamond Star Pattern
import java.util.*;
public class Main
{
public static void main(String []args)
{
Scanner sc=new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int n=sc.nextInt();
int i=0;
int j;
do
{
j=0;
do
{
if(j<n-i)
System.out.print("*");
else
System.out.print(" ");
j++;
}while(j<n);
j=0;
do
{
if(j<i)
System.out.print(" ");
else
System.out.print("*");
j++;
}while(j<n);
System.out.println();
i++;
} while(i<n);
i=1;
do
{
j=0;
do
{
if(j<i)
System.out.print("*");
else
System.out.print(" ");
j++;
} while(j<n);
j=0;
do
{
if(j<n-i)
System.out.print(" ");
else
System.out.print("*");
j++;
}while(j<n);
System.out.println();
i++;
}while(i<=n);
}
}
输入行数:7
- T2】 T3】 T4】 T5】 T6】 T7】 *
- *
- T10】 T11】 T12】 T13】 T14】 *