Menentukan Bilangan Prima menggunakan JavaNetbeans

            

 Menentukan Bilangan Prima menggunakan Java Netbeans 


  Ketika sekolah, dahulu Kita tentu penah mempelajari mengenai bilangan prima. Dalam matematika, bilangan prima adalah bilangan asli yang lebih besar dari angka 1 dan faktor dari pembagian 1 atau bilangan itu sendiri. Contoh bilangan prima seperti: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 dan lain sebagainya. Bilangan prima tidak dapat difaktorisasi menjadi bilangan lain, contohnya 2 hanya dapat dibagi oleh 2 dan 1. Jadi bilangan prima yang terkecil adalah 2 dan merupakan bilangan genap satu-satunya. Banyak orang bertanya-tanya, kenapa angka satu bukan bilangan prima? meski angka 1 tidak dapat dibagi dengan angka lain selain angka 1 itu sendiri, namun bukan berarti angka 1 adalah bilangan prima. Hal ini karena angka 1 hanya dapat dibagi oleh angka itu sendiri dan tidak bisa dibagi dengan angka lain. Dari penjelasan tersebut, Kami mencoba untuk mempraktekan dalam sebuah program sederhana menentukan bilangan prima atau bukan. Berikut ini cara pembuatan program tersebut: 
1.      Buat project baru 
Buat project baru dengan memilih File > New Project. Isi beberapa data seperti nama project Anda dan lokasi penyimpanan, berikut ini contoh membuat project baru. 



Bila project telah dibuat, maka terdapat class Menentukan Bilangan Prima atau jika ingin membuat class baru anda perlu klik kanan pada package > New > Java class. 


Buat script pada Menentukan Bilangan Prima yang digunakan untuk memanggil frame.


 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package menentukan.bilangan.prima;

/**
 *
 * @author Abdul Hanan
 */
public class MenentukanBilanganPrima {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Frame_bilangan_prima Laund = new Frame_bilangan_prima ();
        Laund.setVisible(true);
    }
}


 
Buat frame yang digunakan untuk menampilkan program yang dibuat. Buat frame baru dengan cara klik kanan pada package > New > JFrame Form dengan nama Frame_bilangan_prima. 


Desain frame dengan membuat text field dan button seperti gambar berikut ini. 


Bila desain frame telah selesai, pilih Source untuk membuat script Java, berikut ini contoh script yang telah selesai dibuat.



 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package menentukan.bilangan.prima;

/**
 *
 * @author Abdul Hanan
 */
public class Frame_bilangan_prima extends javax.swing.JFrame {
    int  angka; 
   
    
    /**
     * Creates new form Frame_bilangan_prima
     */
    public Frame_bilangan_prima() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // 
    private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        txtAngka = new javax.swing.JTextField();
        txtHasil = new javax.swing.JTextField();
        btnCek = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jLabel1.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel1.setText("Program Menentukan Bilangan Prima");

        jLabel4.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        jLabel4.setText("Masukan Angka");

        jLabel5.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        jLabel5.setText("Hasil");

        txtAngka.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N

        txtHasil.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N

        btnCek.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        btnCek.setText("Cek");
        btnCek.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnCekActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(42, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(txtAngka, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(txtHasil, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(btnCek)
                                .addGap(15, 15, 15)))
                        .addGap(40, 40, 40))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 350, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                .addComponent(jLabel5, javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(jLabel4)
                                    .addGap(254, 254, 254))))
                        .addGap(31, 31, 31))))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(41, 41, 41)
                .addComponent(jLabel1)
                .addGap(40, 40, 40)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(txtAngka, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(8, 8, 8)
                .addComponent(btnCek)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel5)
                    .addComponent(txtHasil, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(25, Short.MAX_VALUE))
        );

        pack();
    }// 

    private void btnCekActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
        boolean prima = true; 
        angka = Integer.parseInt(txtAngka.getText());
        for (int i=2;i < angka;i++){  

        if (angka%i==0){  
        prima=false;
        txtHasil.setText("" + angka + " Bukan Bilangan Prima");
               
        } 
        if (prima && ! (angka==1) && ! (angka==0)){  
        txtHasil.setText("" + angka+" Bilangan Prima");
        }
        }
    }
    
    
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Frame_bilangan_prima.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Frame_bilangan_prima.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Frame_bilangan_prima.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Frame_bilangan_prima.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //

        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new Frame_bilangan_prima().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton btnCek;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JTextField txtAngka;
    private javax.swing.JTextField txtHasil;
    // End of variables declaration
}

 
2. Hasil program 
Lihat hasil program dengan memilih Run Main Project(F6) atau Pilih Project > Klik kanan > Run. Pada program tersebut, Anda diminta melakukan input angka kemudian pilih button Cek. Kemudian akan muncul informasi mengenai angka tersebut, apakah bilangan prima atau tidak. 

إرسال تعليق

Post a Comment (0)

أحدث أقدم