首先我们输出一个一般的9*9乘法表
代码如下:
public class Triangle {
public static void main(String[] args) {
/* 正位三角形 */
int sum = 0;
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}
然后我们将这个三角形进行上下变换(个人将其简称为反位三角形)
代码如下:
int sum = 0;
for (int i = 9; i > 0; i--) {
for (int j = i; j > 0; j--) {
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}
现在我们将正位三角形进行左右变换
代码如下:
/* 正位对角三角形 */(即右上方)
int sum = 0;
for (int i = 9; i > 0; i--) {
for (int z = 0; z <= 9 - i; z++) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}
代码如下:
int sum = 0;(即右下方)
for (int i = 1; i < 10; i++) {
for (int z = 9 - i; z >= 0; z--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}
最后我们将这四个三角形进行简单的一些变化组合,可以生成一个四个三角形组成的矩形
代码如下:
int sum = 0;
for (int i = 9; i > 0; i--) {
//此部分用于生成上面的两个三角形
for (int j = i; j > 0; j--) {
//上部分 左边三角形
sum = i * j;
if (sum < 10) {
System.out.print(i + "*" + j + "=" + " " + sum + " ");
} else {
System.out.print(i + "*" + j + "=" + sum + " ");
}
}
for (int z = 0; z < 9 - i; z++) {
//中间的空格
System.out.print(" ");
System.out.print(" ");
}
for (int m = 1; m <= i; m++) { //上部分 右边三角形
sum = i * m;
if (sum < 10) {
System.out.print(m + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(m + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}
for (int i = 1; i <= 9; i++) { //此部分用于生成下面的两个三角形
for (int j = i; j >= 1; j--) {
//下部分 左边三角形
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
for (int z = 9 - i; z > 0; z--) {
/中间空格部分/
System.out.print(" ");
}
for (int z = 9 - i; z > 0; z--) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
//下部分 右边三角形
sum = i * j;
if (sum < 10) {
System.out.print(j + "*" + i + "=" + " " + sum + " ");
} else {
System.out.print(j + "*" + i + "=" + sum + " ");
}
}
System.out.println();
}