三角数 Java
triangular Numbers Java
问题是相同结果(三角数)有两种代码
1.
for (int i = 1; i <= 10; i++) {
int triangular = 0;
for (int j = 1; j <= i; j++) {
triangular = triangular + j;
}
System.out.println(i + " = " + triangular);
2.
int x =1;
int triangular = 1;
while(x<=10){
System.out.println(x+ "=" +triangular);
x++;
triangular= triangular+x;
}
为什么 (1) "int triangualr" 是 0 而 (2) 是 1 ???不明白
因为在第二个代码中 "triangular" 首先打印了 value=1
而在第一个代码中,"triangular" 首先增加(从 0 到 1),然后打印 value=1.
所以在这两种情况下,您首先看到的是三角形=1。
在方法1中,每次在for循环中初始化int triangular。嵌套 for 循环正在计算三角形的值,然后打印值
for (int i = 1; i <= 10; i++) {
int triangular = 0;
for (int j = 1; j <= i; j++) {
triangular = triangular + j;
}
System.out.println(i + " = " + triangular);
}
但是在方法2中,在while循环的第一行打印x=1的值,然后递增x的值
int x =1;
int triangular = 1;
while(x<=10){
System.out.println(x+ "=" +triangular);
x++;
triangular= triangular+x;
}
所以在第一种方法中,三角形的值是从 1 开始计算的,而在第二种方法中,三角形的值是在第一次迭代中不计算的
问题是相同结果(三角数)有两种代码
1.
for (int i = 1; i <= 10; i++) {
int triangular = 0;
for (int j = 1; j <= i; j++) {
triangular = triangular + j;
}
System.out.println(i + " = " + triangular);
2.
int x =1;
int triangular = 1;
while(x<=10){
System.out.println(x+ "=" +triangular);
x++;
triangular= triangular+x;
}
为什么 (1) "int triangualr" 是 0 而 (2) 是 1 ???不明白
因为在第二个代码中 "triangular" 首先打印了 value=1 而在第一个代码中,"triangular" 首先增加(从 0 到 1),然后打印 value=1.
所以在这两种情况下,您首先看到的是三角形=1。
在方法1中,每次在for循环中初始化int triangular。嵌套 for 循环正在计算三角形的值,然后打印值
for (int i = 1; i <= 10; i++) {
int triangular = 0;
for (int j = 1; j <= i; j++) {
triangular = triangular + j;
}
System.out.println(i + " = " + triangular);
}
但是在方法2中,在while循环的第一行打印x=1的值,然后递增x的值
int x =1;
int triangular = 1;
while(x<=10){
System.out.println(x+ "=" +triangular);
x++;
triangular= triangular+x;
}
所以在第一种方法中,三角形的值是从 1 开始计算的,而在第二种方法中,三角形的值是在第一次迭代中不计算的