• Kalender

    January 2012
    M T W T F S S
    « Nov    
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031  
  • Gravatar

Smadav Rev 7.2

Pada Rev. 7 kali ini Smadav telah disempurnakan untuk menjadi jauh lebih cepat dan lebih ringan dalam mendeteksi dan mengamankan komputer Anda dari ancaman virus di Indonesia. Fitur-fitur baru yang ditambahkan seperti Smad-Turbo (Scanning 10x lebih cepat), Smad-Theme (Mengganti warna tema), dan Smad-Ray (Otomatis scan flashdisk sangat cepat). Ini semua membuat Smadav menjadi salah satu dari antivirus tercepat dan paling ringan sedunia, sehingga Smadav tetap dapat digunakan pada komputer-komputer dengan spesifikasi rendah sekalipun. Selain itu juga banyak perbaikan yang dilakukan pada tampilan Smadav secara keseluruhan agar Smadav semakin mudah dan praktis digunakan.

Pada Rev. 7 ini Smadav juga menambahkan database pengenalan virus-virus baru yang banyak menyebar di Indonesia. Perkembangan virus lokal saat ini semakin berkurang dan tidak seaktif bulan-bulan sebelumnya. Mungkin ini karena Smadav yang sudah banyak digunakan pengguna-pengguna komputer di Indonesia. Jadi, virus lokal di Indonesia sekarang tinggal sedikit lagi untuk menuju kepunahan.

Download here…

Game Symbian

Need For Speed Underground 3D For Nokia 60 Series

3650,6600,7650,7600,3620,3660,6680,
6260,6630,7600,6670,7610,N-Gage,
6680,6681

Download Zip File

Rally PRO CONTEST For Nokia 60 Series


3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,7610,N-Gage

Download Zip File

Metal Bluster 2 For Nokia 60 Series

3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,7610,N-Gage

Download Zip File

Mosquitos For Nokia 60 Series

3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,7610,N-Gage

Download Zip File

MoviStar Racing 3D For Nokia 60 Series


3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,7610,N-Gage

Download Zip File

Fantom Overdrive For Nokia 60 Series Special Requested By Ma Best Friend Richard James

3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,N-Gage

Download Zip File

Movistar Rally 3D Amazing Game For Nokia 60 Series

3650,6600,7650,7600,3620,3660,
6260,6630,7600,6670,N-Gage

Download Zip File

Sky Force
For Nokia 60 Series Special
Requested By Richard James


3650,6600,7650,7600,3620,3660,
6260,6630,7600,N-Gage

Download Zip File

3D Moto Racer

For Nokia 60 Series


3650,6600,7650,7600,3620,3660,
6260,6630,7600,N-Gage

Download Zip File

Game Action

Silent Hill 2

Silent Hill 2 merupakan lanjutan dari game sillent hell 1 (yang mobile) ceritanya masih tetap sama, gaya mainnya tuh kaya’ main klik gitu, pokoknya seru deh!!!!

DOWNLOAD

FIFA 2009

YAAH KAYANYA GAME YANG SATU INI GA PERLU DIJELASIN LAGI DEH, BAGI YANG MANIAK BOLA, HARUS PUNYA YANG SATU INI DI HAPENYA!!!!!

DOWNLOAD

HEROES LORE : wind of soltia

 

Cerita dimulai dari ronin, seorang pemuda biasa, dan reah, seorang refiner, mereka telah berpisah selama 3 tahun, tiba-tiba reah pulang dan terjadi bencana

DOWNLOAD

Might and magic II 240X320 by harajuku’s request

jalan ceritanya keren nih, tentang seorang warrior yang ditemenin sma seorang penyihir, melawan serangan seekor naga!!! patut dicoba!!!

DOWNLOAD

GOD OF WAR BETRAYAL

Tahu game god of war kan???? nah, ini versi mobilenya, keren banget lho, n tetep sadis abizzzzz!!!!!!! bisa juga membunuh monster pake style, pokoknya keren deh!!!!!

DOWNLOAD

Soul Of Darkness

game mobile kembarannya castlevania symphony of the night, kisahnya ya… tentang vampire hunter, yang mencari kekasihnya yang diculik (klasik banget!!)

DOWNLOAD

CRASH THE TITAN

versi game mobile dari crash bandicoot!! seru! ayo download!!!

DOWNLOAD

ALPHA WING 2

pernah main sky force?? nah ini yang versi javanya!!! ayo download!!

DOWNLOAD

Prince of persia zero 240×320

DOWNLOAD

Saint Row

DOWNLOAD

Aplikasi GPS

Kebanyakan aplikasi GPS seperti Garmin Mobile XT, Route66, Tom Tom Navigator, Navigon, dll dikhususkan untuk ponsel-ponsel yang memiliki sistem operasi spesifik seperti Windows Mobile, Symbian atau Android. Lalu bagaimana dengan ponsel berbasis Java? Ini dia beberapa yang gua temukan :

1. TrackMate

GPS yang lumayan memukau ini memiliki kemampuan untuk menandai tujuan serta melihat rincian lokasi kita, kecepatan, kecepatan maksimal, dll. Kita juga dapat mengirim penanda pada peta, yang dilambangkan oleh bendera merah kecil agar kita dapat berbagi lokasi dengan teman atau keluarga melalui web atau ponsel.
Download now…

2. Buddyway

Buddyway adalah teman sempurna bagi yang hobby-nya traveling. Buddyway akan menuntun kita mencari lokasi secara rinci, mengetahui kecepatan perjalanan tiap lokasi, perkiraan waktu yang dibutuhkan antara 2 interval, maksimal perubahan pada kecepatan, total waktu perjalanan, dll. Kita juga dapat berbagi pengalaman dari perjalanan kita dengan mengupload peta kita melalui url khusus yang dapat dikirim kepada teman-teman.
Download now…

3. Amaze GPS

GPS ini memiliki banyak fitur fungsional dan juga pilihan akses melalui jaringan GPRS.
Download now…

4. Track My Journey

Track My Journey adalah aplikasi navigasi mobile berbasis Java yang memiliki fungsi untuk menampilkan peta, pelacakan lokasi serta dapat pula untuk merencanakan rute perjalanan.
Download now…

5. We-travel

GPS ini memiliki ciri khusus dengan menampilkan peta terlebih dahulu secara meluas, sehingga kita bisa membuat rute navigasi sendiri secara rinci. GPS ini agak rumit untuk diikuti karena banyaknya hal-hal teknis yang musti diperhatikan secara seksama.
Download now…

6. Google Maps

Ini adalah aplikasi GPS paling populer saat ini karena hampir semua ponsel yang memiliki GPS menyertakan aplikasi ini sebagai dasar acuannya.
Download now…

7. GPS Viewer

GPS ini mampu menunjukkan lokasi kita sekarang, kecepatan gerak kita, serta arahnya hanya dalam satu tampilan saja. Lumayan praktis.
Download now…

8. Nav4All

GPS ini mendukung beberapa bahasa dan terbukti mampu memberikan fitur pemetaan secara akurat di beberapa negara seperti Selandia Baru, Amerika Utara, Indonesia, Brazil, Afrika Selatan, Eropa, Cina, dll.
Download now…

9. eGPS Tracker

Ini adalah aplikasi pelacakan GPS yang dapat disimpan dan diakses dari ponsel untuk kemudian mengirim file hasilnya melalui komputer untuk pemetaan lebih lanjut.
Download now…

10. Map My Tracks

Map My Tracks mampu membaca posisi kita secara real-time melalui peta yang tersedia, misalnya kita sedang mendaki gunung, berselancar, dll. Hasil dari pembacaan itu dapat dikirimkan sebagai info tentang aktivitas kita kepada teman-teman kita.
Download now…

Opera Mini 5

opera-5 opera-mini-5

OperaMini 5 Beta ini mengusung versi terbaru dari Operamini 4. Dengan update dari versi sebelumnya, Operamini 5 ini sudah support tabbed page. Jadi saat ingin browsing beberapa website sekaligus pun sudah bisa.

Dalam Beta Version ini, hampir semua fitur andalan Opera Mini telah bisa di nikmati. Untuk handphone Java , Blackberry ada installer nya sendiri.

Silakan DOWNLOAD file JAR nya dsini untuk JAVA version.

Nimbuzz

Hingga saat ini, tampilan tombol menu Nimbuzz untuk Symbian menjadi pusat titik koneksi untuk semua teman, fitur dan pengaturan.

Versi 2.0 memiliki sebuah antarmuka dan fitur-fitur baru. Download sekarang juga!

Anda akan melihat desan baru dengan banyak Tab. Dapat berganti dengan cepat dari fitur kegemaran Anda yang satu ke yang lainnya dengan jalan browsing melalui 4 tab: Nimbuzz (daftar – teman), Chat, Panggilan Telpon, dan pesan.

Namun masih banyak hal lainnya! Saya memiliki daftar yang panjang akan pembaharuan pada versi ini:

  • Anda dapat mengurutkan teman Anda berdasarkan favorit Anda. Orang yang Anda sering hubungi, dapat muncul pada bagian atas daftar teman Anda.
  • Memilih Nada Panggil kegemaran untuk nada chat, pesan, dan telpon.
  • Langsung dapat membuat panggilan SkypeOut dari tab ponsel; selalu amati kredit SkypeOut Anda saat ini dan nama Anda yang tertera di tab/layar.
  • Dengan menekan tombol “hang-up” warna merah, kini berfungsi menyembunyikan Nimbuzz.

Chats - Di akses dengan cepat dari sebuah tab terpisah; scan pesan baru di chat, chat grup, dan chatroom. Mengaktifkan pesan chat yang tampil menggunakan tab Nimbuzz-style (dengan predikat username) dan di tampilan rangkuman.

Groups - Menampilkan satu kontak grup satu persatu. Pindah dengan cepat antara grup satu ke lainnya dengan mengklik bagian atas grup aktif . Dapat mulai konfrensi

SkypeOut – Melakukan panggilan SkypeOut dari tab panggilan telpon; selalu amati kredit SkypeOut saat itu dan username Anda.

Profiles - Kini termasuk lokasi. Lihat tampilan pembesaran dan pengecilan gambar! Lihat lokasi teman Anda dengan menggerakan tab lokasi di profil (hanya tersedia bagi pengguna Nimbuzz dengan ponsel yang mendukung fitur ini).

IM Buddies: Masukan kontak, urutkan (demikian juga tampilan grup baru), tunjukan teman yang Offline, dan pengaturan umum

Settings - Pengaturan layar baru, penyusunan yang lebih intuitif.

Phone Calls – Lihat dengan jelas operator (VoIP) yang Anda gunakan untuk melakukan panggilan ke telpon fix dan ponsel. Pindah dari satu operator ke lainnya atau jenis panggilan satu ke lainnya. Melakukan panggilan ke kontak yang ada di ponsel Anda atau dengan menekan nomor telpon. Kirim SMS undangan gratis ke teman Anda!

Peningkatan kinerja SIP - Dukungan penyedia SIP telah meningkat dan masalah jaringan/firewall telah terkurangi. Selain itu, daya tahan batere telah ditingkatkan ketika Anda menggunakan ponsel untuk melakukan panggilan SIP.

Pengaturan Sambungan Baru -Memulai Nimbuzz tanpa harus memilih titik akses. Atur titik akses standar Anda dan pilih ke bagian otomatis yang telah terkonfigurasi ke akses Wi-Fi.

Seperti biasa, beritahu kami pendapat Anda! Kami ingin mendengar masukan dari Anda.

Download Nimbuzz untuk Symbian baru ini disini dan sebarkan ke teman-teman Anda!

Gimpshop

Jika anda terbiasa menggunakan Photoshop dan ingin mencari alternative software yang open source, tidak ada salahnya anda mencoba Gimpshop. Gimpshop adalah GNU Image Manipulation Program yang dibuat oleh Scott Moschella. Dibuat berdasarkan software GIMP yang dirubah menu, tampilan dan lainnya sehingga mirip dengan Photoshop dan mempermudah pengguna yang terbiasa dengan Photoshop.

Tidak semua fitur pada Photoshop tersedia pada Gimpshop karena base projectnya adalah GIMP project, namun GIMP sendiri merupakan software yang cukup handal untuk software jenis ini. Bagi yang tidak biasa menggunakan GIMP dan lebih nyaman menggunakan Photoshop, tidak ada salahnya mencobanya. Bagi pengguna ubuntu, bila ingin mencobanya dapat mendownload Gimpshop 2.2.11 deb (32 bit).

Untuk lebih jelasnya tentang Gimpshop, bisa melihat screenshoot perbandingannya bila dibandingkan dengan Photoshop. Seluruh tampilan menunya tidak berbeda.

Pemrogaman C++

OPERASI MASUKAN DAN KELUARAN

Memasukkan data dan menampilkan data/informasi merupakan tindakan yang sering dilakukan dalam pemrograman. Penampilan data/informasi biasanya ditujukan ke piranti layar (monitor), sedangkan pemasukan data biasanya dilakukan melalui keyboard.

MENAMPILKAN DATA/INFORMASI KE LAYAR

Untuk keperluan penampilan data/informasi, Turbo C menyediakan sejumlah fungsi, diantaranya adalah PRINTF(), PUTS() dan PUTCHAR()

PRINTF()

Merupakan fungsi yang paling umum digunakan dalam menampilkan data. Berbagai jenis data dapat ditampilkan ke layar dengan fungsi ini.

Bentuk penulisan : printf(“string kontrol”, argumen1, argumen2, …);

  • § String kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format seperti %d, %f. Penentu format dipakai untuk memberi tahu kompiler mengenai jenis data yang akan ditampilkan
  • § Argumen adalah data yang akan ditampilkan ke layar. Argumen ini dapatr berupa variabel, konstanta atau ungkapan

Contoh :

#include<stdio.h>

main()

{

int nilai1=20;

float nilai2=2000.0;

clrscr();

printf(”Abad ke-%d\n”, nilai1);

printf(”Abad ke-%3d\n”, nilai1);

printf(”Abad ke-%7d\n”, nilai1);

printf(”Tahun %f\n”, nilai2);

printf(”Tahun %8.3f\n”, nilai2);

printf(”Tahun %8.0f\n”, nilai2);

printf(”Tahun %-8.0f\n”, nilai2);

getch();

}

Hasil :

Abad ke-20

Abad ke- 20

Abad ke- 20

Tahun 2000.000000

Tahun 2000.000

Tahun 2000

Tahun 2000

PUTS()

Fungsi ini digunakan khusus untuk menampilkan data string ke layar. Sifat fungsi ini, string yang ditampilkan secara otomatis akan diakhiri dengan \n (pindah baris). Dibandingkan dengan printf(), perintah ini mempunyai kode mesin yang lebih pendek.

Contoh :

#include<stdio.h>

main()

{

clrscr();

puts(”kucoba dan kucoba”);

puts(”kini ku mulai memahaminya”);

getch();

}

Hasil :

kucoba dan kucoba

kini ku mulai memahaminya

PUTCHAR()

Digunakan khusus untuk menampilkan sebuah karakter ke layar. Penampilan karakter tidak diakhiri dengan perpindahan baris, misalnya :

putchar(‘A’); sama dengan printf(“%c”, A);

Contoh :

#include<stdio.h>

main()

{

clrscr();

putchar(’A’);

putchar(’B’);

putchar(’C’);

getch();

}

Hasil :

ABC

MEMASUKKAN DATA DARI KEYBOARD

Data dapat dimasukkan lewat keyboard saat eksekusi berlangsung. Fungsi yang digunakan diantaranya adalah : scanf(), getch(), dan getche().

SCANF()

Merupakan fungsi yang dapat digunakan untuk memasukkan berbagai jenis data. Bentuk scanf() sesungguhnya menyerupai fungsi printf() yang melibatkan penentu format. Bentuk penulisan : scanf(“string kontrol”, daftar argumen);

Hal-hal yang perlu diperhatikan dalam pemakaian scanf yaitu :

1. scanf memberi pergantian baris secara otomatis, artinya Anda tidak perlu memberi \n untuk berpindah ke baris berikutnya.

2. scanf memakai penentu format, tetapi tidak memerlukan penentu lebar field. Contoh yang salah : scanf(“10.2f”,&gaji);

3. Variabel yang dipakai di dalam scanf harus didahului dengan operator alamat (&).

Contoh :

/* Program Hitung Gaji */

#include<stdio.h>

main()

{

float gaji,tunj,GAJI;

clrscr();

printf(”Masukkan Gaji Pokok = Rp. “);

scanf(”%f”,&gaji);

tunj = 0.1 * gaji;

GAJI = gaji + tunj; /* gaji total*/

printf(”\nTunjangan = Rp. %6.2f”,tunj);

printf(”\nGaji Total = Rp. %6.2f”,GAJI);

getch();

}

Hasil :

Masukkan Gaji Pokok = Rp. 1000000

Tunjangan = Rp. 100000.00

Gaji Total = Rp. 1100000.00

MEMASUKKAN BEBERAPA DATA SECARA BERSAMA-SAMA

Data dapat dimasukkan secara bersama-sama dalam satu baris. Setiap data dipisahkan oleh sebuah karakter. Karakter-karakter yang dapat bertindak sebagai pemisah data adalah :

  • § Koma (‘)
  • § Garis hubung (-)
  • § Titik dua (:)
  • § Spasi

Contoh :

#include<stdio.h>

main()

{

int bil1,bil2,bil3;

clrscr();

printf(”Masukkan 3 buah bilangan bulat : “);

scanf(”%d-%d-%d”,&bil1,&bil2,&bil3);

printf(”\nBilangan pertama : %3d”,bil1);

printf(”\nBilangan kedua : %3d”,bil2);

printf(”\nBilangan ketiga : %3d”,bil3);

getch();

}

Hasil :

Masukkan 3 buah bilangan bulat : 12-24-48

Bilangan pertama : 12

Bilangan kedua : 24

Bilangan ketiga : 48

Anda harus memasukkan data dengan cara : 12-24-48 (sesuai dengan tanda pemisah data pada scanf)

GETCH() dan GETCHE()

Dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan enter. Fungsi getch() merupakan singkatan dari get character artinya baca karakter tetapi isian data yang dimasukkan tidak akan ditampilkan di layar.

