题目:打印 n=6 的三角数字阵
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
解法一:需要定义三个变量
class Demo
{
public static void main(String[] args)
{
int z=0;
for(int x=1;x<=6;x++) //外循环控制打印的行数
{
for (int y=1;y<=x;y++ ) //内循环控制打印的每行的个数
{
z++;
System.out.print(z+"\t");
}
System.out.println();
}
}
}
解法二: 不需第三方变量
class Demo
{
public static void main(String[] args)
{
for(int x=1;x<=6;x++)
{
for (int y=(x*x-x+2)/2;y<=((x*x+x)/2);y++ ) //通过数学规律可计算出:(x*x-x+2)/2为第x行的最小值,(x*x+x)/2为第x行的最大值
{
System.out.print(y+"\t");
}
System.out.println();
}
}
}
|
|