Subscribe to RSS Feed

Senin, 29 Oktober 2012

MEMBUAT TITIK-TITIK SEHINGGA MEMBENTUK GARIS VERTIKAL, HORIZONTAL, DIAGONAL DENGAN OPEN GL

OpenGL adalah suatu perangkat pembuat grafis standard yang digunakan untuk keperluan-keperluan pemrograman grafis. OpenGL bersifat opensource, multi-platform dan multi language. Saat ini semua bahasa pemrograman mendukung OpenGL. Dan OpenGL bisa bekerja dalam lingkungan Windows, Unix, SGI, Linux, freeBSD . Library dasar dari OpenGL adalah GLUT, dengan fasilitas yang bisa dikembangkan. Untuk OS Windows,library ini terdiri dari 3 files yaitu: 
Glut.h
Glut32.lib
Glut32.dll


1. Garis Vertikal
     Berikut adalah coding untuk membuat titik-titik secara vertikal

/* OpenGL animation code goes here */
glPushMatrix (); Digunakan untuk membuat baris kode menjadi tidak berlaku untuk bagian  luar.
glPointSize(3.0); Digunakan untuk Menentukan ukuran titik.
glBegin(GL_POINTS); Digunakan Untuk menggambar garis dari titik yang digunakan.
glVertex3f(0.0,0.9,0.0); Digunakan Untuk menentukan titik awal yang digunakan.
glVertex3f(0.0,0.1,0.0); Digunakan Untuk menentukan titik akhir yang digunakan.
glEnd ();  Digunakan Untuk mengakhiri gambar garis di titik akhir.
glPopMatrix (); Digunakan untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar.
SwapBuffers (hDC); Digunakan Untuk mengantikan bagian belakang buffer menjadi buffer layar.
Sleep (1);
}
}
berikut adalah output yang dihasilkan:

Pembuatan garis vertical sama seperti sebelumnya lebih memahami masalah di line bagian “glvertex2f” disinilah dimana sebuah garis dibuat dengan koordinat yang kita tentukan. Setelah coding dibuat kita tinggal tekan F9 untuk compile dan run lalu jendela untuk open GL sample pun keluar dan menghasilkan sebuah garis berbentuk garis vertical. 



2. Garis Horizontal
     Berikut adalah coding untuk membuat titik-titik secara horizontal
 
/* OpenGL animation code goes here */
glClear (GL_COLOR_BUFFER_BIT); DIgunakan Untuk membersihkan layar latar belakang.
glPointSize(3.0);  Digunakan untuk Menentukan ukuran titik.
glPushMatrix (); Digunakan untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar.
glBegin(GL_POINTS); Digunakan Untuk menggambar garis dari titik yang digunakan.
glVertex3f(0.9, 0.0, 0.0); Digunakan Untuk menentukan titik awal yang digunakan.
glVertex3f(
0.1, 0.0, 0.0); Digunakan Untuk menentukan titik akhir yang digunakan.
glEnd (); Digunakan Untuk mengakhiri gambar garis di titik akhir.
glPopMatrix (); Digunakan Membuat baris kode menjadi tidak berlaku untuk bagian luar.
SwapBuffers (hDC); DigunakanUntuk mengantikan bagian belakang buffer menjadi buffer layar.
Sleep (1);
}
}
Output Programnya adalah :
Pembuatan garis horizontal sama seperti sebelumnya lebih memahami masalah di line bagian “glvertex2f” disinilah dimana sebuah garis dibuat dengan koordinat yang kita tentukan. Setelah coding dibuat kita tinggal tekan F9 untuk compile dan run lalu jendela untuk open GL sample pun keluar dan menghasilkan sebuah garis berbentuk garis horizontal.
3. Garis Diagonal
     Berikut adalah coding untuk membuat titik-titik secara diagonal
/* OpenGL animation code goes here */
glClear (GL_COLOR_BUFFER_BIT); Digunakan Untuk membersihkan layar latar belakang.
glPointSize(3.0); Digunakan untuk Menentukan ukuran titik.
glPushMatrix (); Digunakan untuk Membuat baris kode menjadi tidak berlaku untuk bagian luar.
glBegin(GL_POINTS); Digunakan Untuk menggambar garis dari titik yang digunakan.
glVertex3f(0.9,0.9);
Digunakan Untuk menentukan titik awal yang digunakan.
glVertex3f(
0.8,0.0); Digunakan Untuk menentukan titik akhir yang digunakan.
glEnd (); Digunakan Untuk mengakhiri gambar garis di titik akhir.
glPopMatrix ();
Digunakan Membuat baris kode menjadi tidak berlaku untuk bagian luar.
SwapBuffers (hDC); Digunakan Untuk mengantikan bagian belakang buffer menjadi buffer layar.
Sleep (1);
}
}
Output Programnya adalah :

Pembuatan garis diagonal sama seperti sebelumnya lebih memahami masalah di line bagian “glvertex2f” disinilah dimana sebuah garis dibuat dengan koordinat yang kita tentukan. Setelah coding dibuat kita tinggal tekan F9 untuk compile dan run lalu jendela untuk open GL sample pun keluar dan menghasilkan sebuah garis berbentuk garis diagonal. 

Minggu, 28 Oktober 2012


Jumat, 08 Juni 2012

Tulisan 15: Membuat Form Pada J2ME

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class Midlet01 extends MIDlet {
        private Display display;
        private Form form;

public Midlet01() {
form = new Form(“MIDLET 01″);
form.append(“Aplikasi Midlet Pertama\n”);
form.append(“Universitas Gunadarma”);
}
public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(form);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {
notifyDestroyed();
}
}




