Calendar

Jumat, 14 Desember 2012

Program Kurs pada Bank


Jadi disini kita membuat sebuah program yang bisa menukarkan sesuai dengan kurs yang berlaku. SIlahkan dicoba. . 

import java.util.LinkedList;

public class bank{
 public static void main(String[] args){
        rekening baru = new rekening(5000000,"IDR");
        baru.setKurs("JPY");
        System.out.println("Saldo anda : "+baru.getKurs()+" "+baru.getSaldo());
  baru.menyetor(10,"USD");
  System.out.println("Saldo anda : "+baru.getKurs()+" "+baru.getSaldo());
  baru.menarik(50);
  System.out.println("Saldo anda : "+baru.getKurs()+" "+baru.getSaldo());
 }
}

class rekening{
 private double saldo;
 private String kurs;
 private double saldoMinimum;
    private mataUang tabelMataUang = new mataUang();
 
 public rekening(){
  saldo = 0;
  saldoMinimum =300000;
  kurs = "IDR";
 }
 
 public rekening(double saldoAwal){
  saldo = saldoAwal;
  saldoMinimum =300000;
  kurs = "IDR";
 }
 
 public rekening(double saldoAwal, String kursAwal){
  saldo = saldoAwal;
  saldoMinimum = tabelMataUang.konversi(300000, "IDR", kursAwal);;
  kurs = kursAwal;
 }
 
 public double getSaldo(){
  return saldo;
 }
 
 public String getKurs(){
  return kurs;
 }
 
 public void setKurs(String kursBaru){
        saldo = tabelMataUang.konversi(saldo, kurs, kursBaru);
  saldoMinimum = tabelMataUang.konversi(saldoMinimum, kurs, kursBaru);
  kurs = kursBaru;
 }
 
 public double getSaldoMinimum(){
  return saldoMinimum;
 }
 
 public void menyetor(double jumlah){
  saldo += jumlah;
 }
 
 public void menyetor(double jumlah, String kursAwal){
  saldo += tabelMataUang.konversi(jumlah, kursAwal, kurs);
 }
 
 public void menarik(double jumlah){
  if((saldo-jumlah) > saldoMinimum){
   saldo -= jumlah;
  }else{
   System.out.println("Tidak dapat menarik uang sejumlah "+jumlah+" Karena saldo anda tidak mencukupi");
  }
 }
 
 public void menarik(double jumlah, String kursAwal){
  if((saldo-tabelMataUang.konversi(jumlah, kursAwal, kurs)) > saldoMinimum){
   saldo -= tabelMataUang.konversi(jumlah, kursAwal, kurs);
  }else{
   System.out.println("Tidak dapat menarik uang sejumlah "+kursAwal+" "+jumlah+" Karena saldo anda tidak mencukupi");
  }
 }
}

class unitKurs{
 public String mataUang;
 public double value;
 public unitKurs(String namaMataUang, double nilai){
  mataUang = namaMataUang;
  value = nilai;
 }
}

class mataUang{
    private LinkedList<unitKurs> uang = new LinkedList<>();
    public mataUang(){
        uang.add(new unitKurs("IDR", 1));
        uang.add(new unitKurs("USD", 9500));
        uang.add(new unitKurs("JPY", 100));
        uang.add(new unitKurs("GBP", 15000));
        uang.add(new unitKurs("MYR", 3000));
        uang.add(new unitKurs("AUD", 8000));
        uang.add(new unitKurs("SGD", 7000));
    }
    public double konversi(double nilai, String dari, String ke){
        return (nilai*cariMataUang(dari)/cariMataUang(ke));
    }
    public double cariMataUang(String kode){
        double hasil=0;
        for(int i=0;i<uang.size();i++){
            if(uang.get(i).mataUang.equalsIgnoreCase(kode)){
                hasil = uang.get(i).value;
                break;
            }
        }
        return hasil;
    }
}

Minggu, 09 Desember 2012

Membuat Program Ascending dan Descending pada Java


Ini semacam program untuk membuat ascending dan descending ketika kita menginputkan suatubilangan acak. Silahkan dicoba di rumah.


import java.io.*;
import java.util.Scanner;

