Sabtu, 23 April 2011

PENGERTIAN JAVA DAN SEJARAH PERKEMBANGAN JAVA


Pengertian Java
            Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Dikembangkan oleh Sun Microsystems dan dirilis tahun 1995. Java berbeda dengan JavaScript. JavaScript adalah bahasa scripting yang digunakan oleh web browser.

Sejarah perkembangan Java
Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).
Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.
Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.
Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).

Program itertif dan rekursif dalam java

import jeliot.io.*;

public class MyClass {
   
    public static double iteratif(double x){
        double jumlah=0.0;
        for(int i=1; i<=x; i++){
            if(i % 2 == 0) jumlah=jumlah-1.0/i;
            else jumlah=jumlah+1.0/i;
        }
        return jumlah;
    }
   
    public static double rekursif(double x){
        double jumlah=0.0;
        if(x==1) return 1;
        else     if(x % 2 == 0) jumlah= -1.0/x + rekursif(x-1);
                else jumlah= 1.0/x + rekursif(x-1);
           return jumlah;
    }
   
    public static void main() {
    double x;
   
    MyClass a = new MyClass();
    System.out.print("Masukkan batas bilangan : ");
    x=Input.readDouble();
    System.out.println("Hasil iteratif : " + iteratif(x));
    System.out.print("Hasil rekursif : " + rekursif(x));
   
   }
}

Program iteratif menggunakan Rumus 1-(1/2)+(1/3)-(1/4)+...+(1/n)

 methode rekursif adalah perulangan dengan menggunakan teknik memanggil methode itu sendiri. reskursif tidak mengunakan teknik perulangan iteratif (misalnya for atau while).


#include<iostream.h>
#include<conio.h>

class hitung
    {
    public:
     int proses();
     void input();
    private:
     int n;
     float rumus,jumlah,total;
    };

    void hitung::input()
    {
     cin>>n;
     cout<<endl;
    }
    int hitung::proses()
    {
     jumlah=0;
     total=0;
     rumus=-1;

     for(int j=1; j<=n; j++)
     {
     rumus=(rumus*(-1));
     total=rumus/j;
     jumlah+=total;
     if(j==1)
     cout<<"("<<total<<")";
     if(j>1)
     cout<<"+("<<total<<")";
     }
    cout<<endl<<endl<<"hasil penjumlahan deret = "<<jumlah;
    return jumlah;
    }

    int main()
    {
    cout<<"program sederhana menghitung jumlah dari rumus 1-(1/2)+(1/3)-(1/4)+...+(1/n)"<<endl<<endl;
    cout<<"tentukan nilai n : ";
    hitung deret;
    deret.input();
    deret.proses();
   
    return 0;
    }

Rabu, 20 April 2011

Algoritma Iteratif dan Rekursif


Algoritma iteratif
- Teknik Iteratif merupakan suatu teknik pembuatan algoritma dengan pemanggilan procedure  beberapa kali atau hingga suatu kondisi tertentu terpenuhi.
- Tidak ada variabel lokal baru
- Program tidak sederhana
- Menggunakan perulangan for dan while

Bentuk fungsi iteratif :

#include <cstdlib>
#include <iostream>
using namespace std;
int jumlah(int n) {
int hasil = 0;
for (int i=0; i<n; i=i+2)
hasil = hasil + i;
return hasil;
}                
void cetak(int n) {
for (int i=0; i<n; i=i+2)
cout << i << ” “;
}
int main(int argc, char *argv[])
{
int n = 10;
cout << jumlah(n);
cetak(n);
system(“PAUSE”);
return EXIT_SUCCESS;
}



Algoritma rekursif
- Teknik Rekursif merupakan salah satu cara pembuatan algoritma dengan  pemanggilan procedure atau function yang sama.
- Ada variabel lokal baru.
- Program menjadi lebih sederhana.
- Menggunakan perulangan if else.

bentuk rekursif :
#include <cstdlib>
#include <iostream>
using namespace std;
int jumlah(int n) {
if(n==0) return (0);
else return (n-2 + jumlah(n-2));
}                                 
void cetak(int n) {
if(n!=0){
cetak(n-2);
cout << n-2 << ” “;
}
}
int main(int argc, char *argv[])
{
int n = 10;
cout << jumlah(n);
cetak(n);
system(“PAUSE”);
return EXIT_SUCCESS;
}