Class utama pada aplikasi midlet adalah class yang diturunkan dari class MIDlet yang terdapat pada paket javax.microedition.midlet . Ada tiga method yang harus di-override oleh subclass MIDlet, yaitu:
1. startApp: akan dipanggil pada saat aplikasi midlet dijalankan.
2. pauseApp: akan dipanggil pada saat aplikasi midlet di-pause.
3. destroyApp: akan dipanggil pada saat aplikasi midlet selesai.
Pada method startApp biasanya berisi pernyataan untuk memperoleh objek display dan mengeset objek apa yang akan ditampilkan pada display tersebut.
display = Display.getDisplay(this);

Kode di atas menciptakan objek display dengan memanggil method static pada class Display dengan argumen class ini sendiri (this).
Untuk menampilkan sebuah objek ke display digunakan method setCurrent() dengan argumen sebuah objek Displayable.
display.setCurrent(form);
Kode ini adalah perintah untuk menampilkan form ke dalam display. Display pada ponsel hanya dapat menampilkan sebuah objek Displayable saja dalam satu waktu.
Pada contoh aplikasi midlet pertama kita tadi, hanya menampilkan form kosong dengan judul “MIDLET 01”. Ke dalam form dapat ditambahkan objek-objek lain dengan menggunakan method append. Salah satu objek yang dapat ditambahkan adalah String. Ubahlah program Midlet01.java menjadi sebagai berikut:

Tulisan 14: Contoh Program TextBox J2ME

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class cthTextBox extends MIDlet implements CommandListener
{
Display display;
Alert txtpesan;
Command cmdExit;
Command cmdOk;
TextField txtnama;
TextField txtpass;
Form Form;

public cthTextBox() {}
public void startApp()
{
Form = new Form("UserLogin");
txtnama = new TextField("Nama","",50,TextField.ANY);
txtpass = new TextField("Password","",50,TextField.PASSWORD);
cmdExit=new Command("Exit", Command.EXIT,0);
cmdOk=new Command("Ok", Command.OK,0);
Form.addCommand(cmdExit);
Form.addCommand(cmdOk);
Form.append(txtnama);
Form.append(txtpass);
display=Display.getDisplay(this);
display.setCurrent(Form);
Form.setCommandListener(this);
}

public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
public void commandAction(Command c, Displayable d)
{
if(c==cmdExit)
{
destroyApp(false);
notifyDestroyed();
}
else if(c==cmdOk)
{
txtpesan=new Alert("Pesan");
txtpesan.setString("Data Telah Disimpan");
display.setCurrent(txtpesan);
}
}
}

Tulisan 13: Contoh Program Choice Group J2ME

mport javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;

public class cthChoiceGroup extends MIDlet implements CommandListener
{

private Display display;
private List list;
private Form form;
private ChoiceGroup menu;

private String[] daftarMenu = {
"Pilihan Pertama",
"Pilihan Kedua",
"Pilihan Ketiga",
"Pilihan Keempat",
};

private final Command cmdKeluar= new Command ("Keluar", Command.EXIT,1);
private final Command cmdOK= new Command ("OK", Command.OK,1);
private final Command cmdKembali= new Command ("Kelmbali", Command.BACK,1);

public cthChoiceGroup() {
display = Display.getDisplay(this);
form = new Form("Contoh ChoiceGroup");
form.addCommand(cmdKembali);
form.setCommandListener(this);
}

public void startApp() {
list = new List("Contoh ChoiceGroup", Choice.IMPLICIT);
list.append("Tipe EXCLUSIVE", null);
list.append("Tipe MULTIPLE", null);
list.append("Tipe POPUP", null);
list.addCommand(cmdKeluar);
list.addCommand(cmdOK);
list.setCommandListener(this);

display.setCurrent(list);
}

public void pauseApp(){}

public void destroyApp(boolean unconditional){}

public void commandAction (Command c, Displayable s){
if (c==cmdKeluar){
destroyApp(false);
notifyDestroyed();
} else if (c==cmdKembali){
display.setCurrent(list);
} else {
menu = null;
switch (list.getSelectedIndex()) {
case 0 : {
menu = new ChoiceGroup("Tipe EXCLUSIVE", Choice.EXCLUSIVE, daftarMenu, null);
break;
}
case 1 : {
menu = new ChoiceGroup("Tipe MULTIPLE", Choice.MULTIPLE, daftarMenu, null);
break;
}
case 2 : {
menu = new ChoiceGroup("Tipe POPUP", Choice.POPUP, daftarMenu, null);
break;
}
}
form.deleteAll();
form.append(menu);
display.setCurrent(form);
}
}
}

Tulisan 12: Contoh Program Canvas Pada J2ME

CANVAS

import javax.microedition.lcdui.*;

public class KeyCanvas extends Canvas {
private Font mFont;
private String mMessage = "[Press keys]";
private int x=41;
private int y=115;
private static int w,h;

public KeyCanvas() {
mFont = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_MEDIUM);
}

public void paint(Graphics g) {
w = getWidth();
h = getHeight();

// Clear the Canvas.
g.setGrayScale(255);
g.fillRect(0, 0, w - 1, h - 1);
g.setGrayScale(0);
g.drawRect(0, 0, w - 1, h - 1);

g.setFont(mFont);

g.setColor(0,0,200);
g.fillRect(0,0,w,h);
g.setColor(255,255,255);
g.drawRoundRect(x,y,150,70,40,40);
g.drawString("Tugas J2ME Key Canvas",(x+17),(y+28),g.TOP|g.LEFT);
}

protected void keyPressed(int keyCode) {

int gameAction = getGameAction(keyCode);
switch(gameAction) {
case UP:
y=y-8;
if(y<=0)
y=0;
break;
case DOWN:
y=y+8;
if(y>=218)
y=218;
break;
case LEFT:
x=x-8;
if(x<=0)
x=0;
break;
case RIGHT:
x=x+8;
if(x>=89)
x=89;
break;
}
repaint();
}
}

Tulisan 11: Membuat Ticker Pada J2ME

Berikut adalah codingan beserta hasil outputnya





