用Java打印金字塔
程序员文章站
2022-06-30 19:06:15
一、如图,打印以下图案二、实现步骤1.分析思路很常见的一个问题,控制台从最左端向右输依次是空格" ","*",空格,然后换行,我们发现空格数,"*"和行数有以下关系(以5行为例):行数空格数"*"数141233325417509通过计算我们可以得出,空格数满足:总行数-当前行数,即5-1,5-2,5-3,5-4,5-5 ,而*数满足:(2*当前行数....
一、如图,打印以下图案
二、实现步骤
1.分析思路
这是很经典的一个图案,通过观察图案不难得出,控制台从最左端向右打印的 依次是空格" ","*",空格,然后换行,我们发现空格数,"*"和行数有以下关系(以5行为例):
行数 | 空格数 | "*"数 |
1 | 4 | 1 |
2 | 3 | 3 |
3 | 2 | 5 |
4 | 1 | 7 |
5 | 0 | 9 |
通过简单计算可以看出,空格数满足:总行数-当前行数,即5-1,5-2,5-3,5-4,5-5 ,
而*数满足:(2*当前行数)-1,即2*1-1,2*2-1,2*3-1,2*4-1,2*5-1,
随后确定程序框架
2.大纲
public class Demo{
public static void main(String[] args) {
for(){//控制行数
for(){//控制空格数
}
for(){//控制*数
}
system.out.println("");//换行
}
}
3.代码实现
public class Demo {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {//控制 行数,10行为例
for (int j = 1; j <=10-i; j++) {//控制空格数
System.out.print(" ");//打印空格
}
for (int k = 1; k<=2*i-1; k++) {//控制*数
System.out.print("*");//打印*
}
System.out.println("");//换行
}
}
}
4.结果
本文地址:https://blog.csdn.net/qq_42726411/article/details/107377837
推荐阅读