Beberapa waktu yang lalu saya diberi tugas oleh dosen saya untuk membuat sebuah segitiga yang asalnya dari bintang. Menggunakan while atau do while.
Yang jadi masalah, saat pelajaran tersebut saya tidak masuk dikarenakan badan yang kurang sehat. Alhasil, saya harus mengorek sendiri, mencari tahu sendiri, dan dibantu rekan saya rizkypratama.id. Alhamdulillah solved. Saat ini tugas pun dikumpulkan. Dan yang jadi masalah kedua adalah segita tersebut baru bisa dibuat menggunaka While, karena menggunakan Do While belum bisa ditemukan caranya.
Namun, karena dikhawatirkan lupa, akhirnya saya coba tuliskan terlebih dahulu bagaimana caranya menggunakan membuat piramida setengah ke kanan, setengah ke kiri dan piramida penuh menggunakan While. Berikut adalah kode sumbernya:
Piramida Setengah Kanan
package loopingsegitiga;
import java.util.Scanner;
/**
*
@author dhenandi
*/
public class WhilePiramidaKanan {
public static void main(String[] args) {
int i,j, bintang;
boolean ulang=true;
String cek;
Scanner baca = new Scanner(System.in);
while (ulang){
System.out.print("Barisnya mau berapa boss? ");
bintang = baca.nextInt();
i=1;
while (i<=bintang){
j=1;
while (j<=i){
System.out.print("* ");
j++;
}
System.out.println();
i++;
}
System.out.print("Mau diulang gak nih(Y/T)? ");
cek = baca.next();
if (cek.equalsIgnoreCase("Y")){
ulang = true;
} else if (cek.equalsIgnoreCase("T")){
ulang = false;
} else
System.exit(0);
}
}
}
Keluaran

Piramida Setengah Ke Kiri
package loopingsegitiga; import java.util.Scanner; /** * * @author dhenandi */ public class WhilePiramidaKiri { public static void main(String[] args) { int i,j,k, bintang; boolean ulang=true; String cek; Scanner baca = new Scanner(System.in); while (ulang){ System.out.print("Barisnya mau berapa boss? "); bintang = baca.nextInt(); i=1; while(i<=bintang){ k=bintang; while(k>i){ System.out.print(" "); k--; } j=1; while(j<=i){ System.out.print("* "); j++; } i++; System.out.println(); } System.out.print("Mau diulang lagi gak boss(Y/T)? "); cek = baca.next(); if (cek.equalsIgnoreCase("Y")){ ulang = true; } else if (cek.equalsIgnoreCase("T")){ ulang = false; } else System.exit(0); } } }
Keluaran

Piramida Sempurna Penuh
package loopingsegitiga; import java.util.Scanner; /** * * @author dhenandi */ public class WhilePiramidaSempurna { public static void main(String[] args) { int i,j,k,l, bintang; String cek; boolean ulang=true; while(ulang){ Scanner baca = new Scanner(System.in); System.out.print("Bintangnya mau berapa boss? "); bintang = baca.nextInt(); i=1; while (i<=bintang){ j=bintang-1; while (j>=i){ System.out.print(" "); j--; } k=1; while (k<=i){ System.out.print("* "); k++; } l=1; while (l<=i-1){ System.out.print("* "); l++; } i++; System.out.println(); } System.out.print(""); System.out.print("Mau diulang gak boss(Y/T)? "); cek = baca.next(); if (cek.equalsIgnoreCase("Y")){ ulang = true; } else if (cek.equalsIgnoreCase("T")){ ulang = false; } else System.exit(0); } } }
Keluaran

Begitulah caranya. Hanya saja yang do while belum ketemu, mari kita oprek kembali!
assalamualaikum bang , klo ada persoalan kyk gini gimana bang
Buat Program 1/2 piramida dengan ketentuan sebagai berikut:
Input : tinggi, karakter, jenis piramida[A/B]
Proses : Kalau pilih A = menampilkan piramida ujungnya diatas
Kalau pilih B = menampilkan piramida ujungnya dibawah
Contoh Output :
— PROGRAM PIRAMIDA —
Tinggi : 5
Karakter : #
Jenis [A/B] : a
Piramida Atas
#
# #
# # #
# # # #
# # # # #
Mau Ulang lagi [Y/T] :
Note : Sertakan Error Handling kalau inputan tidak sesuai