import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class MIDTicker extends MIDlet implements CommandListener {
 private Form form;
 private Display display;
 private Ticker ticker;
 private Command cmdKeluar;
 public MIDTicker() {
  cmdKeluar = new Command("Keluar", Command.EXIT, 1);
  ticker = new Ticker("Saham TELKOM naik 10 point");
  form = new Form("Ticker");
  form.setTicker(ticker);
  form.addCommand(cmdKeluar);
  form.setCommandListener(this);
 }
 public void startApp() {
  display = Display.getDisplay(this);
  display.setCurrent(form);
 }
 public void pauseApp() {
 }
 public void destroyApp(boolean unconditional) {
 }
 public void commandAction(Command c, Displayable d) {
  if (c == cmdKeluar) {
   destroyApp(false);
   notifyDestroyed();
  }
 }
}

Berikut keterangan kode program di atas:

Untuk membuat objek ticker digunakan baris berikut :

ticker = new Ticker("Ini text berjalan yang akan ditampilan pada layar "); Sedangkan untuk menambahkan objek ticker pada form digunakan method setTicker(objekTicker), seperti di bawah ini :

form.setTicker(ticker); Berbeda pada ponsel lainnya, pada Siemens, teks dari objek ticker menempati baris sama dengan title dari form. Selain itu, teks pada objek ticker hanya berjalan setelah layar saja.

midlet_ticker01

Tulisan 10: Program Looping

Contoh Looping Program pada Pascal

uses crt;
var a,b : integer;
begin
clrscr;
for a:=5 downto 1 do
begin
for b:= a to 5 do
write(b,' ');
writeln;
end;
readln;
end.

Outputnya seperti diawah ini:

5
4 5
3 4 5
2 3 4 5
1 2 3 4 5

Tulisan 9: Contoh Program Determinan dan Transpose pada Pascal

Contoh Program Determinan dan Transpose pada Pascal


Contoh program :




Output :

Jika memilih pilihan 1 maka :


Jika memilih pilihan 2 maka :



Jika memilih pilihan 3 maka :


Tulisan 8: Contoh Program Pascal Output dan Biodata

Contoh Program pascal output dan biodata



LANGKAHNYA:
Buka program pascal dan menuliskan codingnya yaitu sebagai berikut:
Uses crt adalah untuk membersihkan layar.
Begin adalah perintah untuk memulai program.
Clrscr adalah fungsinya sama dengan Uses crt membersihkan layar.
Write adalah Mencetak data pada satu baris.yaitu tuliskan (‘Belajar Pascal’) Dalam kurung dan tanda kutip ini adalah fungsinya untuk mencetak tulisan yang diharapkan. \]
Readln adalah Menahan tampilan layar sampai enter ditekan.
End adalah untuk mengakhiri program.
Dan ingat setiap akhir penulisan coding harus diberikan tanda(;)
Tekan Ctrl+F9 untuk menjalankan program atau klik Run pada programnya.

Setelah langkah diatas dijalankan akan muncul gambar seperti dibawah ini:
Ini adalah hasil cetakan dari program yang sudah dituliskan tadi sesuai dengan perintah yang sudah dituliskan.

PROGRAM 2
LANGKAHNYA:

Buka program turbo pascal 7.0 dan tuliskan coding dibawah ini:
@ Uses crt ;adalah untuk membersihkan layar.
Var nm,npm,kls:string [20];
@ Var adalah untuk menentukan jenis variabel yang dipakai,seperti String yang digunakan untuk menuliskan steatmen karakter,contohnya nama,npm dan kelas.
[20] adalah untuk membatasi karakter sampai dengan 20,bisa juga tidak diberikan.
Begin adalah perintah untuk memulai program.
Clrscr; adalah fungsinya sama dengan Uses crt membersihkan layar.
Write adalah Mencetak data pada satu baris.yaitu tuliskan :
(‘nama saya: ‘);readln (nm);
(‘npm saya: ‘);readln (npm);
(‘kls saya: ‘);readln(kls);
(‘nama saya anita’);readln(nm);
(‘npm saya 36111870’);readln(npm);
(‘kelas saya 1DB11’);readln(kls);
 Dalam kurung dan tanda kutip ini adalah fungsinya untuk mencetak tulisan yang diharapkan.
Readln adalah Menahan tampilan layar sampai enter ditekan.
Writeln; adalah untuk mencetak data kebawah seperti fungsi enter
End adalah untuk mengakhiri program.
Dan ingat setiap akhir penulisan coding harus diberikan tanda(;)
tekan Ctrl+F9 untuk menjalankan program atau klik Run pada programnya.


Setelah program yang ditulis sudah dijalankan maka akan tercetak seperti gambar dibawah ini dan akan diminta untuk memasukan nama,npm dan kelas.Untuk lebih jelasnya bisa dilihat pada gambar dibawah ini:














Tulisan 7: Program Menghitung Jumlah Bilangan Perulangan FOR Dengan Nilai Dinamis

 Ini adalah codingan dari programnya:


program jum_bil2; 
uses wincrt;
var
i, n: integer;
jum, bil: real;
begin
write(‘Banyak bilangan :  ’);read(n);
jum := 0;
For i:= 1 to n do
begin
write(‘Masukkan Bilangan ‘,i, ‘=’);read(bil);
jum := jum+bil;
end;
writeln(‘Jum = ‘,jum:0:2);
end.


Dan ini adalah hasil outputnya setelah dirunning:

Banyak bilangan : 3 
Masukkan Bilangan 1 = 12
Masukkan Bilangan 2 = 13
Masukkan Bilangan 3 = 14
Jum = 39.00

Tulisan 6: Program Menghitung Jumlah Bilangan Perulangan FOR Dengan Nilai Statis

Ini adalah codingan programnya:

program jum_bil; 
uses wincrt;
var
i, jum,bil: integer;
begin
jum:=0; {inisialisasi}
for i:=1 to 5 do
begin
write(‘Masukkan Bilangan = ‘);readln(bil);
jum:=jum+bil;
end;




Dan ini adalah hasil output program setelah dirunning: 

Masukkan Bilangan = 12 
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Jumlah Bilangan = 60

TULISAN 5:

UNTUK PERTAHANKAN KOMITMEN :
•Disaat kamu ingin melepaskan
seseorang...ingatlah pada saat kamu
ingin mendapatkannya
•Disaat kamu mulai tidak
... mencintainya...ingatlah saat pertama
kamu jatuh cinta padanya
•Disaat kamu mulai bosan
dengannya...ingatlah selalu saat
terindah bersamanya
•Disaat kamu ingin
menduakannya...bayangkan jika dia
selalu setia
•Saat kamu ingin
membohonginya...ingatlah disaat dia
jujur padamu
•Maka kamu akan merasakan arti dia
untukmu
Jangan sampai disaat dia sudah tidak
disisimu,
Kamu baru menyadari semua arti
dirinya untukmu
•Yang indah hanya sementara
•Yang abadi adalah kenangan
•Yang ikhlas hanya dari hati
•Yang tulus hanya dari sanubari
•Tidak mudah mencari yang hilang
•Tidak mudah mengejar impian
•Namun yg lebih susah
mempertahankan yg ada
Karena walaupun tergenggam bisa
terlepas juga
•Ingatlah pada pepatah,
"Jika kamu tidak memiliki apa yang
kamu sukai, maka sukailah apa yang
kamu miliki saat ini"
•Belajar menerima apa adanya dan
berpikir positif....
•Hidup bagaikan mimpi, seindah
apapun, begitu bangun semuanya
sirna tak berbekas
•Rumah mewah bagai istana, harta
benda yang tak terhitung, kedudukan,
dan jabatan yg luar biasa, namun...
Ketika nafas terakhir tiba, sebatang
jarum pun tak bisa dibawa pergi
Sehelai benang pun tak bisa dimiliki
Apalagi yang mau diperebutkan
Apalagi yang mau disombongkan
•Maka jalanilah hidup ini dengan
keinsafan nurani
•Jangan terlalu perhitungan
•Jangan hanya mau menang sendiri
•Jangan suka sakiti sesama apalagi
terhadap mereka yang berjasa bagi kita
•Belajarlah tiada hari tanpa kasih
•Selalu berlapang dada dan mengalah
•Hidup ceria, bebas leluasa...
•Tak ada yang tak bisa di ikhlaskan
•Tak ada sakit hati yang tak bisa
dimaafkan
•Tak ada dendam yang tak bisa
terhapus

TULISAN 4: SEJARAH LINKIN PARK

Band Linkin Park adalah grup musik beraliran nu metal yang berasal dari Aguora Hills, California, di Amerika Serikat. Mereka sempat beberapa kali berganti nama, antara lain Xero, Hybrid Theory, hingga nama Linkin Park sampai sekarang. Nama “Linkin Park” sendiri merupakan plesetan dari nama sebuah taman di Los Angeles, Lincoln Park.

Sebelum Chester Bennington menjadi vokalis Linkin Park, Mark Wakefield lebih dulu menjadi vokalisnya. Namun, ia keluar dari Linkin Park – saat itu menggunakan nama Hybrid Theory – untuk menjadi manajer grup musik Taproot. Bassis Dave Farrell alias “Phoenix” juga pernah keluar sebentar dari Linkin Park untuk mengikuti tur bersama band lamanya, Tasty Snax. Sedangkan 4 personil lainnya – Brad Delson, Mike Shinoda, Joe Hahn, dan Rob Bourdon – selalu bertahan di Linkin Park sejak awal pembentukannya.
Sejarah Berdiri Band Linkin Park
Linkin Park telah merilis 3 album studio, yaitu [[Hybrid Theory], Meteora, dan Minutes to Midnight. Linkin Park juga merilis album Live in Texas, Reanimation, dan Collision Course, serta Hybrid Theory EP. Linkin Park sukses dalam mempopulerkan lagu-lagunya seperti Crawling, In the End, Numb, Somewhere I Belong, dan What I’ve Done. Secara total, album-album Linkin Park telah terjual sebanyak 50 juta keping

Pada awal pembentukannya, Linkin Park beraliran rock. Setelah masuknya seorang DJ atau turntablis bernama Joe Hahn, Linkin Park mengganti alirannya menjadi hip-hop. Namun, pada album Hybrid Theory, Linkin Park mengganti lagi alirannya menjadi nu metal dan rapcore. Demikian juga pada album Meteora, hanya saja Linkin Park juga menambahkan unsur elektronika.

Pada album Minutes To Midnight, segalanya berubah total. Linkin Park benar-benar mengurangi unsur nu metal secara spesifik. Sebagai gantinya, Linkin Park menggunakan aliran alternative rock. Ini jelas sebuah eksperimen mengingat kesuksesan Linkin Park dengan genre nu metal dalam album sebelumnya. Tetapi, ternyata eksperimen itu berhasil.

Linkin Park Underground adalah kelompok penggemar Linkin Park yang dibentuk tahun 2001. Jika bergabung dengan LPU (singkatannya) maka bisa memperoleh merchandise khusus untuk anggota LPU. Seperti kaus, asbak, buku, dan album mini (EP).

TULISAN 3: MENCINTAI SEJANTAN ALI

MENCINTAI SEJANTAN ALI
Kisah ini diambil dari buku Jalan Cinta Para Pejuang, Salim A.Fillah

chapter aslinya berjudul “Mencintai sejantan ‘Ali”

Ada rahasia terdalam di hati ‘Ali yang tak dikisahkannya pada siapapun. Fathimah.
Karib kecilnya, puteri tersayang dari Sang Nabi yang adalah sepupunya itu, sungguh memesonanya.
Kesantunannya, ibadahnya, kecekatan kerjanya, parasnya.

Lihatlah gadis itu pada suatu hari ketika ayahnya pulang dengan luka memercik darah dan kepala yang dilumur isi perut unta.
Ia bersihkan hati-hati, ia seka dengan penuh cinta.
Ia bakar perca, ia tempelkan ke luka untuk menghentikan darah ayahnya.
Semuanya dilakukan dengan mata gerimis dan hati menangis. Muhammad ibn ’Abdullah Sang Tepercaya tak layak diperlakukan demikian oleh kaumnya!
Maka gadis cilik itu bangkit.
Gagah ia berjalan menuju Ka’bah.
Di sana, para pemuka Quraisy yang semula saling tertawa membanggakan tindakannya pada Sang Nabi tiba-tiba dicekam diam.
Fathimah menghardik mereka dan seolah waktu berhenti, tak memberi mulut-mulut jalang itu kesempatan untuk menimpali.
Mengagumkan!
‘Ali tak tahu apakah rasa itu bisa disebut cinta.

Tapi, ia memang tersentak ketika suatu hari mendengar kabar yang mengejutkan.
Fathimah dilamar seorang lelaki yang paling akrab dan paling dekat kedudukannya dengan Sang Nabi.
Lelaki yang membela Islam dengan harta dan jiwa sejak awal-awal risalah.
Lelaki yang iman dan akhlaqnya tak diragukan; Abu Bakr Ash Shiddiq, Radhiyallaahu ’Anhu.

”Allah mengujiku rupanya”, begitu batin ’Ali.
Ia merasa diuji karena merasa apalah ia dibanding Abu Bakr.
Kedudukan di sisi Nabi?
Abu Bakr lebih utama,
mungkin justru karena ia bukan kerabat dekat Nabi seperti ’Ali,
namun keimanan dan pembelaannya pada Allah dan RasulNya tak tertandingi.
Lihatlah bagaimana Abu Bakr menjadi kawan perjalanan Nabi dalam hijrah
sementara ’Ali bertugas menggantikan beliau untuk menanti maut di ranjangnya..
Lihatlah juga bagaimana Abu Bakr berda’wah.
Lihatlah berapa banyak tokoh bangsawan dan saudagar Makkah yang masuk Islam karena sentuhan Abu Bakr; ’Utsman, ’Abdurrahman ibn ’Auf, Thalhah, Zubair, Sa’d ibn Abi Waqqash, Mush’ab..
Ini yang tak mungkin dilakukan kanak-kanak kurang pergaulan seperti ’Ali.
Lihatlah berapa banyak budak muslim yang dibebaskan dan para faqir yang dibela Abu Bakr; Bilal, Khabbab, keluarga Yassir, ’Abdullah ibn Mas’ud..
Dan siapa budak yang dibebaskan ’Ali?
Dari sisi finansial, Abu Bakr sang saudagar, insyaallah lebih bisa membahagiakan Fathimah.
’Ali hanya pemuda miskin dari keluarga miskin.

”Inilah persaudaraan dan cinta”, gumam ’Ali.
”Aku mengutamakan Abu Bakr atas diriku, aku mengutamakan kebahagiaan Fathimah atas cintaku.”

Cinta tak pernah meminta untuk menanti.
Ia mengambil kesempatan atau mempersilakan.
Ia adalah keberanian, atau pengorbanan.

Beberapa waktu berlalu, ternyata Allah menumbuhkan kembali tunas harap di hatinya yang sempat layu.
Lamaran Abu Bakr ditolak.
Dan ’Ali terus menjaga semangatnya untuk mempersiapkan diri.
Ah, ujian itu rupanya belum berakhir.
Setelah Abu Bakr mundur,
datanglah melamar Fathimah seorang laki-laki lain yang gagah dan perkasa,
seorang lelaki yang sejak masuk Islamnya membuat kaum muslimin berani tegak mengangkat muka,
seorang laki-laki yang membuat syaithan berlari takut dan musuh-musuh Allah bertekuk lutut.
’Umar ibn Al Khaththab.
Ya, Al Faruq,
sang pemisah kebenaran dan kebathilan itu juga datang melamar Fathimah.
’Umar memang masuk Islam belakangan,
sekitar 3 tahun setelah ’Ali dan Abu Bakr.
Tapi siapa yang menyangsikan ketulusannya?
Siapa yang menyangsikan kecerdasannya untuk mengejar pemahaman?
Siapa yang menyangsikan semua pembelaan dahsyat yang hanya ’Umar dan Hamzah yang mampu memberikannya pada kaum muslimin?
Dan lebih dari itu,
’Ali mendengar sendiri betapa seringnya Nabi berkata,
”Aku datang bersama Abu Bakr dan ’Umar, aku keluar bersama Abu Bakr dan ’Umar, aku masuk bersama Abu Bakr dan ’Umar..”
Betapa tinggi kedudukannya di sisi Rasul, di sisi ayah Fathimah.

Lalu coba bandingkan bagaimana dia berhijrah dan bagaimana ’Umar melakukannya.
’Ali menyusul sang Nabi dengan sembunyi-sembunyi, dalam kejaran musuh yang frustasi karena tak menemukan beliau Shallallaahu ’Alaihi wa Sallam.
Maka ia hanya berani berjalan di kelam malam.
Selebihnya, di siang hari dia mencari bayang-bayang gundukan bukit pasir.
Menanti dan bersembunyi.
’Umar telah berangkat sebelumnya.
Ia thawaf tujuh kali, lalu naik ke atas Ka’bah.
”Wahai Quraisy”, katanya.
”Hari ini putera Al Khaththab akan berhijrah.
Barangsiapa yang ingin isterinya menjanda, anaknya menjadi yatim, atau ibunya berkabung tanpa henti, silakan hadang ’Umar di balik bukit ini!”
’Umar adalah lelaki pemberani.
’Ali, sekali lagi sadar.
Dinilai dari semua segi dalam pandangan orang banyak, dia pemuda yang belum siap menikah.
Apalagi menikahi Fathimah binti Rasulillah! Tidak.
’Umar jauh lebih layak.
Dan ’Ali ridha.

Cinta tak pernah meminta untuk menanti.
Ia mengambil kesempatan.
Itulah keberanian.
Atau mempersilakan.
Yang ini pengorbanan.

Maka ’Ali bingung ketika kabar itu meruyak.
Lamaran ’Umar juga ditolak.
Menantu macam apa kiranya yang dikehendaki Nabi?
Yang seperti ’Utsman sang miliarder kah yang telah menikahi Ruqayyah binti Rasulillah?
Yang seperti Abul ’Ash ibn Rabi’ kah, saudagar Quraisy itu, suami Zainab binti Rasulillah?
Ah, dua menantu Rasulullah itu sungguh membuatnya hilang kepercayaan diri.
Di antara Muhajirin hanya ’Abdurrahman ibn ’Auf yang setara dengan mereka.
Atau justru Nabi ingin mengambil menantu dari Anshar untuk mengeratkan kekerabatan dengan mereka?
Sa’d ibn Mu’adz kah, sang pemimpin Aus yang tampan dan elegan itu?
Atau Sa’d ibn ’Ubadah, pemimpin Khazraj yang lincah penuh semangat itu?

”Mengapa bukan engkau yang mencoba kawan?”, kalimat teman-teman Ansharnya itu membangunkan lamunan.
”Mengapa engkau tak mencoba melamar Fathimah? Aku punya firasat, engkaulah yang ditunggu-tunggu Baginda Nabi..”
”Aku?”, tanyanya tak yakin.
”Ya. Engkau wahai saudaraku!”
”Aku hanya pemuda miskin. Apa yang bisa kuandalkan?”
”Kami di belakangmu, kawan! Semoga Allah menolongmu!”

’Ali pun menghadap Sang Nabi.
Maka dengan memberanikan diri, disampaikannya keinginannya untuk menikahi Fathimah.
Ya, menikahi.
Ia tahu, secara ekonomi tak ada yang menjanjikan pada dirinya.
Hanya ada satu set baju besi di sana ditambah persediaan tepung kasar untuk makannya.
Tapi meminta waktu dua atau tiga tahun untuk bersiap-siap?
Itu memalukan! Meminta Fathimah menantikannya di batas waktu hingga ia siap?
Itu sangat kekanakan. Usianya telah berkepala dua sekarang.
”Engkau pemuda sejati wahai ’Ali!”, begitu nuraninya mengingatkan.
Pemuda yang siap bertanggungjawab atas rasa cintanya.
Pemuda yang siap memikul resiko atas pilihan-pilihannya.
Pemuda yang yakin bahwa Allah Maha Kaya.

Lamarannya berjawab, ”Ahlan wa sahlan!”
Kata itu meluncur tenang bersama senyum Sang Nabi.
Dan ia pun bingung.
Apa maksudnya?
Ucapan selamat datang itu sulit untuk bisa dikatakan sebagai isyarat penerimaan atau penolakan.
Ah, mungkin Nabi pun bingung untuk menjawab.
Mungkin tidak sekarang.
Tapi ia siap ditolak.
Itu resiko.
Dan kejelasan jauh lebih ringan daripada menanggung beban tanya yang tak kunjung berjawab.
Apalagi menyimpannya dalam hati sebagai bahtera tanpa pelabuhan.
Ah, itu menyakitkan.

”Bagaimana jawab Nabi kawan? Bagaimana lamaranmu?”
”Entahlah..”
”Apa maksudmu?”
”Menurut kalian apakah ’Ahlan wa Sahlan’ berarti sebuah jawaban!”
”Dasar tolol! Tolol!”, kata mereka,
”Eh, maaf kawan.. Maksud kami satu saja sudah cukup dan kau mendapatkan dua!
Ahlan saja sudah berarti ya. Sahlan juga. Dan kau mendapatkan Ahlan wa Sahlan kawan! Dua-duanya berarti ya!”

Dan ’Ali pun menikahi Fathimah.
Dengan menggadaikan baju besinya.
Dengan rumah yang semula ingin disumbangkan kawan-kawannya tapi Nabi berkeras agar ia membayar cicilannya.
Itu hutang.

Dengan keberanian untuk mengorbankan cintanya bagi Abu Bakr, ’Umar, dan Fathimah.
Dengan keberanian untuk menikah.
Sekarang.
Bukan janji-janji dan nanti-nanti.
’Ali adalah gentleman sejati.
Tidak heran kalau pemuda Arab memiliki yel,
“Laa fatan illa ‘Aliyyan! Tak ada pemuda kecuali Ali!”

Inilah jalan cinta para pejuang.
Jalan yang mempertemukan cinta dan semua perasaan dengan tanggungjawab.
Dan di sini, cinta tak pernah meminta untuk menanti.
Seperti ’Ali.
Ia mempersilakan.
Atau mengambil kesempatan.
Yang pertama adalah pengorbanan.
Yang kedua adalah keberanian.

Dan ternyata tak kurang juga yang dilakukan oleh Putri Sang Nabi, dalam suatu riwayat dikisahkan bahwa suatu hari (setelah mereka menikah) Fathimah berkata kepada ‘Ali,

“Maafkan aku, karena sebelum menikah denganmu. Aku pernah satu kali merasakan jatuh cinta pada seorang pemuda”

‘Ali terkejut dan berkata, “kalau begitu mengapa engkau mau manikah denganku? dan Siapakah pemuda itu”

Sambil tersenyum Fathimah berkata, “Ya, karena pemuda itu adalah Dirimu”

Kisah ini disampaikan disini, bukan untuk membuat kita menjadi mendayu-dayu atau romantis-romantis- an

Kisah ini disampaikan agar kita bisa belajar lebih jauh dari ‘Ali dan Fathimah bahwa ternyata keduanya telah memiliki perasaan yang sama semenjak mereka belum menikah tetapi dengan rapat keduanya menjaga perasaan itu

Perasaan yang insyaAllah akan indah ketika waktunya tiba

TULISAN 2: PROGRAM SEDERHANA DENGAN C++

Dibawah ini merupakan contoh program dengan menggunakan bahasa pemrograman C++.

1.    Membuat program perkalian matriks berordo 2X2
Pemrograman dengan Dev-C++ :
#include <cstdlib>
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char *argv[])
{
    int a[2][2],b[2][2],m,n;
    for(m=0;m<2;m++)
    {
    for(n=0;n<2;n++)
    {
    cout<<"masukkan nilai matriks a("<<m<<","<<n<<"):";
    cin>>a[m][n];
    }
    }
    for(m=0;m<2;m++)
    {
    for(n=0;n<2;n++)
    {
    cout<<"masukkan nilai matriks b("<<m<<","<<n<<"):";
    cin>>b[m][n];
    }
        }
    cout<<"C:\n";
    for(m=0;m<2;m++)
    {
    for(n=0;n<2;n++)
    {
    cout<<setw(3)<<(a[m][0]*b[0][n]+ a[m][1]*b[1][n]);
    }
    cout<<'\n';
    }
system("PAUSE");
return EXIT_SUCCESS;
}
Pembahasan Program diatas :
·        Pendeklarasian variable array 2x2
·        perulangan Input untuk Dua matriks
·        Proses perkalian
·        output hasil matriks
hasilnya sebagai berikut :
program matriks 
dengan bahasa C++
gambar program perkalian matriks dengan Dev-C++
2.    Membuat program untuk melakukan perhitungan factorial.
Pemrograman dengan Dev-C++ :
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
    long a,b,m;
    cout<<"masukkan nilai factorial:";
    cin>>a;
    b=1;
    for(m=1;m<=a;m++)
    b=b*m;
    cout<<"Hasil faktorial dari"<<a<<" adalah"<<b;
