Sunday, 26 December 2010

Contoh Program Java: Membaca Isi File Teks

import java.io.*;
public class baca_file {
public static void main(String arg[])
{
String file = "c://program1.txt"; //lokasi file
FileInputStream in = null;
try {
in = new FileInputStream(file);//
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
in.close();
}
} catch (IOException x) {
}
}
}

Thursday, 23 December 2010

Rangkuman Software Testing

Testing perangkat lunak bertujuan untuk memastikan bahwa perangkat lunak yang dibuat dapat beroperasi/ berfungsi sebagaimana yang diinginkan oleh customer. Selain itu, testing juga dapat dipandang sebagai kegiatan untuk menemukan errors yang mungkin masih tersembunyi. Testing umumnya membutuhkan resource antara 30-40% dari total usaha yang dilakukan dalam proyek. Untuk software yang berkaitan erat dengan nyawa banyak manusia, biaya testing bisa mencapai 3-5 kali lipat software biasa.

Contoh Program C++: OOP Rekening Bank

#include "iostream.h"
#include "string.h"
#include "stdlib.h"

struct deposit {
double nominal;
struct deposit *next;
};//
typedef struct deposit *simpul;
class rekening_bank {
protected:
char nama[20];
double saldo;
simpul deposits;
int nomer_rek;
public:
void transaksi()
{
double trans=0.0;
simpul baru=NULL;
cout<<"Saldo Anda : "<<saldo<<endl;
cout<>trans;
if (trans<0) //penarikan
{
if ((abs(trans)+5000) nominal = trans;
baru->next = NULL;
if (deposits == NULL)
deposits = baru;
else
{
baru->next = deposits;
deposits = baru;
}
}
else
cout<<"Saldo tidak mencukupi"<nominal = trans;
baru->next = NULL;
if (deposits == NULL)
deposits = baru;
else
{
baru->next = deposits;
deposits = baru;
}
}
};
void cetak()
{
simpul temp=deposits;
cout<<"Saldo Anda : "<<saldo<<endl;
cout<<"Rekap Transaksi :"<next)
if(temp->nominal < 0)
cout<<"Penarikan "<nominal)<<" + 5000 [biaya]"<<endl;
else cout<<"Setoran "<nominal<<endl;
}
};
class cek : public rekening_bank
{
private:
public:
cek(double d) {
cout<<"Rekening cek dibuat..."<<endl;
deposits=NULL;
saldo=d;
};
};
class tabungan : public rekening_bank
{
private:
float bunga;
public:
tabungan(double d)
{
cout<<"Rekening tabungan dibuat..."<<endl;
deposits=NULL;
saldo=d;
};
void hitung_bunga()
{
simpul baru=NULL;
cout<>bunga;
baru = (simpul) malloc(sizeof(struct deposit));
baru->nominal = saldo*bunga;
baru->next = NULL;
saldo = saldo + (saldo*bunga);
if (deposits == NULL)
deposits = baru;
else
{
baru->next = deposits;
deposits = baru;
}
cout<<"saldo sekarang = "<<saldo<<endl;
}
};
void main()
{
cek c(100000);
c.transaksi();
c.cetak();
c.transaksi();
c.cetak();
tabungan b(130000);
b.transaksi();
b.cetak();
b.hitung_bunga();
b.cetak();
//lebih baik dibuatkan menu program
}

Download Source Code

Wednesday, 22 December 2010

Contoh Program C++: Konversi Heksa-Desimal

#include "iostream.h"
#include "string.h"
#include "math.h"
#include "stdlib.h"
#include "stdio.h"

class hexa {
int decimal;
public:
hexa() {decimal=0;};
hexa(int d) {decimal=d;};//

Maaf, berhubung banyak karakter source code yang autodelete oleh WP, maka silahkan download source code.

Setelah sukses di-download, ubahlah ekstensi file dari .doc menjadi .cpp. Semoga bermanfaat :)

Monday, 20 December 2010

Contoh Program Java: Menjalankan Aplikasi Exe Lain

Aplikasi yang dibuat memakai bahasa Java bisa digunakan untuk memanggil/ menjalankan aplikasi executable lain. Misalnya membuka Notepad.exe, Microsoft Word, Aplikasi Game dsb. Syarat utamanya adalah harus diketahui lokasi/ path file .exe-nya. Library untuk menjalankan proses tersebut adalah java.io. Berikut contoh program untuk menjalankan Microsoft Word (mungkin file path di komputer Anda bisa jadi tidak sama):

import java.io.*;
/**
*
* @author bluejundi
*/
public class java_exec {
public static void main(String[] args) {
String path = new String("E:\\OFFICE\\OFFICE11\\winword.exe");
System.out.println("Menjalankan MS Word");
try {
Process theProcess = Runtime.getRuntime().exec(path);
} catch(IOException e)
{
System.err.println("Error on exec() method");
e.printStackTrace();
}
}
}