public class nrp5212100173 {

public static int[] A = new int[10];

public static void main(String[] args) {

  Scanner s = new Scanner(System.in);

   int a;


 
   System.out.println();
   System.out.print("Ada berapa bilangan yang akan dimasukkan bilangan :");
  a = s.nextInt();
   int [] bilangan= new int [a];

String cmd = "";
int x;
boolean KELUAR = false;

BufferedReader inputUser = new BufferedReader(new InputStreamReader(System.in));

for (int i = 0; i < 10; i++) {
try {

System.out.print("Bilangan ke - " + (i + 1) + " : ");
cmd = inputUser.readLine();
x = Integer.parseInt(cmd);
A[i] = x;
System.out.println("");
} catch (Exception e) {
System.out.println("angka yang anda masukan salah");
}
}
System.out.println("Sebelum di urutkan :");
printA();

acsending();
System.out.println("Acsending :");
printB();

descending();
System.out.println("Descending :");
printA();
}

public static void printB() {
for (int i = 0; i < 10; i++) {
System.out.print("\t" + A[i]);
}
System.out.println("");

}

public static void printA() {
for (int i = 0; i < 10; i++) {
System.out.print("\t" + A[i]);
}
System.out.println("");
}

public static void acsending() {
for (int i = 1; i < 10; i++) {
for (int j = i; j < 10; j++) {
if (A[i - 1] > A[j]) {
int dummy = A[i - 1];
A[i - 1] = A[j];
A[j] = dummy;
}
}
}
}

public static void descending() {

for (int i = 1; i < 10; i++) {
for (int j = i; j < 10; j++) {
if (A[i - 1] < A[j]) {
int dummy = A[i - 1];
A[i - 1] = A[j];
A[j] = dummy;
}
}
}
}
}

Program untuk Menentukan Bilangan Sempurna


ini salah satu source code terpendek yang saya kerjakan. Tapi dijamin gak cmpile eror kok. Ini semacam code untuk menentukan apakah sebuah bilangan itu bilangan sempurna atau bukan. Silahkan mencoba. Dan jangan lupa comment ya. . :D



import java.util.Scanner;

class nrp5212100107 {
public static void main(String [] agrs) {
Scanner sc = new Scanner (System.in);
int c=0;
int b;

System.out.print(" Masukkan bilangan ");
int a = sc.nextInt();

for (b=1;b<a;b++){
if (a%b == 0) {
c += b;
}
}
if (c==a) {
System.out.println ("bilangan" +a+" adalah bilangan sempurna ");
} else {
System.out.println ("bilangan" +a+" adalah bukan bilangan sempurna");
}
}
}

Membuat Program untuk Mencari KPK dan FPB dalam Java

ini selanjutanya untuk mencari KPK dan FPB dalam bahasa java. Check it out. .



import java.util.Scanner ;

public class nrp5212100107 {

public static void main (String[] args) throws Exception{

Scanner sc = new Scanner (System.in) ;


System.out.println(" ********************************* ") ;
System.out.println(" *Masukkan bilangan bulat pertama* ") ;
System.out.println(" ********************************* ") ;

int a = sc.nextInt();


System.out.println(" ******************************* ") ;
System.out.println(" *Masukkan bilangan bulat kedua* ") ;
System.out.println(" ******************************* ") ;

int b = sc.nextInt();

System.out.println(" ************************* " );
System.out.println(" *KPK dari " + a + " dan " + b + " adalah* " );
System.out.println(" ************************* " );

int c = 0;

for(int x=1;x<=b;x++) {

c = (c + a);

if(c % b==0) {

System.out.println(c);

break;

}
}


System.out.println(" ************************* ");
System.out.println(" *FPB dari " + a + " dan " + b + " adalah* ");
System.out.println(" ************************* ");

int d;

d = a % b;


while ( d != 0) {

a = b;

b = d;

d = a % b;
}

System.out.println(b);

}
}

Perkalian Bilangan Berbasis 8 dan Mengubahnya ke Bilangan Biner


Ini program ketigaku. Well. . Monggo dicoba. . komen ya kalo ada yang salah. . 


import java.math.BigInteger;
import java.util.Scanner;

public class praktikum4{
	public static void main(String[] argv){
		String bilangan1, bilangan2;
		System.out.print("Masukkan bilangan pecahan berbasis 8 pertama : ");
                bilangan1 = getInput();
                System.out.print("Masukkan bilangan pecahan berbasis 8 kedua : ");
                bilangan2 = getInput();
                String hasil = Double.toString(octalToDecimal(bilangan1)*octalToDecimal(bilangan2));
                System.out.println(hasil);
                toBinary(hasil);	
	}
        
        public static void toBinary(String input){
            if(input.indexOf("E")==-1){
                String bulat = input.substring(0, input.indexOf("."));
                String pecahan = input.substring(input.indexOf(".")+1, input.length());
                if(Double.parseDouble("0."+pecahan)>0){
                    System.out.println("Hasil kali bilangan dalam biner adalah:");
                    System.out.println("Bilangan: "+new BigInteger(bulat.concat(pecahan)).toString(2));
                    System.out.println("Mantisa: "+Integer.toBinaryString(-1*pecahan.length()));
                }else{
                    System.out.println("Hasil kali dalam biner adalah: "+new BigInteger(bulat).toString(2));
                }
            }else{
                String bulat = input.substring(0, input.indexOf("."));
                String pecahan = input.substring(input.indexOf(".")+1, input.indexOf("E"));
                Integer mantisa = new Integer(input.substring(input.indexOf("E")+1,input.length()));
                System.out.println("Hasil kali bilangan dalam biner adalah:");
                System.out.println("Bilangan: "+new BigInteger(bulat.concat(pecahan)).toString(2));
                System.out.println("Mantisa: "+Integer.toBinaryString((mantisa-pecahan.length())));
            }
        }
       
