首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

哪位高手能给小弟我讲上 JAVA 打印正三角形和到三角形的原理

2012-12-22 
谁能给我讲下 JAVA 打印正三角形和到三角形的原理?RT,网上 好多 只有 代码 看不懂谁能给我讲一下不要 代码

谁能给我讲下 JAVA 打印正三角形和到三角形的原理?
RT  ,网上 好多 只有 代码 看不懂  谁能给我讲一下  不要 代码 说下怎么实现的
[最优解释]


/*
作者:唐良运
功能:用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();
 }
}
}


[其他解释]
看清楚问题 在来么  。。。 我说的是 

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


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

这个 
[其他解释]
我看了 好久 都不明白 是乍回事  自己打了 才知道是令一种三角形  
[其他解释]
自己改一下数字都不会啊,原理写了,理解后自己改改不就有了,不要期待别人把问题都给你解决了
[其他解释]


自己好像太笨了 看了好久都还没理解 
[其他解释]
内层 控制行(即每行几个星星),
外层控制列(即 共几列)
[其他解释]
如果看不懂,就把每一步的相关数据都输出,(System.out.println())包括循环里面的 i j k等变量,最好先那小三角形试,一点一点就理解了。
[其他解释]
public class exam
{
public static void main(String[] args)
{

for(int i=0;i<10;i++)  //i=1
{
for(int j=i;j<10;j+=2) //j=1
{
System.out.print(" ");
}
for(int k=0;k<=i*4;k+=2)    
{
System.out.print("*");
                        
}
System.out.println();
}
}
}

最后输出结果:
           *                   
          ***                   
         *****                  
        *******               
       *********               
      ***********              
     *************            
    ***************            
   *****************        
  *******************



我想要这面这个三角形,知道规律,但不知道怎么用代码表现出来  
第1行10个空格
第2行 8个空格

每行逐一递减2个 怎么用代码表示 
          

//          *                   //空10个  打印1个
//        * * *                 //空 8个  打印3个


//      * * * * *               //空 6个  打印5个
//    * * * * * * *             //空 4个  打印7个  
//  * * * * * * * * *           //空 2个  打印9个
[其他解释]
你初中数学及格过没?及格过就把你那三个数字(行 空 星)自己写个代数表达式出来,没及格过就不用了。

热点排行