在这里插入代码片package Chen.cjw.laohan;
public class 空心金字塔 {
/* 打印半个金字塔
* //第 1 层 有 1 个*
** //第 2 层 有 2 个*
*** //第 3 层 有 3 个*
**** //第 4 层 有 4 个*
***** //第 5 层 有 5 个*
打印整个金字塔
* //第 1 层 有 1 个* 2 * 1 -1 有 4=(总层数-1)个空格
*** //第 2 层 有 3 个* 2 * 2 -1 有 3=(总层数-2)个空格
***** //第 3 层 有 5 个* 2 * 3 -1 有 2=(总层数-3)个空格
******* //第 4 层 有 7 个* 2 * 4 -1 有 1=(总层数-4)个空格
********* //第 5 层 有 9 个* 2 * 5 -1 有 0=(总层数-5)个空格
//代码:( public static void main(String[] args) {
// for (int i = 1; i <=5; i++) {
// for (int k =0 ; k<=5-i;k++){
// System.out.print(" ");
// }
// for (int j =1; j <=2*i-1;j++) {
// System.out.print("*");
// }
// System.out.println("");
// }
// })
4. 打印空心的金字塔 [最难的]
* //第 1 层 有 1 个* 当前行的第一个位置是*,最后一个位置也是*
* * //第 2 层 有 2 个* 当前行的第一个位置是*,最后一个位置也是*
* * //第 3 层 有 2 个* 当前行的第一个位置是*,最后一个位置也是*
* * //第 4 层 有 2 个* 当前行的第一个位置是*,最后一个位置也是*
********* //第 5 层 有 9 个* 全部输出*
先死后活
5 层数做成变量 int totalLevel = 5; //小伙伴 技术到位,就可以很快的把代码写出
*/
//空心金字塔:
/*public static void main(String[] args) {
int totalLevel =20;//层数
for (int i = 1; i <=totalLevel; i++) {//i 表示层数
for (int k =0 ; k<=totalLevel-i;k++){//在输出*之前,还有输出 对应空格 = 总层数-当前层
System.out.print(" ");
}
for (int j = 1; j <=2*i-1;j++) {//控制打印每层的*个数
if (j==1||j==2*i-1||i==totalLevel) {//当前行的第一个位置是*,最后一个位置也是*, 最后一层全部 *
System.out.print("*");
}else {
System.out.print(" ");//其他情况输出空格
}
}
System.out.println("");//每打印完一层的*后,就换行 println 本身会换行
}
}
*/
public static void main(String[] args) {
int totalLevel =5;//层数
for (int i = 1; i <=totalLevel; i++) {//i 表示层数
for (int k =0 ; k<=totalLevel-i;k++){//在输出*之前,还有输出 对应空格 = 总层数-当前层
System.out.print(" ");
}
for (int j = 1; j <=2*i-1;j++) {//控制打印每层的*个数
if (j==1||j==2*i-1) {//当前行的第一个位置是*,最后一个位置也是*, 最后一层全部 *
System.out.print("*");
}else {
System.out.print(" ");//其他情况输出空格
}
}
System.out.println("");//每打印完一层的*后,就换行 println 本身会换行
}
}
}
空心金字塔示例
最新推荐文章于 2024-09-25 10:59:43 发布