Contoh :

#include<stdio.h>

main()

{

char karakter;

clrscr();

printf(“Ketik sebuah karakter : “);

karakter=getch();

printf(“\nKarakter yang anda ketik adalah : %c”,karakter);

getche();

}

Hasil :

Ketik sebuah karakter :

Karakter yang anda ketik adalah : A

Nama fungsi getche() sebenarnya adalah singkatan dari get character and echo, artinya baca karakter lalu tampilkan di layar. Jadi setelah mengetikkan sebuah huruf, huruf tersebut akan ditampilkan di layar tanpa menekan enter.

Catatan :

  • § Program yang menggunakan printf(), putchar(), scanf() dan puts() mengandung baris yang berisi #include
  • § Program yang melibatkan getche() atau getch() mengandung baris yang berisi #include

FUNGSI-FUNGSI NUMERIK

Turbo C mempunyai kurang lebih 450 fungsi dan makro yang dapat dipanggil dari program yang telah dibuat. Fungsi-fungsi tersebut meliputi berbagai hal, misalnya :

  • § Proses Input Output tingkat tinggi dan tingkat rendah
  • § Manipulasi string dan file
  • § Alokasi memori
  • § Kontrol Proses
  • § Konversi data
  • § Perhitungan matematik

Fungsi-fungsi tersebut ada di dalam file library-nya (Cx.LIB, Mathx.LIB dan Graphics.LIB). Huruf x diganti dengan model memori yang dipakai.

Fungsi-fungsi tersebut disimpan di dalam file header (*.H). Fungsi tersebut dapat digabungkan ke dalam program dengan menyertakan file header yang mengandung fungsi atau rutin yang dipakai.

FUNGSI SQRT

Fungsi : Menghitung akar positif dari sebuah bilangan bulat

Include : #include

Contoh :

#include<stdio.h>

main()

{

double x,y;

clrscr();

printf(”\nMasukkan sebuah bilangan :”); scanf(”%lf”,&x);

y = sqrt(x);

printf(”\n\nAkar dari %6.2lf adalah %6.2lf”,x,y);

getch();

}

FUNGSI POW

Fungsi : Menghitung xy

Include : #include

Contoh :

#include<stdio.h>

main()

{

double x,y,z;

clrscr();

printf(”\nMenghitung x pangkat y\n”);

printf(”\nMasukkan nilai x :”); scanf(”%lf”,&x);

printf(”\nMasukkan nilai y :”); scanf(”%lf”,&y);

z = pow(x,y);

printf(”\n\nNilai %6.2lf Pangkat %6.2lf adalah %6.2lf”,x,y,z);

getch();

}

FUNGSI TAN

Fungsi : Menghitung nilai tangent dari sebuah sudut

Include : #include

Fungsi tan menghitung nilai tangent dari sudut x. Sudut x dalam satuan radian. Jika sudut x yang diberikan dekat dengan phi/2 atau –phi/2, hasilnya adalah 0.

FUNGSI DIV

Fungsi : Membagi dua bilangan bulat, memberikan hasil bagi dan sisanya

Include : #include

Contoh :

#include<stdio.h>

main()

{

int x,y;

div_t hasil;

clrscr();

printf(”Contoh fungsi — div —”);

printf(”\n\nMasukkan nilai x :”); scanf(”%d”,&x);

printf(”\n\nMasukkan nilai y :”); scanf(”%d”,&y);

hasil = div(x,y);

printf(”\n\n%-3d DIV %3d = %3d sisa %3d”,x,y,hasil.quot,hasil.rem);

getch();

}

FUNGSI CEIL

Fungsi : Membulatkan ke atas

Include : #include

Contoh :

#include<stdio.h>

main()

{

double x,hasil;

clrscr();

printf(”Contoh fungsi — ceil —”);

printf(”\n\nMasukkan sebuah bilangan :”); scanf(”%lf”,&x);

hasil = ceil(x);

printf(”\n\nHasil pembulatan ke atas bilangan %6.2lf adalah %6.2lf”, x,hasil);

getch();

}

FUNGSI FLOOR

Fungsi : Membulatkan ke bawah

Include : #include

Fungsi floor menghasilkan bilangan bulat terbesar yang tidak lebih dari x

FUNGSI EXP

Fungsi : Menghitung ex

Include : #include

Contoh :

#include<stdio.h>

main()

{

double x,hasil;

clrscr();

printf(”Contoh fungsi — exp —”);

printf(”\n\nMasukkan sebuah bilangan :”); scanf(”%lf”,&x);

hasil = exp(x);

printf(”\n\nHasil e pangkat %6.2lf adalah %6.2lf”, x,hasil);

getch();

}

FUNGSI MAX

Fungsi : Memberikan bilangan yang lebih besar dari 2 bilangan yang diberikan

Include : #include

Contoh :

#include<stdio.h>

main()

{

float a,b,c;

clrscr();

printf(”Contoh fungsi — max —”);

printf(”\n\nMasukkan nilai pertama :”); scanf(”%f”,&a);

printf(”\n\nMasukkan nilai kedua :”); scanf(”%f”,&b);

c = max (a,b);

printf(”\n\nNilai terbesar dari bilangan %5.1f dan %5.1f adalah %5.1f”, a,b,c);

getch();

}

FUNGSI MIN

Fungsi : Memberikan bilangan yang lebih kecil dari 2 bilangan yang diberikan

Include : #include

LATIHAN

1. Nilai akhir dari pelajaran Bahasa C ditentukan oleh tiga nilai yaitu :

  • Nilai Praktek bobot 20%
  • Nilai UTS bobot 30%
  • Nilai UAS bobot 50%

Buatlah program untuk menghitung nilai akhir !

2. Perusahaan telepon di kota “A” mempunyai tarif Rp. 250,- per pulsa. Setiap langganan dikenakan biaya langganan sebesar Rp. 20.000,- per bulan. Buatlah program untuk menghitung tagihan langganan dengan menggunakan konstanta !

3. Buatlah program untuk menghitung panjang sisi miring segitiga siku-siku !

