/**
* Title : Program bilangan prima
* Deskripsi: Mengaplikasikan beberapa elemen kendali (while, for, if) untuk mencari bilangan prima
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BilanganPrima {
/** Main method */
public static void main(String[] args) throws IOException
{
int jumBilPrima;
int counter = 1; // counter penghitung jumlah bilangan prima
int bilangan = 2; // bilangan yang akan diperiksa, apakah merupakan bilangan prima atau bukan.
// variabel ini diinisialisasi dengan 2 karena merupakan bilangan prima pertama
// selanjutnya bilangan ini akan diupdate
// dengan bilangan berikutnya (3, 4, 5,..)
boolean testPrima = true; // kondisi yang akan menyatakan suatu bilangan sebagai prima atau bukan
System.out.println("\nPROGRAM MENCARI N BILANGAN PRIMA" + "PERTAMA");
System.out.println("---------------------------------------------" + "--------\n");
// Menginstruksikan user untuk memasukkan N (jumlah bilangan prima) yang akan dicari
System.out.print("Masukkan jumlah bilangan prima: ");
jumBilPrima = InputConsole.readInt();
System.out.println("\nMencari" + jumBilPrima + "bilangan prima pertama: \n");
// Blok yang mengulang pemeriksaan bila bilangan yang baru adalah bilangan prima
while (counter <= jumBilPrima)
{
// Mengasumsikan suatu bilangan merupakan bilangan prima
testPrima = true;
// Mengeset testPrima menjadi false, jika bilangan tersebut ternyata bukan bilangan prima
for (int pembagi = 2; pembagi <= bilangan/2; pembagi++)
{
if (bilangan % pembagi == 0) // jika bernilai true maka bilangan bukan prima
{
testPrima = false;
break; // keluar dari blok perulangan for
}
}
// Mencetak bilangan prima dan menambahkan counter
if (testPrima)
{
if (counter%10 == 0)
{
// Mencetak bilangan prima
System.out.println(bilangan);
}
else
System.out.print(bilangan + " ");
counter++; // Menambah satu ke counter
}
// Memeriksa apakah bilangan selanjutnya merupakan prima
bilangan++;
}
}
}
class InputConsole {
public static int readInt() throws IOException{
int nilai;
BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(System.in));
String number = bufferedreader.readLine();
nilai = Integer.parseInt(number);
return nilai;
}
}
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment