Jumat, 05 Februari 2010

Piramida Bintang




Sejak kenal pemrograman komputer 9 tahun yg lalu saya selalu ingin bikin program dengan output seperti ini. Tapi alignmentnya ga pernah benar.
Ngga tau kenapa hari ini tiba-tiba kepikiran caranya. Kurang lebih seperti ini, dalam Java:


class PrintStars //baris 1
{
public static void main(String[] args)
{
int line = 20; //baris 5
int lineCenter = line;
int centerPos = line;

for(int i = 0; i <= line; i++)
{ //baris 10
centerPos = lineCenter;
for(int j = 0; j < centerPos; j++)
{
System.out.print(" ");
} //baris 15
for(int k = 0; k <= i; k++)
{
System.out.print("* ");
}
System.out.println(""); //baris 20

lineCenter--;
}
}
} //baris 25




Rahasianya adalah sebelum bintangnya dicetak terlebih dahulu diberi space sesuai dengan jumlah bintang. Nilai centerPos pada baris 11 menentukan berapa banyak space yang harus dicetak sebelum mulai mencetak bintang-bintangnya.
Sebagai variabel kontrol lineCenter(baris 22) selalu di-decrement agar pada baris berikutnya bintang pertama selalu tercetak 'mundur' 1 posisi dari posisi bintang pertama baris diatasnya.

Semoga bermanfaat :)

0 komentar: