La copie de code est la suivante:
/*Java
* Auteur: Nealfeng à Oschina.net
* Licence: gplv2 +
* Heure: 2014/1/17
*
* Sortir la pyramide numérique dans la console:
* 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
* Le défaut de la sortie de la console est que les nombres ne peuvent pas être complètement centrés et ne peuvent être que droite ou gauche.
* /
classe publique numéropyramid {
public static void main (String [] args) {
// Nombre de lignes
intr lineNumber = 5;
// Base
int Basenumber = 2;
// Générez des nombres et les chiffres sont enregistrés dans le tableau {1,2,4,8, ..., 2 ^ n}
int [] nombres = new int [lineNumber];
nombres [0] = 1;
for (int i = 1; i <linNumber; i ++) {
nombres [i] = nombres [i-1] * Basenumber;
}
// Calculez le nombre de caractères que chaque nombre occupe: le nombre maximum de chiffres + 2
int columnspernumber =
String.valueof (nombres [lineNumber-1]). Length () + 2;
// Sortie, le format de sortie est le suivant:
// chaque indent = colonnesperNumber Espaces
// chaque largeur de nombre est des colonnes PermerNumber
// Cela formera une forme de pyramide
&/
// indent
// chiffres en retrait des chiffres
// Nombres numériques
for (int i = 0; i <linNumber; i ++) {
// Indentation de sortie
pour (int j = 0; j <linenumber-i-1; j ++)
System.out.printf ("%" + ColumnSpernumber + "S", "");
// Numéro de sortie
// sortie {1,2,4,8, ..., 2 ^ n}
pour (int k = 0; k <i + 1; k ++)
System.out.printf ("%" + ColumnSpernumber + "D", nombres [k]);
// sortie {2 ^ n-1, ..., 8,4,2,1}
pour (int m = 0; m <i; m ++)
System.out.printf ("%" + ColumnSperNumber + "D", nombres [IM-1]);
//Gagner
System.out.println ();
}
}
}