0% found this document useful (0 votes)
8 views9 pages

Algoritma

The document outlines a Java program designed to calculate a person's zodiac sign and age based on their name and birthdate input. It includes instructions for input formatting, zodiac determination rules, and the program's graphical user interface components. The program processes the input to display the user's name, zodiac sign, and age as of 2028.

Uploaded by

arifhannasy3
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views9 pages

Algoritma

The document outlines a Java program designed to calculate a person's zodiac sign and age based on their name and birthdate input. It includes instructions for input formatting, zodiac determination rules, and the program's graphical user interface components. The program processes the input to display the user's name, zodiac sign, and age as of 2028.

Uploaded by

arifhannasy3
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Nama : Yodik Kristanto

NIM : 2214321009

Semester : 1

Kelas : D Sore
1. Masukkan nama
2. Masukkan tanggal, bulan, dan tahun lahir dengan format dd-mm-yyyy, ex: 16-07-1981
3. Ambil tahun_lahir kemudian kurangkan dengan tahun 2028

Umur = 2028-(tahun_lahir)

4. Ambil tanggal dan bulan lalu bandingkan dengan aturan berikut:

- Jika lahir antara tanggal 21 Maret-19 April maka zodiac aries


- Jika lahir antara tanggal 20 April-20 Mei maka zodiac Taurus
- Jika lahir antara tanggal 21 Mei-20 Juni maka zodiac Gemini
- Jika lahir antara tanggal 21 Juni-22 Juli maka zodiac cancer
- Jika lahir antara tanggal 23 Juli-22 Agustus maka zodiac leo
- Jika lahir antara tanggal 23 Agustus-22 September maka zodiac virgo
- Jika lahir antara tanggal 23 September-22 Oktober maka zodiac libra
- Jika lahir antara tanggal 23 Oktober-21 November maka zodiac scorpio
- Jika lahir antara tanggal 22 November-21 Desember maka zodiac Sagittarius
- Jika lahir antara tanggal 22 Desember-19 Januari maka zodiac Capricorn
- Jika lahir antara tanggal 20 Januari-18 Februari maka zodiac aquarius
- Jika lahir antara tanggal 19 Februari-20 Maret maka zodiac pisces

5. Tampilkan nama
6. Tampilkan zodiac
7. Tampilkan umur
Flowchart :
Code Program :

/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this
license
* Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template
*/
package javaapplication22;

