首页 > 代码库 > 两个经典的小例子:杨辉三角和水仙花

两个经典的小例子:杨辉三角和水仙花

package fllower;
/**
* 打印杨辉三角
* @author acer
*
*/
public class YangHui {
public static void main(String[] args) {
int[][] array = new int[10][];
//输出十行
for(int i = 0;i<10;i++){
//行是从0开始 列数加1
array[i] = new int[i+1];
//从第一行开始,依次给每行加不同的空格
for (int j = 9; j>i; j--) {
System.out.print(" ");
}
//控制每行输出的元素
for(int k=0;k<i;k++){
if (k==0 || k==i) {
//两边的值
array[i][k] = 1;
System.out.print(array[i][k]+" ");
}else {
//中间值
array[i][k] = array[i-1][k]+array[i-1][k-1];
System.out.print(array[i][k]+" ");
}
}
//换行
System.out.println();
}
}
}

//运行结果:
           1
          1 1
         1 2 1
        1 3 3 1
       1 4 6 4 1
      1 5 10 10 5 1
    1 6 15 20 15 6 1
   1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1

 

package fllower;

/**
* 求一千以内的水仙花数 所谓水仙花数,
* 是指一个三位整数, 它的各位数字的立方和等于这个数本身.
* 例如:371就是一个水仙花数,因为371=3*3*3+7*7*7+1*1*1.
*
* @author acer
*
*/
public class FllowersNumber {
private static int b, s, g;

public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
b = i / 100;
s = i / 10 % 10;
g = i % 10;
if (i == b * b * b + s * s * s + g * g * g) {
System.out.println("水仙花数为:" + i);
}
}
}

}

//153  370   371  407

两个经典的小例子:杨辉三角和水仙花