        public static String getInput(){
            String input="";
            Scanner key = new Scanner(System.in);
            boolean valid;
            do{
                input = key.nextLine();
                if(input.matches("([0-7]*\\.[0-7]*)")){
                    valid = true;
                }else{
                     System.out.print("Input tidak valid, coba masukkan lagi (Ex. 7.0): ");
                    valid = false;
                }          
            }while(!valid);
            return input;
        }
        
        public static double octalToDecimal(String input){
            double hasil=0;
            int power = 0;
            for(int i=input.indexOf(".")-1;i>=0;i--){
                hasil += (Double.parseDouble(""+input.charAt(i))*Math.pow(8, power));
                power++;
            }
            power = -1;
            for(int i=input.indexOf(".")+1;i<input.length();i++){
                hasil += (Double.parseDouble(""+input.charAt(i))*Math.pow(8, power));
                power--;
            }
            return hasil;
        }
		
        
}

Membuat Program KTP dengan Java

Ini semacam Program KTP. Jadi kalian tinggal menginput nomor KTP, nah, nantinya, komputer yang akan memproses umur kalian, jenis kelamin dan tanggal lahir kalian. Silahkan dicoba, maaf bila ada yang salah, karena saya juga masih dalam proses belajar. .


import java.util.Scanner;
import java.util.regex.*;

class ktp{
	public static void main(String [] agrv){
		Scanner sc = new Scanner(System.in);
	
		String ktp, tgl, bln, thn;
		Integer umr, jns;
		Integer pjg;
		boolean loop = true;
		System.out.print("Masukkan no KTP:");
		
		/* Bagian ini adalah bagian Error checking. sebuah input dikatakan error jika:
		   1. panjang input kurang dari 18 karakter
		   2. Input mengandung karakter lain selain spasi dan angka.
		   3. karakter spasi tidak ditemukan di karakter ke 6 dan 13.
		   Error checking akan meminta anda terus memasukkan input sampai input anda memenuhi format input yang benar
                */

	 	do{	
			ktp = sc.nextLine();
			pjg = ktp.length();

			if((pjg == 18)&&(ktp.indexOf(" ") == 6)&&(ktp.lastIndexOf(" ") == 13)){
				if(ktp.substring(0,6).matches("([0-9]*)")&&ktp.substring(7,13).matches("([0-9]*)")&&ktp.substring(14,18).matches("([0-9]*)")){
					loop = false;
				}else{
					loop = true;
					System.out.print("Maaf input anda salah, coba masukkan lagi: ");
				}
			}else{
				loop = true;
				System.out.print("Maaf input anda salah, coba masukkan lagi: ");
			}
		}while(loop);
		
		/* Akhir bagian error checking */


		tgl = ktp.substring(7, 9);
		bln = ktp.substring(9, 11);
		thn = "19"+ktp.substring(11, 13);
		jns = new Integer(tgl);

		System.out.print("Tanggal lahir: ");
		if(jns>40){
			if((jns-40)<10){
				System.out.print("0"+(jns-40));
			}else{
				System.out.print(jns-40);
			}
		}else{
			System.out.print(tgl);
		}

		System.out.println("-"+bln+"-"+thn);
	
		umr = 2012 - new Integer(thn);	
		System.out.print("Umur: ");
		System.out.println(umr);
		System.out.print("Jenis kelamin: ");
	
		if(jns>40){
			System.out.println("perempuan");
		}else{
			System.out.println("laki-laki");
		}
	
	}
}

Membuat Program Perkalian dengan Java

Well. . ini adalah salah satu mata kuliahku.
Jadi kita semacam buat program perkalian dengan source code-nya java
Monggo dicoba. .


import java.util.Scanner;

class PerkalianJava {

public static void main (String[] argc) {


System.out.println("");

System.out.println("Masukin operand pertama : ") ;

Scanner scan = new Scanner (System.in) ;

int t1 = scan.nextInt ();


System.out.println("");

System.out.println("Masukin operand kedua : ") ;

int t2 = scan.nextInt ();

int t3 = t1*t2;


System.out.println("Hasil kalinya adalah : ") ;

System.out.println(t3);

}

}