/**
*
* @author Yodik Kristanto
*/
public class NewJFrame extends javax.swing.JFrame {

/**
* Creates new form NewJFrame
*/
public NewJFrame() {
initComponents();
txtOutNama.setEditable(false);
txtOutUmur.setEditable(false);
txtOutZodiac.setEditable(false);
}

/**
* 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")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

btnProses = new javax.swing.JButton();


jLabel1 = new javax.swing.JLabel();
txtInNama = new javax.swing.JTextField();
txtInTglLahir = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
txtOutNama = new javax.swing.JTextField();
jLabel5 = new javax.swing.JLabel();
txtOutZodiac = new javax.swing.JTextField();
txtOutUmur = new javax.swing.JTextField();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

btnProses.setText("Proses");
btnProses.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnProsesActionPerformed(evt);
}
});

jLabel1.setText("Nama :");

jLabel2.setText("Tanggal Lahir :");

jLabel3.setText("Hasil :");

jLabel4.setText("Nama :");

jLabel5.setText("Zodiac :");

jLabel6.setText("Umur Pada Tahun 2028 :");

jLabel7.setText("Format penulisan tanggal lahir dd-mm-yyyy ex: 16-07-1981");


javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addComponent(jLabel1)
.addComponent(jLabel6)
.addComponent(jLabel3)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jLabel2)
.addGap(50, 50, 50))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel4)
.addGap(89, 89, 89)))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel5)
.addGap(85, 85, 85)))
.addGap(28, 28, 28)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignmen
t.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alig
nment.TRAILING, false)
.addComponent(txtOutZodiac,
javax.swing.GroupLayout.DEFAULT_SIZE, 155, Short.MAX_VALUE)
.addComponent(txtOutUmur,
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtOutNama,
javax.swing.GroupLayout.Alignment.LEADING))
.addComponent(txtInTglLahir,
javax.swing.GroupLayout.PREFERRED_SIZE, 155, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGap(155, 155, 155)
.addComponent(txtInNama, javax.swing.GroupLayout.PREFERRED_SIZE, 155,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addComponent(jLabel7, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnProses, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(txtInNama, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtInTglLahir, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2))
.addGap(18, 18, 18)
.addComponent(jLabel3)
.addGap(12, 12, 12)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(txtOutNama, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtOutZodiac, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtOutUmur, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnProses, javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 52,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(30, Short.MAX_VALUE))
);

pack();
}// </editor-fold>

private void btnProsesActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String nama = txtInNama.getText();

String tglLahir = txtInTglLahir.getText();

txtOutNama.setText(nama);

zodiak(tglLahir);
umur(tglLahir);
}

public void umur(String tglLahir) {


int tahun = Integer.parseInt(tglLahir.substring(6)); //6-9 tahun
int umur=0;

umur=2028-tahun;

txtOutUmur.setText(Integer.toString(umur));
}

public void zodiak(String tglLahir) {


int tgl = Integer.parseInt(tglLahir.substring(0,2));
int bln = Integer.parseInt(tglLahir.substring(3,5));//6-9

if( ((tgl>=20&&tgl<=31)&&bln==1) || ((tgl>=1&&tgl<=18)&&bln==2)){


txtOutZodiac.setText("Aquarius");
}else if( ((tgl>=19&&tgl<=29)&&bln==2) || ((tgl>=1&&tgl<=20)&&bln==3)){
txtOutZodiac.setText("Pisces");
}else if( ((tgl>=21&&tgl<=31)&&bln==3) || ((tgl>=1&&tgl<=19)&&bln==4)){
txtOutZodiac.setText("Aries");
}else if( ((tgl>=20&&tgl<=30)&&bln==4) || ((tgl>=1&&tgl<=20)&&bln==5)){
txtOutZodiac.setText("Taurus");
}else if( ((tgl>=21&&tgl<=31)&&bln==5) || ((tgl>=1&&tgl<=20)&&bln==6)){
txtOutZodiac.setText("Gemini");
}else if( ((tgl>=21&&tgl<=30)&&bln==6) || ((tgl>=1&&tgl<=22)&&bln==7)){
txtOutZodiac.setText("Cancer");
}else if( ((tgl>=23&&tgl<=31)&&bln==7) || ((tgl>=1&&tgl<=22)&&bln==8)){
txtOutZodiac.setText("Leo");
}else if( ((tgl>=23&&tgl<=30)&&bln==8) || ((tgl>=1&&tgl<=22)&&bln==9)){
txtOutZodiac.setText("Virgo");
}else if( ((tgl>=23&&tgl<=31)&&bln==9) || ((tgl>=1&&tgl<=22)&&bln==10)){
txtOutZodiac.setText("Libra");
}else if( ((tgl>=23&&tgl<=30)&&bln==10) || ((tgl>=1&&tgl<=21)&&bln==11)){
txtOutZodiac.setText("Scorpio");
}else if( ((tgl>=22&&tgl<=31)&&bln==11) || ((tgl>=1&&tgl<=21)&&bln==12)){
txtOutZodiac.setText("Sagitarius");
}else if( ((tgl>=22&&tgl<=30)&&bln==12) || ((tgl>=1&&tgl<=19)&&bln==1)){
txtOutZodiac.setText("Capricorn");
}
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* 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(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}

// Variables declaration - do not modify


private javax.swing.JButton btnProses;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JTextField txtInNama;
private javax.swing.JTextField txtInTglLahir;
private javax.swing.JTextField txtOutNama;
private javax.swing.JTextField txtOutUmur;
private javax.swing.JTextField txtOutZodiac;
// End of variables declaration
}
Tampilan Program :

You might also like