0% found this document useful (0 votes)
118 views12 pages

Java Coding and Algorithms

The document contains code for several Java programs and methods. It includes: 1. A method to check if a string is a palindrome by reversing the string and comparing it to the original. 2. Methods to calculate the greatest common divisor and least common multiple of two numbers using recursion. 3. A merge sort method that sorts an array by dividing it into halves, sorting each half recursively, and then merging the sorted halves. 4. Code for a payroll application that loads employee data, calculates pay, and allows saving, updating, and deleting records from a database. 5. A method to calculate the minimum number of coins needed to make a given amount of change by trying all coin combinations

Uploaded by

Vebryan Zaka
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)
118 views12 pages

Java Coding and Algorithms

The document contains code for several Java programs and methods. It includes: 1. A method to check if a string is a palindrome by reversing the string and comparing it to the original. 2. Methods to calculate the greatest common divisor and least common multiple of two numbers using recursion. 3. A merge sort method that sorts an array by dividing it into halves, sorting each half recursively, and then merging the sorted halves. 4. Code for a payroll application that loads employee data, calculates pay, and allows saving, updating, and deleting records from a database. 5. A method to calculate the minimum number of coins needed to make a given amount of change by trying all coin combinations

Uploaded by

Vebryan Zaka
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/ 12

UAS PBO

NAMA: VEBRYAN ZAKA AULIA

NIM : A11.2018.11163

KEL : A11.4410

1.

