2016年11月27日 星期日

數字金字塔


import java.util.*;
public class Num
{
public static void main(String[] main)
{
int num=0,z=0;//創立兩個變數 num為使用者輸入的數量 z為空格計數器
Scanner sc=new Scanner(System.in);
num=sc.nextInt();
for(int i=1;i<=num;i++)//注意!i控制列j控制行
{
z=num-i;//每一列所需的空格數 可以發現規律 假設輸入3列 那麼第一列需要的空格數量就是2 第二列就是1以此類推
for(int x=1;x<=z;x++)
{
System.out.print(" ");
}
for(int j=1;j<=i;j++)
{

if(i==j)//當i和j相等時就是那列的最大值 如"123"到3的時候最大那剩下的"21"就得往回扣 如此才能得到"12321"完整的一列

{
for(int k=j;k>=1;k--)
{
System.out.print(k);
}

}
else //如果沒有相等那代表還不是那列最大值就做出輸出
{
System.out.print(j);

}

}
System.out.println("");
}
}
}

-----------------------輸出結果如下---------------------------

沒有留言:

張貼留言