日期:2014-05-19 浏览次数:20657 次
/*
作者:唐良运
功能:用java实现金字塔的模型
* * * *
** *** * * * *
*** ***** * * * *
**** ******* ******* * *
*
该问题主要考虑空格与*的排列问题!
*/
public class Pyramid
{
public static void main(String[] args){
//先将层数控制为4层
int layer = 7;
//i表示多少层
for(int i=1;i<=layer;i++){
//先打印第一个图形;打印第二个图形
//找空格规律:1->3,2->2,3->1,4->0
for(int k=1;k<=layer-i;k++){
//打印空格
System.out.print(" ");
}
//改变*的控制i->2i-1
//1->1,2->3,3->5,4->7
for(int j=1;j<=2*i-1;j++){
//第三个是一个镂空的三角形
//判断该层是否为顶层或底层
if(i==1
------其他解决方案--------------------
正三角形:
第1行: *
第2行: ***
第3行: *****
第4行:*******
先要会输出直角三角形,然后内层循环控制每行输出的空格和星星(空格数量随着外层循环变量递减,但是星星数量随着外层循环变量递增),外层循环控制输出多少行。
倒三角形 不是一样一样的吗、
------其他解决方案--------------------
搞是搞懂了 但又有新的问题了
------其他解决方案--------------------
内循环控制输出的空格 我了解清楚了 也学会了 直角的 但是控制星星的那层循环 不会
第一行:一个
第二行:三个
第三行:五个
第四行:七个
这个不知道怎么写
------其他解决方案--------------------
i==layer){
System.out.print("*");
}else{
//找是否是第一个或是最后一个
if(j==1
------其他解决方案--------------------
j==2*i-1){
System.out.print("*");
}else{
System.out.print(" ");
}
}
}
//打印换行
System.out.println();
}
}
}