public static void isPalindrome(String[] args) {

String kataAsli ,kataBalik = "";

//inisalisasi nilai ข ar

Scanner inputUser = new Scanner(System.in);

//instansi objek class Scanner

System.out.println("Inputkan Kata Untuk Mengecek Palindrome : ");

//keterangan ke user atau pengguna

kataAsli = inputUser.nextLine( );

//masukan nilai kata string dari user atau pengguna

int panjang = kataAsli.length( );

//menyimpan nilai panjang dari kata string user atau pengguna

for (int index = panjang -1;index>=0; index--){

//mengambil nilai kata string ketika dibalik

kataBalik = kataBalik + kataAsli.charAt(index);

if (kataAsli.equals(kataBalik)){

System.out.println("Kata termasuk Palindrome ");

else{

System.out.println("Kata bukan termasuk Palindrome ");

}
//tampilkan output hasil jika kata palindrome atau tidak

2.

Public static int GCD(int a, int b)

if (a == 0)

return b;

if (b == 0)

return a;

if (a == b)

return a;

if (a > b)

return gcd(a-b, b);

return gcd(a, b-a);

Public static int LCM(int a, int b)

return (a*b)/gcd(a, b);

}
3.

Public static void merge(int arr[], int l, int m, int r)

int n1 = m - l + 1;

int n2 = r - m;

int L[] = new int[n1];

int R[] = new int[n2];

for (int i = 0; i < n1; ++i)

L[i] = arr[l + i];

for (int j = 0; j < n2; ++j)

R[j] = arr[m + 1 + j];

int i = 0, j = 0;

int k = l;

while (i < n1 && j < n2) {

if (L[i] <= R[j]) {

arr[k] = L[i];

i++;

else {

arr[k] = R[j];

j++;

k++;
}

while (i < n1) {

arr[k] = L[i];

i++;

k++;

while (j < n2) {

arr[k] = R[j];

j++;

k++;

Public static void sort(int arr[], int l, int r)

if (l < r) {

int m = (l + r) / 2;

sort(arr, l, m);

sort(arr, m + 1, r);

merge(arr, l, m, r);

}
Public static void printArray(int arr[])

int n = arr.length;

for (int i = 0; i < n; ++i)

System.out.print(arr[i] + " ");

System.out.println();

4.

BIKIN VARIABEL BARU

public final class Form_Gaji {

private DefaultTableModel model;

String nip, nama, jabatan;

int gapok, transport, gaber;

KASIH NILAI VARIABEL

public void loadData() {

nip = txtNip.getText();

nama = txtNama.getText();

jabatan = (String) cmboxJabatan.getSelectedItem();

LOAD GAJI

public void loadGaji( ) {

jabatan = " "+ cmboxJabatan.getSelectedItem();

switch(jabatan){
case "Manager":

gapok = 5000000;

break;

case "Asisten Manager":

gapok = 4500000;

break;

case "Kepala HRD":

gapok = 4000000;

break;

case "Staf Keuangan":

gapok = 3500000;

break;

case "Karyawan":

gapok = 3000000;

break;

case "Office Boy":

gapok = 2500000;

break;

transport = (int) (gapok * 0.1);

gaber = gapok + transport;

txtGapok.setText(""+gapok);

txtTransport.setText(""+transport);

txtGaber.setText(""+gaber);

CLASS SAVE
public void saveData(){

loadData();

try{

Statement stat = (Statement) Db_Connection.getKoneksi().createStatement();

String sql = "Insert into gaji (Nip, Nama, Jabatan, Gapok, Transport, Gaber)"

+ "values ('"+ nip +"','"+ nama +"','"+ jabatan +"','"+ gapok +"',"

+ " '"+ transport +"', '"+ gaber +"')";

PreparedStatement p = (PreparedStatement) Db_Connection.getKoneksi().preparedStatement(sql);

p.executeUpdate();

getData();

}catch (SQLException err){

JOptionPane.showMessageDialog(null, err.getMessage());

MANGGIL CLASS loadGaji

private void cmboxJabatanActionPerformed(java.awt.event.ActionEvent evt{

loadGaji();

MANGGIL CLASS saveData() DI BUTTON SAVE

private void btnSaveActionPerformed(java.awt.event.ActionEvent evt{

saveData();

MEMBUAT TOMBOL RESET

public void Reset( ){


nip = " ";

nama = " ";

jabatan = " ";

gapok = 0;

transport = 0;

gaber = 0;

txtNip.setText(nip);

txtNama.setText(nama);

txtGapok.setText(" ");

txtTransport.setText(" ");

txtGaber.setText(" ");

PANGGIL CLASS RESET()

private void btnResetActionPerformed(java.awt.event.ActionEvent evt{

Reset();

MENAMPILKAN RECORD TERPILIH DARI TABLE

public void dataSelect(){

int i = tblGaji.getSelectRow();

if (i == -1){

//tidak ada data terpilih

return;

txtNip.setText(""+model.getValueAt(i, 0));
txtNama.setText(""+model.getValueAt(i, 1));

txtJabatan.setSelectedItem(""+model.getValueAt(i, 2));

txtGapok.setText(""+model.getValueAt(i, 3));

txtTransport.setText(""+model.getValueAt(i, 4));

txtGaber.setText(""+model.getValueAt(i, 5));

panggil class dataSelect()

private void tblGajiMouseClicked(java.awt.event.MouseEvent evt{

dataSelect();

BUAT TOMBOL UPDATE

public void updateData(){

/* memanggil class loadData() untuk menentukan kondisi atau variable nip

yang akan diubah, berdasarkan yang dipilih

*/

loadData();

try{

Statement stat = (Statement) Db_Connection.getConection().createStatement();

String sql = "UPDATE gaji SET Nama = '"+ nama +"',"

+ "Jabatan = '"+ jabatan +"',"

+ "Gapok = '"+ gapok +"',"

+ "Transport = '"+ transport +"',"

+ "Gaber = '"+ gaber +"',"

+ "WHERE Nip = '"+ nip +"' ";


PreparedStatement p = (PreparedStatement)
Db_Connection.getConection().preparedStatement(sql);

p.executeUpdate();

getData();

Reset();

JOptionPane.showMessageDialog(null, "Update berhasil....");

}catch(SQLException err){

JOptionPane.showMessageDialog(null, err.getMessage);

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

updateData( );

BUTTON DELETE

public void deleteData(){

loadData();

//pesan konfirmasi untuk menghapus data

int pesan = JOptionPane.showConfirmDialog(null, "Anda yakin menghapus data"+ nip


"+"?","Konfirmasi", JOptionPane.OK_CANCEL_OPTION);

//jika user mengklik tombol OK maka proses delete dilakukan

if (pesan = JOptionPane.OK_OPTION){

try{

Statement stat = (Statement) Db_Connection.getConection().createStatement();


String sql = "DELETE FROM gaji WHERE Nip = '"+ nip +"' ";

PreparedStatement p = (PreparedStatement)
Db_Connection.getConection().preparedStatement(sql);

p.executeUpdate();

getData();

Reset();

JOptionPane.showMessageDialog(null, "Delete berhasil");

}catch(SQLException err){

JOptionPane.showMessageDialog(null, err.getMessage);

PANGGIL DELETEDATA()

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

deleteData();

BIKIN BUTTON KELUAR

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

this.dispose();

5.

public static void min(int[] coins, int money) {

int[] dp = new int[money + 1];


int[] parents = new int[money + 1];

int[] usedCoin = new int[money + 1];

Arrays.sort(coins);

Arrays.fill(dp, Integer.MAX_VALUE);

Arrays.fill(parents, -1);

dp[0] = 0;

for (int i = 1; i <= money; ++i) {

for (int j = 0; j < coins.length && i >= coins[j]; ++j) {

if (dp[i - coins[j]] + 1 < dp[i]) {

dp[i] = Math.min(dp[i], dp[i - coins[j]] + 1);

parents[i] = i - coins[j];

usedCoin[i] = coins[j];

int parent = money;

Map<Integer, Integer> result = new HashMap<>();

while (parent != 0) {

result.put(usedCoin[parent], result.getOrDefault(usedCoin[parent], 0) + 1);

parent = parents[parent];

System.out.println(result);

You might also like