system("PAUSE");
return EXIT_SUCCESS;
}
Pembahasan Program diatas :
·        Pendeklarasian a,b,m
·        masukkan nilai a
·        Proses
·        tampilkan hasil faktorial
hasilnya sebagai berikut :
program 
faktorial dengan Dev-C++
gambar program penghitung faktorial  dengan Dev-C++
3.    Membuat program penjumlahan matriks berordo 2X2
Pemrograman dengan Dev-C++ :
#include <cstdlib>
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char *argv[])
{
     int a[2][2],b[2][2],m,n;
     for(m=0;m<2;m++)
     {
     for(n=0;n<2;n++)
     {
     cout<<"masukkan nilai matriks a("<<m<<","<<n<<"):";
     cin>>a[m][n];
    }
     }
     for(m=0;m<2;m++)
     {
     for(n=0;n<2;n++)
     {
     cout<<"masukkan nilai matriks b("<<m<<","<<n<<"):";
     cin>>b[m][n];
     }
     }
     cout<<"C:\n";
     for(m=0;m<2;m++)
     {
     for(n=0;n<2;n++)
     {
     cout<<setw(3)<<(a[m][n]+b[m][n]);
     }
     cout<<'\n';
     }
system("PAUSE");
return EXIT_SUCCESS;
}
Pembahasan Program diatas :
·        Pendeklarasian variable array 2x2
·        perulangan Input untuk Dua matriks
·        Proses penjumlahan
·        output hasil matriks
hasilnya sebagai berikut :
program 
penjumlahan matriks dengan bahasa C++
gambar program penjumlahan matriks dengan Dev-C++
4.    Membuat Program perhitungan nilai Luas=panjang*Lebar.
Pemrograman dengan Dev-C++ :
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
long luas, panjang, lebar;
cout<<"masukkan nilai Panjang:";
cin>>panjang;
cout<<"masukkan nilai Lebar:";
cin>>lebar;
luas=panjang*lebar;
cout<<"Maka Luasnya adalah:"<<luas;
system("PAUSE");
return EXIT_SUCCESS;
}
Pembahasan Program diatas :
·        Pendeklarasian variable Luas, Panjang dan Lebar
·        inputkan nilai panjang
·        inputkan nilai Lebar
·        Proses Luas=Panjang*Lebar
·        tampilkan hasil Luas
hasilnya sebagai berikut :
program 
matematika sederhana dengan C++=
gambar program penghitung luas dengan Dev-C++
5.    Program perulangan untuk menampilkan angka satu sampai dengan sepuluh dengan keterangan bilangan ganjil atau genap.
Pemrograman dengan Dev-C++ :
#include <cstdlib>
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char *argv[])
{
    int i, angka[10];
    for(i=1;i<=10;i++)
    angka[i-1]=i;
    for(i=0;i<=9;i++)
    {
    if (angka[i]%2==0)
    cout<<"angka"<<angka[i]<<"adalah Bilangan Genap"<<endl;
    else
    cout<<"angka"<<angka[i]<<"adalah Bilangan Ganjil"<<endl;
    }
    system("PAUSE");
    return EXIT_SUCCESS;
}
Pembahasan Program diatas :
·        Pendeklarasian variable i, array angka
·        pengisian array angka
·        proses perulangan for 0 s/d 10
·        proses logika nested-If
·        penaikan nilai i
hasilnya sebagai berikut :
program angka 
dengan bahasa C++
gambar program loop angka dengan Dev-C++
 
