黑马程序员技术交流社区
标题:
输出 n=6 的三角数字阵的两种解法
[打印本页]
作者:
yapo
时间:
2015-4-27 22:11
标题:
输出 n=6 的三角数字阵的两种解法
题目:打印 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();
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2