
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:
Poskan Komentar