jangan lupa diperhatikan besar kecilnya huruf karena bisa sangat berpengaruh dengan hasil yang akan ditampilkan...

TULISAN 1: MEMBUAT PROGRAM DATE AND TIME PADA J2ME

Ini adalah contoh program sederhana yang dapat dibuat dengan menggunakan j2me...




import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class Kalender extends MIDlet implements CommandListener,ItemStateListener
{
private Display tampil;
private Form form;
private Command cmdExit;
private DateField df;

public Kalender()
{
tampil = Display.getDisplay(this);
df = new DateField(“Tanggal Sekarang : “,DateField.DATE);
df.setDate(new java.util.Date());
cmdExit = new Command(“Keluar”,Command.EXIT,0);
//Menambahkan aksi keluar
form = new Form(“Kalender J2ME”); //Title Form
form.addCommand(cmdExit);
form.append(df);
form.setCommandListener(this);
form.setItemStateListener(this);
}

public void startApp()
{
tampil.setCurrent(form);
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}

public void commandAction(Command com,Displayable dis)
{
if(com == cmdExit)
{
destroyApp(true);
notifyDestroyed();
}
}

public void itemStateChanged(Item itm)
{
df.setLabel(“Tanggal Baru: “);
}
}

Tampilan


CHAPTER 13&14: UANG, BANK, DAN PENCIPTAAN UANG