4. Buatlah program untuk menghitung Keliling, Luas Permukaan dan Isi dari sebuah bola dengan rumus :

  • Keliling = 2 p r
  • Luas Permukaan = 4/3 p r3
  • Isi = 4 p r2

5. Tinggi menara dapat dihitung dengan mengukur sudut elevasi dan jarak antara pengamat terhadap kaki menara. Tinggi menara dapat dinyatakan dengan rumus

Tinggi = jarak * tangen (sudut elevasi)

Buatlah program untuk menghitung tinggi menara !

Pemrograman Java

Mengenal Java

Java adalah sebuah platform teknologi pemrograman yang dikembangkan oleh Sun Microsystem. Pertama kali di-release tahun 1991 dengan nama kode Oak. Kemudian tahun 1995 nama kode Oak diganti menjadi Java. Yang memotivasi Java dibuat adalah untuk membuat sebuah bahasa pemrograman yang portable dan independent terhadap platform (platform independent). Java dapat membuat perangkat lunak yang dapat ditanamkan (embedded) pada berbagai mesin dan peralatan konsumer, seperti handphone, microwave, remote control, dan lain-lain. Hal ini kemudian Java memiliki konsep yang disebut write once run anywhere.

Untuk membangun perangkat lunak menggunakan Java maka dibutuhkan Java Development Kit (JDK). JDK release pertama tahun 1996 yaitu JDK 1.1 yang diadopsi oleh Netscape. JDK terbaru sekarang (September-tahun 2004, ketika modul ini ditulis) adalah JDK 1.4.2_3. Semua program dan dokumentasi dari JDK ini bisa di-dwonload secara gratis disitus www.sun.java.com.

Sintaks Bahasa dan Tipe Data

Contoh program yang sederhana

Setelah mendapatkan gambaran yang cukup mengenai dasar-dasar PBO, kini saatnya memasuki dunia Java yang sebenarnya. Berikut adalah sebuah contoh program yang sederhana:

/*

contoh program Java sederhana

——————————————

*/

class sederhana {

//awal program selau dimulai dari main()

public static void main(String[] args) {

System.out.println(“Hello …. Ini Program Pertamaku”);

}

}

Hal yang perlu dicatat:

Java bersifat case sensitive. Huruf besar dan kecil adalah berbeda dalam Java, karena itu pastikan anda mengetik kode diatas sama persis, tanpa mengubah besar kecil hurufnya. Selain itu dalam Java white space seperti karakter spasi, tab, pindah baris dan karakter lainnya yang berfungsi untuk memformat tampilan, tidak memiliki arti apapun selain untuk memudahkan programmer membaca kode yang ditulis. Karena itu karakter white space dapat digunakan sesukanya untuk memudahkn programmer membacanya.

Ketik program diatas dengan menggunakan text editor (misalnya notepad, atau di linux dengan gedit) dan simpan dengan nama sederhana.java. nama file ini harus sama dengan nama class. Kemudian lakukan kompilasi dengan mengetikkan perintah di c-prompt:

C:\javawork> javac sederhana.java

Jika berhasil, hasil kompilasi ini akan membangkitkan sebuah bytecode dengan nama file sederhana.class. untuk mengeksekusi file ini maka bisa menggunakan perintah:

C:\javawork> java sederhana

Hasil dari eksekusi tersebut maka akan menghasilkan tampilan :

Hello …. Ini Program Pertamaku

Penjelasan Program

Program diatas merupakan program paling sederhana, namun memiliki beberapa bagian penting.

/*

contoh program Java sederhana

——————————————

*/

bagian ini merupakan bagian yang dikenal sebagai komentar. Komentar dalam Java seperti halnya dalam pemrograman yang lainnyabukan merupakan bagain dari program. Karenanya komentar ini tidak akan dikompilasi oleh compiler Java dan tidak akan mempengaruhi alur program. Komentar ini lebih diperuntukkan untuk memperjelas source code yang ditulis sehingga kode program dapat lebih mudah untuk diteliti ualng atau dibaca. Komentar harus selalu ditulis diantara tanda /* dan */.

class sederhana

baris ini mendeklarasikan sebuah class dengan nama sederhana. Jika diperhatikan keseluruhan deklarasi class ini diawali dengan { dan diakhir dengan }. Hal ini berarti bahwa semu yang berada didalam tanda tersebut merupakan bagain dari class ini. Penjelasan tentang class dibahas secara tersendiri dibagian class setelah pembahasan ini.

//awal program selau dimulai dari main()

baris kode ini juga merupakan komentar. Perbedaan dengan /* */ adalah bahwa ia hanya berlaku untuk satu baris ini saja dan semua kata-kata setelah tanda // adalah komentar.

