Finish : Praktikum 01 – Array

confused1.jpgTulisan ini merupakan lanjutan dari petunjuk sebelumnya….New Hint Praktikum 01. Dan sembari menunggu pagi , mending nulis-nulis. Semoga bisa bermanfaat bagi temen-temen semua. Untuk penutupan pada petunjuk kali ini saya akan membahas tentang yang no 3 dan 4.(lihat New Hint Praktikum 01 output no 3 dan 4).

Pada prinsipnya soal no 3 dan 4 adalah mirip sama 🙂 . Langsung saja(dah keburu ngantuk) tahap awal dari masalah tersebut yaitu:

Continue reading “Finish : Praktikum 01 – Array”

Source Code Mesin Kata[sik mbulet, pokoke dadi]

Hasil Kompilasi dengan String :

saya    belajar       algoritma        dengan    bahasa    java

saya   belajar    java   dengan    siapa     “

adalah sebagai berikut

   saya    belajar       algoritma        dengan    bahasa    java 
saya   belajar    java   dengan    siapa      
Himpunan kata
-|saya             frek:0|-
-|belajar          frek:0|-
-|algoritma        frek:0|-
-|dengan           frek:0|-
-|bahasa           frek:0|-
-|java             frek:0|-
-|siapa            frek:0|-
saya
belajar
algoritma
dengan
bahasa
java
saya
belajar
java
dengan
siapa
Jumlah kata         :11
kata : saya         frek: 2
kata : belajar      frek: 2
kata : algoritma    frek: 1
kata : dengan       frek: 2
kata : bahasa       frek: 1
kata : java         frek: 2
kata : siapa        frek: 1

Continue reading “Source Code Mesin Kata[sik mbulet, pokoke dadi]”

Mesin Kata

“Atas permintaan seseorang yang tidak bisa tolak permintaannya maka muncullah tulisan yang sederhana ini. Semoga bermanfaat.”

Pendahuluan

Mesin kata, apakah gerangan itu? Sebenarnya hanya program untuk mengenali kata pada suatu karakter dan mencatat frekuensi  kemunculannya. Namun apakah sesederhana itu? Tentu saja tidak karena perlu analisa yang cukup lama bagi seseorang yang jarang ngoding. Kadang-kadang meskipun kita tahu bagaimana alur logika program yang akan dibuat kita masih sering dibuat bingung pada saat implementasi pada program. Pada kesempatan kali ini saya menggunakan java sebagai contoh.

Continue reading “Mesin Kata”

Java Tutorial: Deklarasi dan akses kontrol – Part 3

Konstruktor
Konstruktor dijalankan pada saat objek dari suatu kelas dibuat.  Nama konstruktor harus sama dengan nama kelas dan tidak mempunyai return value. Konstruktor dapat dioverloading(terdapat dua konstruktor atau lebih dengan parameter input yang berbeda). Konstruktor hanya bisa dipanggil oleh konstruktor lain. Untuk memanggil konstruktor pada kelas yang sama, digunakan fungsi this() dengan argumen/parameter input yang sesuai. Sedangkan untuk memanggil konstruktor pada superclass maka digunakan fungsi super() tentunya dengan argumen yang bersesuaian. Ketika objek pada subclass terbentuk, semua konstruktor pada superclass dipanggil dengan urutan atas dalam suatu hirarki.

Continue reading “Java Tutorial: Deklarasi dan akses kontrol – Part 3”

Java Tutorial: Deklarasi dan akses kontrol – Part 2

PENDEKLARASIAN KELAS, VARIABEL, DAN METHOD

Modifier digunakan untuk menentukan hubungan suatu unsur kelas dengan unsur kelas lainnya. Didalam pemrograman JAVA terdapat dua macam modifiersaccess modifiers dan non-access modifier. Dengan menggunakan akses modifier kita bisa untuk menolak akses atau memberi akses yang lebih pada kode kita.

Class modifier

Akses modifier yang tersedia adalah public, private, dan protected. Dengan demikian top-level class(kelas utama dalam suatu kode) hanya boleh public dan default akses level. Jika tidak ada akses modifier yang ditentukan maka kelas akan diset menjadi akses default. Hanya kelas yang didalam package(direpresntasikan dalam sebuah folder, jadi dalam package yang sama adalah sama dengan berada didalam folder yang sama) yang sama yang dapat menggunakan kelas lain dengan akses default. Jika semua kelas dideklarasikan sebagai public maka semua kelas dari package yang berbeda dapat mengaksesnya.

Continue reading “Java Tutorial: Deklarasi dan akses kontrol – Part 2”

Java Tutorial: Deklarasi dan akses kontrol – Part 1

ARRAY