Contoh Program Java: Exception Handling

Exception adalah setiap kejadian yang abnormal, tidak diharapkan, dan kondisi yang tidak umum yang mungkin terjadi pada saat run-time program. Java exception handling digunakan untuk menangani kondisi error dalam sebuah program secara sistematis dengan melakukan tindakan yang diperlukan. Dengan adanya exception, maka program akan terhindar dari kondisi hang, atau mati dalam kondisi yang tidak wajar/ tidak jelas. Java exception dimulai dengan kata kunci throw dan ditangani dalam sebuah blok catch. Berikut contoh sederhananya:

public class java_exception {
public static void main(String[] args) {
int result = division(100,0); // Line 2
System.out.println("hasil : "+result);

result = division(100,2);
System.out.println("hasil : "+result);
}
public static int division(int totalSum, int totalNumber) {
int quotient = -1;
System.out.println("Komputasi Pembagian "+totalSum+" dengan "+totalNumber);
try
{ quotient = totalSum/totalNumber; }
catch(Exception e)
{ System.out.println("Pesan Exception : "+ e.getMessage()); }
finally
{ if(quotient != -1)
{ System.out.println("Finally Block Dijalankan");
System.out.println("hasil fungsi : "+ quotient); }
else
{ System.out.println("Finally Block DIjalankan. Terjadi Exception");
System.out.println("hasil fungsi : "+ quotient);
return quotient;
}
}
return quotient;
}
}

Monday, 10 May 2010

Contoh Program Stack Array Sederhana dalam Java

import java.io.*;
public class stack_array
{
private int maxsize; //penentu batas elemen stack maksimum
private double [] stackarray; //array untuk menyimpan stack
private int top; //indeks array
public void inisiasi(int s) //menentukan ukuran kapasitas stack
{
maxsize = s;
stackarray = new double [maxsize];
top = -1;
}
public void push(double data)
{
if (top>=maxsize-1)
System.out.println("Stack Penuh. "+data+" Tidak Bisa Masuk");
else
{
top++;
stackarray[top] = data;
System.out.println(data +" Masuk ke Stack");
}
}
public double pop()
{
double temp;
if (top>=0)
{
temp = stackarray[top];
System.out.println(temp + " Keluar dari Stack");
top--;
return (temp);
}
else
{
System.out.println("Stack Sudah Kosong");
return(-1);
}
}
public void view()
{
System.out.print("Isi Stack: ");
for(int i=0; i<=top; i++)
System.out.print(stackarray[i] + " ");
System.out.println();
}
public static void main(String[] args)
{
stack_array stack = new stack_array();
stack.inisiasi(3);
stack.push(3);
stack.push(4);
stack.push(2);
stack.view();
stack.push(5);
stack.push(1);
stack.pop();
stack.pop();
stack.view();
stack.pop();
stack.pop();
stack.pop();
stack.push(6);
stack.push(8);
stack.push(7);
stack.push(9);
stack.pop();
stack.view();
}
}

//Selamat mencoba ^_^

Tuesday, 22 December 2009

Contoh Program Java Swing Sederhana

Berikut ini adalah sebuah contoh implementasi library swing pada bahasa Java untuk membuat program dengan tampilan GUI (Graphical User Interface). Program sederhana ini adalah tentang penghitungan luas sebuah persegi. User diminta memasukkan data panjang dan lebar, kemudian akan dihitung dan ditampilkan luasnya setelah user menekan tombol "Hitung Luas". Project ini terdiri atas dua class yang terpisah, yaitu class persegi dan class hitung. Class persegi berfungsi untuk pengaturan tampilan antarmuka program, sedangkan class hitung berperan sebagai action yang akan dilakukan sebagai respon terjadinya penekanan tombol oleh user. Berikut adalah source code lengkapnya. Dan terima kasih atas kunjungannya. Semoga bermanfaat :)

