Кода -копия выглядит следующим образом:
/*Java
*Автор: Nealfeng на Oschina.net
*Лицензия: GPLV2+
*Время: 2014/1/17
*
*Вывод цифровой пирамиды в консоли:
* 1
* 1 2 1
* 1 2 4 2 1
* 1 2 4 8 4 2 1
* 1 2 4 8 16 8 4 2 1
*Дефект вывода консоли заключается в том, что числа не могут быть полностью центрированы и могут быть только правыми или влево.
*/
Общедоступный номер классапирамида {
public static void main (string [] args) {
// количество рядов
int LineNumber = 5;
// База
int baseNumber = 2;
// генерируют числа, а цифры сохраняются в массиве {1,2,4,8, ..., 2^n}
int [] numbers = new int [льняное число];
числа [0] = 1;
для (int i = 1; i <LineNumber; i ++) {
числа [i] = числа [i-1] * baseNumber;
}
// Рассчитайте, сколько символов занимает каждый номер: максимальное количество цифр + 2
int columnspernumber =
String.valueof (numbers [linenumber-1]). Length () + 2;
// Вывод, выходной формат заключается в следующем:
// каждый addent = columnspernumber spaces
// каждая ширина номера - ColumnSpernumber
// это образует пирамидную форму
// отступить отступление отступа.
// отступать в цифровых числах
// цифры с отступом цифры
// цифровые номера
для (int i = 0; i <lineNumber; i ++) {
// Выходное отступление
for (int j = 0; j <LineNumbumber-I-1; J ++)
System.out.printf («%»+ColumnSpernumber+"s", "");
// выходной номер
// output {1,2,4,8, ..., 2^n}
для (int k = 0; k <i+1; k ++)
System.out.printf («%»+columnspernumber+"d", числа [k]);
// output {2^n-1, ..., 8,4,2,1}
для (int m = 0; m <i; m ++)
System.out.printf ("%"+columnspernumber+"d", числа [im-1]);
//Победить
System.out.println ();
}
}
}