public static void main(String[] args) {

baris ini mendeklarasikan suatu method dengan nama main. Nama main disini merupakan suatu keharusan dalam Java karena Java akan mencari method yang bernama main ini sebagai awal eksekusi program. Keyword public merupakan access specifier yang menentukan visibility level dari method ini. Public berarti method ini dapat diakses darimanapun dari luar class. Method main() akan dipanggil dari luar oleh runtime Java pada saat program akan dieksekusi sehingga access specifier-nya harus menggunakan public. Keyword static memungkinkan method main() diapnggil tanpa harus terlebih dahulu membuat instance dari class sederhana. Ini diperlukan karena method main() akan dieksekusi sebelum objek apapun dibuat dalam memori. Keyword void berarti bahwa method main() tidak mengembalikan nilai apapun setelah diapnggil/dieksekusi.

System.out.println(“Hello …. Ini Program Pertamaku”);

Baris ini memiliki beberapa bagian penting:

  • Ø System adalah nama dari salah satu class standar yang dimiliki oleh Java
  • Ø Out merupakan anggota dari class system dan juga merupakan objek tersendiri. Out mewakili standard output stream yang dalam hal ini digunakan layar komputer. Seperti halnya method main() diatas, objek out juga dideklarasikan dengan menggunakan keyword static didalam classnya sehingga ia dapat langsung dipanggil tanpa perlu terlebih dahulu membuat instance dari class system.
  • Ø Prinltn merupakan method yang terdapat dalam objek out. Berfungsi untuk mencetak keluaran ke standard output. Mthod ini juga mencetak karakter pindah baris. Untuk mencetak tanpa pindah baris bisa menggunakan print().
  • Ø “Hello …. Ini Program Pertamaku” merupakan parameter darimethod println yang diterima oleh internal method ini dan dicetak ke standard output yang dalam hal ini adalah layer computer anda. Oleh karena itu sewaktu menjalankan program ini dilayar computer akan tercetak : Hello …. Ini Program Pertamaku.
  • Ø Tanda ; diperlukan untuk menandai akhir dari suatu statement / pernyataan / perintah.

Identifier

Identifier merupakan nama yang digunakan untuk menamai class, interface, variable dan method. Programmer dapat menentukan sendiri identifier yang akan digunakan. Hanya yang perlu diperhatikan adalah:

- tidak ada batasan panjang, jadi identifier dapat dibuat dengan panjang karakter yang tidak terbatas.

- Identifier harus diawali dengan huruf, underscore / garis bawah ( _ ) atau lambang dollar ($). Untuk selebihnya dapat digunakan karakter apapun, kecuali karakter yang digunakan sebagai operator oleh Java (*, +, -, /).

- Bukan merupakan keyword yang telah dikenal oleh Java.

Pada contoh sebelumnya sederhana merupakan identifier yang digunakan untuk menamai class yang dibuat.

Reserved Word / keywords

Ini merupakan kata-kata yang telah dikenal oleh Java dengan memiliki arti khusus dalam program. Berikut ini adalah daftar kata-kata tersebut.

Table 1 Daftar Kata (Keyword) yang dikenal dalam Java

abstract boolean break byte case
catch char Class const continue
default do Double else extends
false final finally float For
goto if Implements import instanceof
int interface long native new
null package Private protected public
return short Static strictfp super
switch synchronized this throw throws
transient true Try void volatile
while

Variabel

Variable merupakan lokasi penyimpanan dalam memori. Setiap variable memiliki kemampuan menyimpan suatu informasi sesuai dengan tipe data yang dideklarasikan untuk variable tersebut. Sintaks pendeklarasian varaibel secara umum adalah sebagai berikut:

Tipe_data nama_variable;

Tipe_data meliputi semua tipe data yang dikenal dalam Java, sedangkan nama_variabel adalah identifier yang akan digunakan untuk menunjuk ke variable tersebut didalam program.

Contoh :

int hitung;

kode diatas mendeklarasikan suatu varaibel bernama hitung dengan tipe data integer.

Scope dari Variabel

Dalam Java, secara garis besar scope dari variabel dapat dibedakan menjadi dua bagian, yaitu variabel yang dideklarasikan didalam blok class (dikenal juga sebagai property) dan variabel yang dideklarasikan didalam blok kode.

Variabel yang dideklarasikan dalam blok class akan dikenal dibagian manapun dama blok kelas tersebut. Variabel ini juga bahkan dapat diakses dari luar class dengan menggunakan referensi objek atau instance dari class tersebut, namun hal ini akan dipengaruhi oleh penggunaan access specifier. Access specifier akan dibahas berikutnya.

Pada dasarnya variabel dapat dideklarasikan didalam blok kode manapun. Yang dimaksud dengan blok kode disini adalah bagian dari kode yang dimulai dengan karakter { dan ditutup dengan karakter }. Blok ini menentukan scope dari suatu variabel, yaitu apakah suatu variabel akan dikenal dibagian lain dari program atau tidak. Kita juga bisa membuat nested blok, yaitu blok yang berada didalam blok lainnya. Aturan sederhana yang perlu diingat hanyalah pendeklarasian suatu variabel dalam suatu blok kode akan dikenal oleh nesteted blok yang ada didalam blok kode tersebut, namun tidak berlaku sebaliknya.

Class

Dalam dunia nyata, kita sering memiliki beberapa objek yang berjenis sama, contohnya, sepeda motor yang kita miliki hanya satu dari banyak sepeda motor di dunia. Menggunakan istilah orientasi objek, kita bisa mengatakan bahwa sepeda motor itu adalah sebuah instance dari sebuah class dari objek-objek yang diketahui sebagai sepeda motor. Sepeda motor-sepeda motor umumnya memiliki beberapa status (state) (seperti: gear, 2roda, rantai, jok) dan tingkah laku (behaviour) (merubah gear, dan rem). Namun setiap sepeda motor adalah independen / bebas dan bisa berbeda dari sepeda motor lainnya.

Ketika membuat sepeda motor, pabrik / industri pembuatnya mengambil keuntungan dari kenyataan bahwa sepeda motor memiliki karakteristik yang sama, sehingga untuk membuat sepeda bisa mulai dari satu cetak biru / blue print. Sangat tidak efisien jika membuat sepeda dengan blue print yang berbeda-beda untuk setiap sepeda.

Dalam perangkat lunak berorientasi objek dimungkinkan untuk memiliki banyak objek yang sama yang menggabungkan karakteristik-karakteristik seperti: sudut, employee records, video clips, dan seterusnya. Seperti pabrik sepeda motor kita dapat mengambil keuntungan dari kenyataan bahwa objek-objek dari jenis yang sama adalah serupa dan kita dapat membuatnya dari blue print yang sama. Blue print perangkat lunak itulah yang disebut Class.

Definisi: sebuah Class adalah sebuah blue print , atau prototipe, yang mendefiniskan variabel-variabel dan metode-metode yang umum untuk semua objek dari njenis tertentu.

Class untuk sepeda motor tadi akan mendefinisikan variabel-variabel instan yang diperlukan untuk memuat karakteristik-karakteristik dari objek yang bersangkutan. Class akan dideklarasikan dan menyediakan implementasi-implementasi untuk metode-metode instan yang akaan memungkinkan untuk pengendara sepeda motor tersebut mengubah gear, rem, dan mengubah pedal gas, sebagaimana ditunjukkan pada gambar berikut.

setelah kita membuat kelas sepeda motor, kita dapat membuat sejumlah objek sepeda motor dari Class tersebut. Ketika kita membuat sebuah Class instan, maka system akan mengalokasikan sejumlah memori yang cukup untuk objek-objek dan semua variable instan. Tiap istan mendapat copy-nya sendiri dari semua instan variable yang didefinisikan dalam Class.

tambahan untuk variable instant, class-class dapat mendefinisikan class variable. Sebuah class varaibel memuat informasi yang digabung dengan semua instan dari class. Contohnya, anggaplah sepeda motor memiliki sejumlah gear. Dalam kasus ini, mendefinisikan sebuah variabel instan untuk memegang angka gear adalah sesuatu yang tidak efisien; tiap instan akan memiliki copy dari variabelnya, tetapi nilainya akan sama untuk semua instan. Dalam situasi tersebut, kita dapat mendefinisikan sebuah class variable yang memuat angka-angka gear. Semua instan menggabungkan semua variable ini. Jika satu objek mengubah variabelnya, maka ini akan mengubah semua objek tipe tersebut. Sebuah class juga mendeklarasikan metode class-nya. Kita dapat mengambil sebuah metode class secara langsung dari class, dimanapun kita dapat mengambil metode class pada suatu instan tertentu.

Object vs Class

Kita mungkin memperhatikan bahwa gambaran-gambaran dari objek-objek dan class-class kelihatan hampir sama. Dan lebih mendalam, perbedaan antara class dan objek sering membingungkan. Dalam kenyataannya, hal ini telah nyata bahwa class bukanlah sendirinya objek yang mereka gambarkan. Sebuah blue print dari sebuah sepeda motor adalah bukan sepeda motor. Namun, hal ini sedikit sulit untuk membedakan class-class dan objek dalam system perangkat lunak. Ini memang terpisah karena objek-objek dalam perangkat lunak adalah model elektronik dari model yang ada dalam dunia nyata atau konsep abstraknya. Tetapi hal ini juga karena istilah “objek” kadang-kadang digunakan untuk menunjuk baik class maupun instan-nya.

Tipe Data

Setiap variabel harus memiliki tipe data. Sebuah variabel tipe datanya menentukan nilai dari variabel yang dapat memuat dan operasi-operasi yang dapat dilakukannya. Contohnya sebuah tipe data integer (int) dapat memuat hanya nilai-nilai integer (baik positif maupun negative). Kita dapat melakukan operasi aritmetik seperti penjumlahan atau perkalian dan lainnya pada variable integer.

Bahasa pemrograman java memiliki 2 katagori tipe data: primitive dan reference. Sebuah variabel tipe primitive memuat sebuah nilai tunggal dengan format dan ukuran yang sesuai tipenya: sebuah angka, sebuah karakter, atau sebuah nilai boolean, contohnya sebuah nilai integer 32 bit data dalam sebuah format diketahui sebagai komplemen 2, sebuah nilai char 16 bit data yang di format sebagai sebuah karakter Unicode, dan seterusnya.

tabel berikut disusun berdasar kata kunci, semua tipe data primitive yang didukung oleh Java, ukuran dan formatnya, dan sebuah penjelasan ringkas untuk masing-masing tipe data.

Tipe Data Primitive

Kata Kunci Keterangan Size/Format
(integers)
byte Byte-length integer 8-bit two’s complement
short Short integer 16-bit two’s complement
int Integer 32-bit two’s complement
long Long integer 64-bit two’s complement
(real numbers)
float Single-precision floating point 32-bit IEEE 754
double Double-precision floating point 64-bit IEEE 754
(other types)
char A single character 16-bit Unicode character
boolean A boolean value (true or false) true or false

Purity Tip: dalam bahasa yanglain, format dan ukurannya tergantung pada platform dimana program tersebut dijalankan. Hal yang lain, bahasa pemrograman Java menspesifikasi ukuran dan format dari tipe data primitifnya. Dari sini kita tidak perlu khawatir tentang ketergantungan sistem.

Berikut adalah beberapa conoth tipe data:

Contoh Tipe Data
178 Int
8864L long
37.266 double
37.266D double
87.363F float
26.77e3 double
c char
True boolean
False boolean

Secara umum, sederet digit dengan tanpa titik decimal (dalam notasi Internasional) atau koma decimal (notasi Indonesia) ditipekan sebagai sebuah integer. Kita juga dapat menspesifikasi sebuah integer Long dengan menempatkan ‘L’ atau ‘l’ setelah angkanya. ‘L’ ditunjukkan agar tidak membingungkan dengan didgit ’1′. Sebuah deretan digit dengan ada sebuah titik desimalnya adalah bertipe double. Kita juga dapat menspesifikasi sebuah float dengan menempatkan ‘f’ atau ‘F’ setelah angka. Sebuah karakter harfiah adalah sebuah karakter Unicode tunggal diantara tanda petik. Dua karakter Boolean adalah true dan false (benar dan salah)

Arrays, class, dan interface adalah tipe-tipe referensi. Nilai dari variable tipe referensi, berbeda dengan tipe primitive, adalah sebuah referensi untuk (sebuah alamat dari) nilai atau kumpulan nilai dari nilai-nilai yang ditunjukkan oleh variable.

Sebuah referensi (reference) disebut sebagai sebuah pointer, atau alamat memory dalam bahasa lain. Bahasa pemrogrman Java tidak mendukung penggunaan alamat secara eksplisit seperti bahasa pemrograman lain lakukan.. You use the variable’s name instead.

Operator

Operator merupakan simbol yang biasa digunakan dalam menulis suatu penyataan (statement) dalam bahasa pemrograman apapun. Operator akan melakukan suatu operasi terhadap operand sesuai dengan fungsinya. Contoh operasi antara lain penjumlahan, pengurangan, pembagian dan sebagainya.

3 + 8 * 4

3 8 4 adalah operand

+ * adalah Operator

Operator Penugasan

Operator ini adalah operator yang paling sederhana dan hanya dilambangkan dengan karakter ’=’. Operator ini digunakan untuk menugaskan suatu nilai ke suatu variabel. Contoh :

int hitung = 4;

yang unik dari operator ini dalam Java adalah kita dapat menggunakan operator ini secara berantai dalam suatu ekspresi, contoh:

int a, b, c;

a = b = c = 99;

Operator Matematika

Operator ini digunakan dalam ekspresi matematika. Berikut ini daftar operator matematika yang dikenal dalam Java:

Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Modulus (sisa bagi)

Operator Penaikan dan Penurunan

Operator ini digunakan untuk menaikkan atau menurunkan suatu nilai integer (bilangan bulat) sebanyak satu satuan, dan hanya digunakan pada variabel.

Operator Keterangan
++ Penambahan dengan nilai satu
Pengurangan dengan nilai satu

Sebagai contoh :

x = x + 1;

y = y -1;

dapat ditulis menjadi:

x++ ;

y– ;

atau

++x ;

–y ;

Operator Bitwise (manipulasi bit)

Operator ini digunakan untuk operasi secara langsung terhadap bit yang menyusun suatu bilangan. Daftar operator bitwise dalam Java adalah sebagai berikut :

Operator Arti
- Bitwise negasi (NOT)
& Bitwise AND
| Bitwise OR
^ Bitwise XOR
>> Geser kanan
>>> Geser kanan tanpa mempertahankan sign (dengan nilai 0 sebagai pengisi bit paling kiri)
<< Geser kiri

Karena operasi bitwise memanipulasi hingga ke bagian yang paling kecil dari suatu bilangan, yaitu bit maka diperlukan penjelasan lebih lanjut tentang bagaimana Java menyimpan reprsentasi suatu bilangan dalam bit, terutama sekali untuk representasi bilangan negatif.

Java menyimpan representasi dari suatu bilangan sebagai bilangan basis dua (binary) yang tersusun atas bit. Contoh bilangan binary : 000100111. angka 0 dan 1 yang membentuk bilangan binary inilah yang disebut bit.

Kontrol Alur Eksekusi Program

Sebagai bahasa pemrograman, Java memiliki cara untuk mengontrol alur eksekusi program bergantung pada kondisi yang telah dietentukan. Secara garis besar, kontrol alur eksekusi ini dapat dikelompokkan ke dalam tiga bagian besar, yaitu seleksi, iterasi / perulangan, dan jump.

Seleksi

Terdapt dua kunci (keyword) yang dapat digunakan untuk melakukan seleksi dalam Java, yaitu if dan switch. Keduanya menentukan alur eksekusi program maman yang akan dijalankan pada suatu percabangan.

If

Secara umum penggunaan if mengikuti ketentuan sebagai berikut:

If (kondisi)

Pernyataan1;

Else

Pernyataan2;

Kondisi harus berupa ekspresi yang menghasilkan nilai Boolean (true atau false), sedangkan pernyataan1 dan pernyataan2 merupakan kode atau blok kode yang akan dieksekusi sesuai dengan nilai yang dihasilkan oleh kondisi. Jika kondisi bernilai true maka pernyataan1 yang akan dieksekusi dan sebaliknya jika nilai kondisi adalah false maka pernyataan2 lah yang akan dieksekusi.

Dalam penerapannya penggunaan else bersifat opsional, boleh menggunakannya atau tidak sesuai dengan kebutuhan, seperti berikut:

If (kondisi)

Pernyataan;

Dengan demikian pernyataan hanya akan dieksekusi jika kondisi bernilai true.

If – else bertingkat (nested)

Pada prinsipnya penggunaan if – else adalah sama, namun untuk yang bertingkat dapat mengkombinasikan penggunaannya menjadi bertingkat seperti berikut:

If (kondisi1)

Pernyataan1;

Else if (kondisi2)

Pernyataan2;

Else if (kondisi3)

Pernyataan3;

:

:

else if (kondisiN)

pernyataanN;

else

pernyataanLain;

switch

penggunaan switch sebenarnya hamper sama dengan if bertingkat, dimana kita bisa menggunakan switch untuk percabangan yang berjumlah lebih darisatu. Karena itu switch bisa dijadikan alternative lain dibandingkan menggunakan if bertingkat. Secara umum bentuk penggunaannya sebagai berikut:

switch (ekspresi) {

case nilai1: pernyataan1;

break;

case nilai2: pernyataan2;

break;

case nilai3: pernyataan3;

break;

:

:

case nilaiN: pernyataanN;

break;

default : pernyataanDefault;

}

Gambas

GAMBAS (Gambas Almost Means BASic). Mungkin belum banyak dari kita yang pernah menggunakannya. Bagi yang sering berkutat dengan Visual Basic tentu tidak akan asing lagi dengan Gambas. Gambas adalah IDE (Integrated Development Environment) dengan basisnya menggunakan bahasa Basic yang jalan diatas platform linux. Tujuan para developer membuatnya adalah untuk menggantikan peran Ms Visual Basic, yang lebih dahulu merambah dunia, untuk platform linux. Perbedaannya? Tentu saja pembaca semua sudah tahu……..free & non-free.

Beberapa saat yang lalu saya coba menggunakan IDE tersebut, dan karena sudah terbiasa dengan VB, maka user interface gambas langsung familiar di mata saya, mirip dengan VB. Bahkan menurut saya, lebih enak dan mudah menggunakannya daripada VB ( saya baru mencicipinya lho, belum dimakan, hehe).

Ketika kita menyimpan suatu program yang dibuat menggunakan Gambas, akan terbuat tiga buah file dengan ekstensi .project; .class; dan .form . Dan jika di-compile akan menghasilkan file executable .gambas . Ini berbeda dengan VB yang tidak membuat file .class karena file tersebut sudah ter-include dalam file projectnya (.vbp).

Dalam hal databasing, Gambas mendukung bahasa-bahasa query yang tidak asing lagi : MySql, PostgreSQL dan Sqlite. Sehingga tidak perlu khawatir dalam merancang database.

Tentu saja tidak dalam semua hal Gambas dapat mengungguli VB. Dalam hal popularitas, Gambas masih jauh di bawah VB, itu karena kita tahu belum banyak orang yang menggunakan linux. Karena itu jugalah, belum banyak penerbit yang menerbitkan buku tutorial Gambas ( elektronik maupun cetak, saya lagi nyari soale). Padahal bisa jadi Gambas lebih powerfull daripada VB (saya belum tahu). Yang jelas, Gambas & VB bukanlah saudara kembar tapi Gambas adalah jelmaan VB di dalam platform linux.

Untuk Download Gambas, klik di sini.

Follow

Get every new post delivered to your Inbox.