UANG      
       Uang adalah benda yang telah menjadi alat tukar dan pembayaran yang sah. Karena sebelum ada uang, masyarakat bertransaksi dengan cara barter, yaitu menukarkan barang dengan barang lainnya. Dengan adanya uang kita bisa mendapatkan suatu barang dengan menukarkannya dengan uang tersebut berdasarkan nominal yang telah disepakati.
FUNGSI UANG
1.            Fungsi asli = sebagai alat tukar, satuan hitung dan penyimpan nilai
2.            Fungsi turunan = sebagai alat penimbun kekayaan, pemindah kekayaan dan pembayaran  yang ditangguhkan.
JENIS-JENIS UANG
1.            Uang kartal = terdiri dari uang logam dan kertas
2.            Uang giral = surat berharga yang dapat diuangkan kapanpun jika kita membutuhkan
SYARAT-SYARAT UANG
1.            Diterima secara umum (acceptability)
2.            Harus tahan lama (durability)
3.            Kualitasnya cenderung sama (uniformity)
4.            Dapat memenuhi kebutuhan masyarakat dan tidak mudah dipalsukan (scarcity)
5.            Mudah dibawa, portable dan mudah dibagi tanpa mengurangi nilai (divisibility)
6.            Memiliki nilai yang cenderung stabil dari waktu kewaktu (stability of value)
Teori Uang dan Motif memegang Uang
Macam-macam Uang :
- Uang Kartal: Uang yang diakui dan sah sebagai alat pembayaran baik kertas maupun logam
- Uang Giral: uang yang diakui sebagai alat pembayaran akan tetapi hanya “sah” bagi fihak-fihak yang mengakui dan menerimanya
Motif Memegang Uang
•             Transaksi (Transaction Motive).
•             Berjaga-jaga (Precautionary Motive).
•             Spekulasi (Speculation Motive).
BANK
       Bank adalah suatu badan usah yang menghimpun dana dari masyarakat dalam bentuk simpanan dan menyalurkan kepada masyarakat dalam bentuk kredit, dll dalam rangka meningkatkan taraf hidup masyarakat.
JENIS-JENIS BANK
1.            Bank sentral = badan usaha pemerintah yang bertanggung jawab atas kebijakan moneter suatu negara. tugasnya menjaga stabilitas nilai mata uang, stabilitas sektor perbankan dan sistem finansial secara keseluruhan.
2.            Bank umum = bank yang melaksanakan kegiatan usaha secara konvensional atau prinsip syariah yang dalam kegiatannya memberikan jasa dalam lalu lintas pembayaran.
PENCIPTAAN UANG  
       Ada tiga cara menciptakan uang yaitu:
1.            Pertama dengan mencetak uang kertas dan uang logam
2.            kedua melalui pengadaan utang dan pinjaman
3.            ketiga melalui beragam kebijakan pemerintah, seperti pelonggaran kuantitatif
beberapa tahapan Bank Indonesia menerbitkan uang baru yaitu:
1.            Perencanaan pengeluaran rupiah baru
2.            Desain dan spesifikasi uang
3.            Pencetakan uang
4.            Penerbitan ketentuan
5.            Sosialisasi dan edukasi yang baru
Kebijaksanaan Moneter
Kebijaksanaan Moneter adalah kebijaksanaan yang diambil oleh pemerintah, yang berkenaan dengan jumlah uang yang beredar dalam masyarakat.
Kebijakan moneter bertujuan untuk mencapai keseimbangan internal dan keseimbangan eksternal.  Kebijakan moneter adalah upaya untuk mencapai tingkat pertumbuhan ekonomi yang tinggi secara berkelanjutan dengan tetap mempertahankan kestabilan harga. Untuk mencapai tujuan tersebut Bank Sentral berusaha mengatur keseimbangan antara persediaan uang dengan persediaan barang agar inflasi dapat terkendali, tercapai kesempatan kerja penuh dan kelancaran dalam pasokan/distribusi barang.
Kebijakan moneter dapat digolongkan menjadi dua, yaitu :
1. Kebijakan Moneter Ekspansif / Monetary Expansive Policy Adalah suatu kebijakan dalam rangka menambah jumlah uang yang edar
2. Kebijakan Moneter Kontraktif / Monetary Contractive Policy Adalah suatu kebijakan dalam rangka mengurangi jumlah uang yang edar. Disebut juga dengan kebijakan uang ketat (tight money policy)
Tujuan Kebijaksanaan moneter :
1. Untuk menyesuaikan jumlah uang yang beredar dalam masyarakat
2. Mengarahkan penggunaan uang dan kredit, sehingga nilai uang negara yangbersangkutan dapat dipertahankan kestabilannya
3. Mendorong produsen untuk meningkatkan kegiatan produksinya
4. Mengusahakan agar kebijakan moneter dapat dilaksanakan tanpa memberatkan beban keuangan negara maupun masyarakat