isi class persegi:
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.Container;
import java.awt.FlowLayout;
class persegi {
public static void main(String args[]) {
//deklarasikan komponen2
JFrame frame;
Container contentPane;
JTextField tfpanjang, tflebar, tfluas;
JButton button;
FlowLayout layout;
frame = new JFrame();
//inisialisasi/ setting tiap2 komponen
frame.setTitle("Program Perhitungan Luas Persegi");
contentPane = frame.getContentPane();
tfpanjang = new JTextField("Masukkan panjang", 10);
tflebar = new JTextField("Masukkan lebar", 10);
tfluas = new JTextField("", 10);
button = new JButton("Hitung Luas");
//sambungkan button dgn perintah yg akan dijalankan
//kirimkan komponen2 ke action listener
button.addActionListener(new hitung(tfpanjang,tflebar,tfluas));
//rakitkan komponen2
contentPane.add(tfpanjang);
contentPane.add(tflebar);
contentPane.add(button);
contentPane.add(tfluas);
layout = new FlowLayout();
contentPane.setLayout(layout);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}

isi class hitung:
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
class hitung implements ActionListener {
JTextField tp,tl,tf;
hitung(JTextField tfp,JTextField tfl,JTextField tfL) {
//tampung data dari class container ke local
//by refference
tp = tfp;
tl = tfl;
tf = tfL;
}
public void actionPerformed(ActionEvent e) {
int temp,p,l;
//tampung isi textfield ke string,
//kemudian ekstrak data menjadi angka.
String sp = tp.getText();
p = Integer.parseInt(sp);
String sl = tl.getText();
l = Integer.parseInt(sl);
temp = p*l; //hitung luas persegi
//kirimkan hasil temp ke tf
//tf & tfL adalah identik, yaitu text field Luas
//di class pemanggil actionlistener
tf.setText(String.valueOf(temp));
}
}

Friday, 11 December 2009

Another Example about Insert and Delete Linked List

Below is another example about linked list implementation using C++ language. In this source code there are three basic operation described, those are insertion, deletion and show the nodes inside the linked list. You are recommended to modify some unpractical part of the code, one of it is insertion part. The insertion part will be better if you use an iteration to make it more efficient. Thanks for visiting :)

#include "iostream.h"
#include "string.h"
struct node{
char name [20];
int distance; //data
struct node *next;//pointer to point to the next node
};
typedef node * nodeptr;
void insert(nodeptr &head, int data, char nama []){
nodeptr temp;
temp=new node;
temp->distance=data;
strcpy(temp->name,nama);
temp->next=NULL;
if (head==NULL)
head=temp;
else{
temp->next=head;
head=temp;
}
};
char * delnode(nodeptr &head){

nodeptr temp;
char hold[20];

if (head!=NULL) {
temp=head;
strcpy(hold,temp->name);
head=temp->next;
delete temp;
return hold;}
else{
cout<<"Link list is empty"<<endl; return(0);}
}

void main()
{ nodeptr head=NULL, ptr;
int jarak;
char kota [20];
insert(head, 15, "surabaya");
insert(head, 12, "mojokerto");
insert(head, 23, "lamongan");
cout<>kota;
cout<>jarak;
insert(head,jarak,kota);
//show the begining
for(ptr=head; ptr!=NULL; ptr=ptr->next)
cout<distance<<" "<name<<endl;
//delete the front node
strcpy(kota,delnode(head));
cout<<"deleted = " <<kota<next)
cout<distance<<" "<name<<endl;
}

Thursday, 8 October 2009

Array of Object: Program Bank Account

Berikut ini adalah contoh program bank account sederhana yang menggabungkan konsep array/ larik dengan konsep object pada OOP. Dengan integrasi ini, program mampu menyimpan lebih dari satu object yang mempunyai induk class yang sama, yaitu bank account. Untuk navigasi dari object satu ke object yang lain digunakan data dari nomer rekening yang tersimpan dalam array.

#include "iostream.h"
class bank_account
{
private:
int pin;
long int no_rekening, no_rek_tujuan;
char nama [20];
char alamat [30];
long int uang;
long int saldo;
char tagihan [10];
public:
bank_account() //default constructor
{ cout << "Constructor executed..." << endl;
saldo = 0;
pin = 0;
}
bank_account(int x, int y = 1000) //parameterized cons
{ saldo = x;
pin = y;
}
bank_account(bank_account &ba)
{ saldo = ba.saldo;
pin = ba.pin;
}
~bank_account()
{ cout << "Destructor executed..." << endl;
}
void rek_baru()
{ cout <> nama;
cout <> alamat;
cout <> no_rekening;
cout <> pin;
cout <> saldo;
cout << "Rekening Anda sudah aktif\n";
};
void setoran()
{ cout <> uang;
saldo = saldo + uang;
cout << "Saldo Anda sekarang adalah = " << saldo << endl;
};
void penarikan()
{ cout <> uang;
if (saldo >= uang)
{ saldo = saldo - uang;
cout << "Saldo Anda sekarang adalah = " << saldo << endl;
}
else cout << "Saldo tidak mencukupi\n";
};
void cek_saldo()
{ cout << "Saldo Anda = " << saldo << endl;
}
long int get_rek()
{ return(no_rekening);
}
};
void main()
{
bank_account nasabah[5];
int menu, nomer, jumlah_nasabah = 0;

do
{
cout << "\nMENU\n1. Buat Rekening\n2. Setoran\n3. Penarikan\n";
cout <> menu;
switch (menu)
{
case 1: nasabah[jumlah_nasabah].rek_baru();
jumlah_nasabah++; break;
case 2: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
break;
case 3: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
break;
case 4: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
}
}while (menu < 5);
cout << "bye bye...\n";
}