九九乘法表打印
按照以下格式对九九乘法表正确输出:
/*
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
*/
- 思路
看到这张表时,我们首先从输出的结果观察,用逆向思维倒推代码;
我们观察到一共有九行,很明显是用到了System.out.println();来实现的换行;
我们还观察到每一行的输出内容不止一项,可以推导出会用到System.out.print();来实现一行多输出;
我们观察每一行的两个因数(一个叫a,一个叫b)的值,始终一个因数不会超过另外一个因素;例如第九行,从1×9,一直增长到9×9;第八行:1×8到8×8;这里我们可以联想到a<=b;
我们再观察每一列的因数的规律,有一个因数的值是循环增加到9的;
我们可以推到出有一个因数a是从1循环增加到9,分别乘以每一个小于或等于他的值b(即b循环增加到a):
for(int a=1;a<=9;a++){
for(int b=1;b<=a;b++){
System.out.print(a+"*"+b+"="+"(a*b)");//每一次a带值进来都会乘以每一个比他小的数
}System.out.println();//将每一次的循环换行
}
/*最终打印出此表,我们会发现好像与文章开头并不一样,其实只需要在输出端将a和b互换位置即可
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
标签:24,输出,Day10.2,九九乘法,打印,因数,详解,观察
From: https://www.cnblogs.com/CQliuwei/p/16887766.html