Array adalah objek yang dapat dibuat secara dinamis. Array dapat menyimpan beberapa variabel dengan tipe data yang sama. Variabel dapat berupa tipe data primitif atau berupa objek/kelas lainnya; array bisa  berisi array lainnya. Deklarasi variabel Array Ketika mendeklarasikan variabel array, kode membuat variabel yang dapat memegang referensi kepada objek array, bukan membuat objek array atau mengalokasikan ruang untuk elemen array. Dan perlu diingat, “HARAM” hukumnya mendefinisikan ukuran array pada saat array itu di deklarasikan(misal int a[10]; ). Untuk mendeklarasikan array hampir sama dengan mendeklarasikan tipe data biasa hanya saja ditambahan kurung siku/bracket. Contoh pendeklarasian array:

int[] i;		//array of int
byte b[];	        //array of byte
Object[] o,	        //array of Object
short s[][];	        //array of arrays of short

Continue reading “Java Tutorial: Deklarasi dan akses kontrol – Part 1”

Java Tutorial: Deklarasi dan akses kontrol – Part 2

PENDEKLARASIAN KELAS, VARIABEL, DAN METHOD

Modifier digunakan untuk menentukan hubungan suatu unsur kelas dengan unsur kelas lainnya. Didalam pemrograman JAVA terdapat dua macam modifiersaccess modifiers dan non-access modifier. Dengan menggunakan akses modifier kita bisa untuk menolak akses atau memberi akses yang lebih pada kode kita.

Class modifier

Akses modifier yang tersedia adalah public, private, dan protected. Dengan demikian top-level class(kelas utama dalam suatu kode) hanya boleh public dan default akses level. Jika tidak ada akses modifier yang ditentukan maka kelas akan diset menjadi akses default. Hanya kelas yang didalam package(direpresntasikan dalam sebuah folder, jadi dalam package yang sama adalah sama dengan berada didalam folder yang sama) yang sama yang dapat menggunakan kelas lain dengan akses default. Jika semua kelas dideklarasikan sebagai public maka semua kelas dari package yang berbeda dapat mengaksesnya.

Marilah kita melihat pengaruh dari beberapa non-akses modifier pada kelas. Kata kunci final tidak mengijinkan kelas untuk diturunkan. kelas abstract, tidak bisa di instansiasi tetapi dapat diturunkan pada sub kelas.

public final class Mobil{ ... }
class MobilMewah extends Mobil{} //tidak diijinkan, terjadi error saat kompilasi


Modifier method dan variabel

Semua akses modifier dapat digunakan untuk anggota dalam kelas itu sendiri. private member hanya dapat diakses dan dalam kelas itu saja. protected member hanya dapat diakses oleh kelas pada package yang sama atau subclass dari kelas itu. public member dapat diakses oleh semua kelas lainnya. Jika tidak ada akses modifier yang ditentukan maka anggota kelas akan mempunyai akses default dan hanya kelas lain pada package yang sama yang dapat mengaksesnya.

Method Synchronized hanya dapat diakses oleh satu thread dalam saat yang bersamaan. Variabel Transient tidak dapat di serialisasi berbeda dengan method abstract yang tidak memiliki implementasi karena hanya suatu template yang implementasi kodenya dilakukan pada method di kelas turunannya. Suatu kelas berisi minimal satu method abstract yang dideklarasikan sebagai abstract. Meski demikian kelas abstract tidak membutuhkan banyak methd abstract didalamnya.

Java Tutorial Deklarasi dan Akses Kontrol Part 1

Java Tutorial Deklarasi dan Akses Kontrol Part 3

Java Tutorial: Deklarasi dan akses kontrol – Part 3

Konstruktor

Konstruktor dijalankan pada saat objek dari suatu kelas dibuat. Nama konstruktor harus sama dengan nama kelas dan tidak mempunyai return value. Konstruktor dapat dioverloading(terdapat dua konstruktor atau lebih dengan parameter input yang berbeda). Konstruktor hanya bisa dipanggil oleh konstruktor lain. Untuk memanggil konstruktor pada kelas yang sama, digunakan fungsi this() dengan argumen/parameter input yang sesuai. Sedangkan untuk memanggil konstruktor pada superclass maka digunakan fungsi super() tentunya dengan argumen yang bersesuaian. Ketika objek pada subclass terbentuk, semua konstruktor pada superclass dipanggil dengan urutan atas dalam suatu hirarki.


Konstruktor default
Kompiler membuat konstruktor default jika tidak diberikan konstruktor didalam kelas dan konstruktor ini tidak memiliki argumen apapun. Konstruktor default memanggil konstruktor tanpa argumen dari superclass dengan akses modifier yang sama dengan kelas tersebut. Namun, kompiler tidak akan memberikan default konstruktor jika telah diberikan konstruktor minimal satu konstruktor didalam kelas. Sebagai contoh, kelas yang mempunyai konstruktor dengan dua argumen. Disini kompiler akan memberikan pesan error jika kita mencoba untuk instantiasi kelas tanpa melewatkan argumen apapun karena konstruktor default tidak tersedia.

class Dot
{
int x, y;
Dot(int x, int y)
{
this.x = x;
this.y = y;
}
}



Jika kita memanggil konstruktor dari kelas dan superclass tidak mempunyai konstruktor tanpa argumen, maka kode kita tidak dapat dikompilasi. Karena konstruktor default pada subclass memanggil secara implisit konstruktor tanpa argumen.
Sebagai Contoh:

class Dot
{
int x, y;
Dot(int x, int y)
{
this.x = x;
this.y = y;
}
}
class MyDot extends Dot { }

class Test
{
public static void main(String args[])
{
MyDot dot=new MyDot();
}
}


java-tutorial-deklarasi-dan-akses-kontrol-part-2

Java Tutorial: Deklarasi dan akses kontrol – Part 1

ARRAY

Array adalah objek yang dapat dibuat secara dinamis. Array dapat menyimpan beberapa variabel dengan tipe data yang sama. Variabel dapat berupa tipe data primitif atau berupa objek/kelas lainnya; array bisa berisi array lainnya. Deklarasi variabel Array Ketika mendeklarasikan variabel array, kode membuat variabel yang dapat memegang referensi kepada objek array, bukan membuat objek array atau mengalokasikan ruang untuk elemen array. Dan perlu diingat, “HARAM” hukumnya mendefinisikan ukuran array pada saat array itu di deklarasikan(misal int a[10]; ). Untuk mendeklarasikan array hampir sama dengan mendeklarasikan tipe data biasa hanya saja ditambahan kurung siku/bracket. Contoh pendeklarasian array:

int[] i;  //array of int
byte b[]; //array of byte
Object[] o, //array of Object
short s[][]; //array of arrays of short


Konstruksi array

Kita bisa menggunakan new operator untuk membangun array. Jumlah array dan tipe elemen juga harus disertakan. Dan tidak dapat dilakukan perubahan tipe elemen pada saat konstruksi array. Dalam kasus array multidimensi kita hanya bisa menentukan ukuran hanya untuk dimensi pertama dari array.

int [] marks = new int[100];
String[][] s = new String[3][];

Inisialisasi Array

Inisialisasi array ditulis dengan pemisah tanda koma “,”‘ dan ditutup dengan kurung kurawal.

String s[] = { new String("apple") , new String("mango")};
int i[][] = {{1, 2}, {3, 4}};


Array juga bisa diinisialisasi dengan looping

int i[] = new int[5];
for(int j=0; j < i.length; j++)
{
i[j] = j;
}

Pengaksesan elemen array

Index array dimulai dari 0 sampai n-1, dimana n adalah ukuran array. Untuk mendapatkan ukuran array bisa menggunakan instace variable yang disebut length(misal ada array arrInt maka pemanggilannya yaitu arrInt.length). Jika mengakses array diluar 0 sampain n-1 maka pesan error ArrayIndexOutOfBoundsException akan muncul.

java tutorial deklarasi dan akses kontrol part 2

Instalasi Java OpenGL di Linux

JOGL merupakan paket Java yang menyediakan penggabungan library untuk OpenGL Java Virtual Machine. Hal itu mengijinkan programmer komputer grafik untuk menggunakan object-oriented tools pada Java dengan hardware akselerasi grafik 2D dan 3D.

Pertama-tama yang harus anda perhatikan yaitu pastikan anda sudah menginstal Java Development Kit pada sistem anda.

Langkah instalasi JOGL di Linux (instalation for dummy) :

  1. Download JOGL versi terbaru di jogl.dev.net atau versi jogl yang saya gunakan  jogl-1.1.1-linux-i586.zip. Saya asumsikan anda menyimpan file tersebut di home direktori.
  2. Selanjutnya anda harus menjadi superuser atau dengan cara :
    $su atau $sudo su
    Sekarang anda harus membuat direktori di /usr/lib/jogl.
  3. Nah untuk melakukannya ketik
    linux-eqjw:~ # mkdir /usr/lib/jogl
    Pindahkan file zip tersebut kedalam direktori atau folder yang baru dibuat:
    linux-eqjw:~ #mv ~/jogl-<versi jogl>.zip /usr/lib/jogl/
  4. Ekstrak file tersebut :
    linux-eqjw:~ #cd /usr/lib/jogl
    linux-eqjw:~ #unzip jogl-<versi jogl>

Continue reading “Instalasi Java OpenGL di Linux”

membuat aplikasi openGL dengan DevC++

Cara membuat aplikasi openGL pake devC
Dimulai dengan membuat empty project kemudian tambahkan file .cpp kedalam project.
kemudian untuk menambahkan parameter agar jika dicompile tidak terjadi
linker error maka klik tab project->project option. Trus didalam
“Parameters” tab tambahkan

-lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32

pada linker pane. kemudian click ok.

nah sekarang tinggal menambahkan kode kedalam file cpp tadi.

tapi harus nginstall plugin dulu nih alamatnya

http://www.nigels.com/glt/devpak/freeglut.2.2.0.DevPak
http://www.nigels.com/glt/devpak/glui.2.2-1.DevPak

Continue reading “membuat aplikasi openGL dengan DevC++”