Friday, January 22, 2010

Chrome Experiment

Java script menjadi bahasa scripting yang paling populer saat ini, khususnya aplikasinya di halaman web. Sedikit website didunia ini yang tidak menggunakan javascript.  Fungsinya sangat luas, dari yang sekedar untuk sesuatu yang tidak penting sampai untuk urusan hacking. Apabila berpikir javascript hanya di peruntukan untuk manipulasi halaman web saja, itu salah.
Di website Chrome Experiment , ada lebih dari 70 aplikasi web yang mengaggumkan yang di buat dengan salah satu komponennya adalah java script, mulai dari  game, animasi,   sampai editor gambar. Aplikasi web merupakan karya desainer dan programmer  dari seluruh dunia dengan  menggunakan java script yang dipadukan dengan element html5 yang disebut canvas, SVG dan beberapa tool javascript seperti  JQuery.
Beberapa aplikasi yang ada di situ di buat dengan sangat mengaggumkan, tidak hanya halaman web yang dapat dimanupulasi oleh javascript, tapi juga jendela  browser dan komponen-komponennya, seperti pada aplikasi Pong.  Mirip seperti game Pong yang dikenal pada jaman dahulu, namun pong disini menggunakan jendela browser sebagai bola dan pemukulnya.  Aplikasi mengaggumkan lainnya  masih banyak, seperti Google Gravity, Depth Of fieldCanvas 3D engine, Canopy dll.

 
Pong dengan jendela browser

 

Google Gravity

Depth Of field dan Canvas 3D Engine  merupakan beberapa contoh bagaimana javascript dan canvas merender bentuk 3 Dimensi di jendela  browser. Jadi bukan hanya aplikasi desktop saja yang dapat menampilkan bentuk 3 dimensi.  Ini menunjukan bahwa bukan tidak mungkin nantinya akan ada website yang kontennya di tampilkan dalam bentuk 3 dimensi. 


Depth Of Field






 Canvas 3d Engine, render bentuk 3 dimensi

Jika dilihat dari nama websitenya, tentunya chrome experiments ada hubungannya dengan Google Chrome. Tapi bukan berarti Aplikasi disana hanya bisa di gunakan di Google Chrome. Firefox, Safari, dan Opera versi baru yang sudah mendukung standar HTML yang baru juga bisa menjalankannya. Kecuali IE yang tidak disarankan untuk dipakai. Hanya saja, Google Chrome merupakan browser  yang  menjalankan javascript paling cepat. Jadi untuk tampilan terbaik, gunakan Google Chrome. Selain itu, Chrome Experiment dibuat agar web lebih cepat, menyenangkan dan  terbuka. Itu juga merupakan tujuan dibuatnya Google Chrome.
Dan siapa tahu, salah satu aplikasi di Chrome Experiment  merupakan embrio dari tampilan website di masa mendatang. (AHP 21 Januari 2009 11:34)

Monday, January 11, 2010

Hal Yang Istimewa di Google Wave


Pada postingan sebelumya saya sudah menjelaskan tentang fungsi di buatnya Google Wave. Seperti janji saya di postingan itu, kali ini saya membahas lebih lanjut mengenai Google Wave. Google Wave bisa dikatakan sebagai generasi email selanjutnya, yang menggabungkan antara fungsi email, instant massaging, social networking dan file sharing.
Secara umum, apa yang istimewa di Google Wave adalah konsep cara berkomunikasinya. Paradigma yang ditawarkan Google Wave mengubah cara kita berkomunikasi dengan orang lain dalam internet. Saat ini kita masih nyaman dengan chatting, email, attachment file. Di Google Wave semua itu dapat dilakukan dengan lebih mudah dan terstruktur.
Kita juga dapat menggabungkan antara komunikasi dengan sharing dokumen. Bila sekarang, saat sedang bekomunikasi dengan orang lain, apabila ingin membagi file dengan mereka, maka harus menggunakan tempat yang terpisah dan mungkin kita harus menyediakan link. Di Google Wave antara tempat untuk berkomunikasi dan untuk berbagi file menjadi satu, komunikasi sekaligus sharing file tanpa harus berpindah-pindah tempat, tidak ada layanan lain yang seperti ini
Berikut ini adalah kemampuan dan fitur-fitur dalam google wave yang mampu membuat dia dapat melakukan itu :


Realtime
Maksudnya realtime disini adalah, ketika kita mengetikan sesuatu di Wave, maka pada saat itu juga proses kita mengetik dapat dilihat oleh teman kita yang ada dalam Wave tersebut karakter demi karakter. Berbeda dengan kebanyakan alat input yang ada di website sekarang ini, yang harus mengklik tombol submit atau semacamnya agar orang lain dapat membacanya. DI Google Wave, tidak butuh klik tombol seperti itu, tinggal tulis di Wave, maka orang lain dapat langsung membacanya. Ini memberikan kesan tersendiri pada percakapan yang kita lakukan. Seperti berada dalam satu ruangan. Selain teks, file-file lain yang di upload di Wave juga dapat langsung di akses oleh orang lain dalam wave.

Wiki
Dengan fungsi wiki ini, tulisan yang di ketik oleh siapapun di Wave dapat di edit oleh orang lain. Berbeda dengan media komunikasi lainnya yang tidak mengijinkan kita untuk mengedit tulisan yang dipost oleh orang lain. Di Google Wave itu dapat dilakukan, ini berguna untuk kolaborasi dalam mengerjakan sesuatu. Misalnya ketika membuat proposal atau tugas, tiap orang yang ada dalam wave dapat ikut berkontribusi dengan mudah. Masing-masing orang dapat mengerjakan bagian yang berbeda dalam waktu yang sama. Pekerjaan yang memerlukan kolaborasi seperti itu akan jauh lebih cepat dengan Google Wave, bahkan bisa lebih cepat dibandingkan berkumpul secara fisik.
Bagaimana kalau tulisan kita di edit dengan tidak bertanggung jawab oleh orang lain? Jangan kuatir, apabila ada orang lain yang mengedit, maka dia akan tercatat sebagai kontributor. Siapapun yang ada dalam wave akan tahu siapa saja yang mengedit. Lagipula dengan fitur wiki, kita dapat dengan mudah mengoreksi kata-kata yang salah dari orang lain ataupun dari kita sendiri.

Upload Dengan Drag & Drop
Rutinitas yang kita lakukan ketika akan upload file adalah mengklik tombol browser atau sejenisnya, mencari file yang akan di upload, kemudian klik upload dan tunggu hingga selesai. Dengan Google Wave kita tidak perlu mengupload file dengan menggunakan ritual tersebut. Cukup drag&drop file dari windows explorer ke jendela wave di Google Wave, dan file akan di upload dan dapat dilihat oleh orang dalam Wave seketika itu juga. Fungsi ini sangat memudahkan kita untuk membagi file, mau download berapapun file, cukup hanya dengan satu tarikan saja.
Namun fungsi drag & drop ini hanya berlaku bila menggunakan Google Chrome atau Browser yang menggunakan plugin google gears. Teman saya menggunakan Firefox dan Safari, disana drag & drop tidak berfungsi, Di Opera, Google Wave tidak bisa berjalan sama-sekali.


Extensions
Ekstension merupakan aplikasi tambahan yang menjadi daya tarik di Google Wave. Ada dua jenis extension Google Wave, yaitu Robots dan Gadgets.
Robots adalah extension yang dapat berinteraksi langsung dengan kita melalui wave. Robots berwujud seperti alamat wave yang dapat di tambahkan di daftar kontak kita. Cara menggunakannya seperti ketika menambahkan partisipan lain dalam wave. Begitu di tambahkan, robots akan bekerja secara otomatis sesuai dengan fungsi yang dilakukannya.


Robots dapat berlaku seperti pengguna manusia, dia dapat memodifikasi informasi dalam wave, berinteraksi dengan pengguna, berkomunikasi dengan Wave lainnya dan mengambil informasi dari website luar.
Contoh robots yang menurut saya menarik adalah Eliza robot (elizarobot@appspot.com). Robots ini berfungsi seperti ECCEliza yang pernah saya jelaskan disini. Eliza robot adalah aplikasi kecerdasan buatan yang mencoba mengerti dan memberi respon apa yang kita katakan.

Robots Eliza dalam Wave

Sedangkan Gadget merupakan aplikasi tambahan yang dapat ditambahkan di Wave untuk menambah fungsionalitas atau hanya untuk sekedar hiburan. Gadget dengan fungsi-fungsi penting hingga hanya sekedar game bisa ditambahkan di Google Wave. Oya, di Google Wave, game dapat dimainkan multiplayer secara realtime sehingga bisa memberikan kesan tersendiri apabila dimainkan secara beramai-ramai.


Contoh Gadget :Sudoku, Permainan sederhana yang mengasikan di Google Wave

Image Slideshow
Sebenarnya bukan fungsi yang istimewa, tapi lumayan menarik. Dengan Image Slide show kita bisa melihat slideshow gambar yang di upload dalam Wave. Tampilan slideshownya bagus dan tidak terlalu memberatkan.


Image Slideshow

Playback
Playback adalah salah satu fitur unggulan di Google wave. Dengan Playback, kita bisa melihat kembali rekaman aktifitas di Wave yang telah berlalu. Detail yang di tampilkan lengkap dan kronologis. Playback sangat berguna ketika kita ingin tahu bagaimana kronologis aktifitas di Wave.

Playback

Itu Saja fitur-fitur Google Wave? Tentu saja tidak….itu hanya sebagian kecil saja, masih banyak fitur-fitur lain yang terdapat dalam Apalagi saat ini Google Wave masih dalam masa pengembangan, Mungkin saja nantinya fitur-fitur baru akan ditambahkan untuk fungsionalitas Google Wave. Kita tunggu saja apa yang akan ditambahkan pengembang Google Wave kedepannya…(AHP 11 Januari 2010 20:57)

Friday, January 8, 2010

Berkomunikasi Dan Kolaborasi Dengan Google Wave


Google Wave merupakan layanan baru dari google yang inovatif. Pertama diluncurkan pada 27 Mei 2009, Google wave di buat sebagai layanan web yang menawarkan komunikasi dan kolaborasi. Cara komunikasi yang ditawarkan google Wave adalah penggabungan antara email, instant massaging, wiki, file sharing dan social networking. Secara singkat, Google Wave adalah platform untuk berkomunikasi secara real time.

Saat artikel ini ditulis Google Wave masih dalam tahap Preview, untuk menggunakannya, kita tidak bisa asal mendaftar, tapi harus di undang dulu oleh teman lain, atau mengajukan diri langsung ke Google. Saat saya menggunakan Google Wave, kadang masih ada error dan harus di refresh, namun itu jarang. Saya tidak tahu kapan Google Wave akan dirilis secara resmi.


Komunikasi Dengan Wave

Bentuk komunikasi yang dilakukan google wave berbeda dengan layanan yang ada saat ini, jika dibilang mirip email, memang mirip, namun yang dilakukannya lebih dari itu, Seperti yang sudah dikatakan tadi Google Wave merupakan penggabungan antara email, instant massaging, wiki, file sharing dan social networking. Sulit terbayang? Memang apabila belum menggunakan langsung, memang sulit dibayangkan.

Wave adalah sebuah ruang yang dapat diisi oleh orang-orang yang bisa saling berkolaborasi mengerjakan atau diskusi tentang sesuatu. Disana tiap pengguna dapat membagi filenya kepada pengguna yang lain yang ada di ruang itu, dapat saling mengomentari, mengoreksi bahkan mengedit tulisan pengguna lain.

Baik, untuk membayangkan bagaimana antar pengguna berkomunikasi, kita pakai contoh. Misalnya seseorang bernama Paidu bersama anggota kelompoknya ingin mengerjakan tugas kelompok dari dosen. Sayangnya hari itu hujan lebat, sehingga mereka tidak bisa berkumpul. Karena itu, Paidu memutuskan menggunakan Google Wave. Pertama, dia membuat wave baru, dan mengundang semua anggota kelompoknya. Di Wave itu paidu memberikan draft tugas yang masih mentah, disitu teman-temannya dapat mengedit dan menambahkan sesuatu ke draft tugas secara realtime, mereka juga dapat berdiskusi mengenai tugas secara realtime, memberikan gambar, bahkan bermain game bersama-sama ketika tugasnya sudah kelar.


User Interface Google Wave

Kegiatan paidu diatas adalah salah satu contoh penggunaan google wave dalam kegiatan sehari-hari. Masih banyak lagi hal yang dapat dilakukan dengan Google Wave, mulai dari Rapat penting, brainstorming hingga sekedar bermain game bersama-sama.

Cara komunikasi yang dilakukan Google Wave merupakan revolusi dengan sistem yang ada saat ini. Mungkin saat ini kita masih terbiasa komunikasi dengan e-mail, instant massaging dan alat komunikasi tradisional lainnya, namun Google wave memberikan pengalaman yang berbeda saat berkomunikasi dengan orang lain.

Google Wave tidak di buat untuk menyamai Facebook, Twitter atupun layanan sejenis lainnya, Google Wave dibuat dengan fungsi yang berbeda. Tidak ada layanan seperti pamer foto atau saling komentar status di Google Wave, karena memang dibuat bukan untuk itu. Google Wave di buat sebagai platform komunikasi dan kolaborasi untuk semua orang. Meskipun begitu, kita kan masih menemukan fitur-fitur facebook atau twitter, bahkan Google Wave bisa di kolaborasikan dengan 2 layanan itu.


Masih Kurang?

Baiklah, saya tahu. Di postingan selanjutnya, saya akan fokus ke Google Wave menjelaskan apa yang menjadi istimewa di google Wave, apa itu ekstension, gadget dan robot. Postingan ini fokus ke apa fungsi dasar dari google wave terlebih dahulu. So tunggu saja dan tetap perhatikan blog ini, atau akan ketinggalan.

(AHP, 09 Januari 2009 11:30)

Thursday, January 7, 2010

Kumpulan Source code Sederhana Dalam Bahasa Pascal

Hampir senada dengan postingan yang linked list, Kali ini saya juga akan menshare kumpulan source code program-program kecil dalam bahasa pascal. Meskipun masih sederhana dan mungkin tidak cocok untuk programmer yang sudah mapan, tulisan ini saya harap bisa berguna untuk mereka yang masih atau mau belajar memprogram. Karena sebelum memahami hal yang rumit, harus paham yang sederhana dulu kan?  Dengan membaca kode-kode pascal yang ada disini, semoga bisa menambah pemahaman tentang pemprograman.
Bila dasar source code yang Linked List bukan saya yang membuat,  semua yang ada disini adalah kode yang saya tulis sendiri. Sebagian di kerjakan sebagai jurnal praktikum di kampus, sebagian tugas dari dosen, dan sisanya adalah hasil iseng-iseng. Jadi, saya jamin code disini tidak akan di temui di website atau blog lain, kecuali mereka memplagiat artikel ini. Jadi merasa beruntunglah sudah kesini, hwahwahwahah (tertawa setan)
Silahkan cermati, hayati, lalu komentari. Kalau ada yang kurang jelas, Tanyakanlah…..

Prosedur dan Fungsi
Di sub judul ini, ada 4 source code yang mengandung fungsi dan prosedur. Fokus yang ada disini adalah bukan mengenai bagaimana isi prosedur itu, tapi lebih ke bagaimana penggunaan fungsi dan prosedur itu. Tentang bagaimana deklarasinya, penerapan parameter, pemanggilannya dan sebagainya… Contoh disini dimulai dari yang paling sederhana hingga yang lebih ribet sedikit…..

Dilatasi
Fungsi : Mengalikan dua buah angka yang dimasukan dengan angka tertentu.
Hint : -
Screenshot Output:



uses crt;
var absis,ordinat,pengali:integer;
procedure dilat(a,b,peng:integer);
   var c,d:integer;
   begin
    c:=a*peng;
    d:=b*peng;
    writeln('(',c,',',d,')');
   end;
begin
  writeln('Kordinat Awal');
  write('Absis : ');readln(absis);
  write('Ordinat : ');readln(ordinat);
  writeln;
  write('masukan faktor pengali ');readln(pengali);
  write('Kordinat (',absis,',',ordinat,') setelah didilatasikan terhadap faktor ',pengali,' menjadi ');
  dilat(absis,ordinat,pengali);
  readln;
end.



Mencari Penyelesaian Fungsi Kuadrat

Fungsi : Mengitung nilai persamaan kuadrat bila nilai x diketahui
Hint: Masukan  nilai a,b,c  dan nilai x.
Screen Shot :


uses crt;
var x,y,z,s:integer;
function fungsi(a,b,c,x:integer):integer;
    begin
       fungsi:=a*(x*x)-b*x+c;
    end;
begin
   write('masukan a : ');readln(x);
   write('masukan b : ');readln(y);
   write('masukan c : ');readln(z);
   write('masukan x : ');readln(s);
   writeln('f(x)=',x,'(x^',x,'2)-',y,'x+',z);
   writeln('f(',s,') =',fungsi(x,y,z,s));
   readln;
end.


Menghitung Waktu Gerhana

Fungsi : Menghitung tanggal gerhana pada bulan tertentu dengan rumus yang sudah ada.
Hint: Sebenarnya intinya hanya membuat prosedur yang menampilkan jumlah hari dalam bulan tertentu..waktu gerhana ini sebagai tambahan saja.
Screen Shot :




uses crt;
var b,ha,ger:integer;
      bul:string;
procedure maks(s:integer);
    var y,k:integer;
    begin
      case s of
        1,3,5,7,8,10,12:ha:=31;
        4,6,9,11:ha:=30;
        2:begin
            write('masukan tahun ');readln(y);
            k:=y mod 4;
            if k=0 then
              ha:=28
           else ha:=29;
           end;
      else writeln('Bulan salah!!!');readln;exit;
    end;
end;
procedure hitung(bee:integer);
   begin
     ger:=bee-(2*b);
   end;
begin
   write('masukan bulan ke- :');readln(b);
   maks(b);
   hitung(ha);
   write('Gerhana bulan ');
   case b of
       1 : WRITE('Januari');
       2:WRITE('Februari');
       3:WRITE('Maret');
       4:WRITE('April');
       5:WRITE('Mei');
       6:WRITE('Juni');
       7:write('Juli');
       8:WRITE('Agustus');
       9:write('September');
       10:write('Oktober');
       11:WRITE('November');
       12:WRITE('desemberrrr');
   end;
   writeln(' terjadi pada hari ke-',ger);
readln;
end.


Penjumlah Pecahan

Fungsi : Menjumlahkan 2 buah pecahan.
Hint:  Tinggal masukan saja penyebut dan pembilang.
Screenshot :




uses crt;
var pemi,pemII,penyi,penyII:integer;
      j,k:integer;
function pemb(a,c:integer):integer;
    begin
       j:=penyii;
       k:=penyi;
       pemb:=a*j+k*c;
    end;
function peny(b,d:integer):integer;
   begin
     peny:=b*d;
   end;
begin
    writeln('Pecahan 1 ');
    write('Pembilang i :');readln(pemi);
    write('Penyebut i :');readln(penyI);
    writeln;
    write('Pecahan 2 ');
    write('Pembilang ii :');readln(pemII);
    write('Penyebut II: ');readln(penyII);
    writeln;
    writeln('maka hasil dari pertambahan ',pemi,'/',penyI,'+',pemii,'/',penyII,' adalah ',pemb(pemi,pemii),'/',peny(penyi,penyii));
readln;
end.


ARRAY
Setelah prosedur dan fungsi, beralih ke Array. Karena sudah masuk ke array, kode-kode yang sini mungkin terlihat lebih rumit dari sebelumnya…

Mencari angka kelipatan 3

Fungsi :Mencari angka kelipatan 3 dari sekumpulan angka yang diinputkan.
Hint: Masukan angka dan masukan -1 untuk berhenti, otomatis hasil akan ditampilkan.
Screen Shot :





uses crt;
 var a,b:array[1..10] of integer;
        i,j,k,l:integer;
begin
       {memasukan angka}
   j:=1;
   repeat
     write('angka ke-',j,': ');readln(a[j]);
      j:=j+1;
   until a[j-1]=-1;
   {menentukan mana yang kelipatan 3}
   for k:=1 to j do
     begin
        if a[k] mod 3=0 then
           b[k]:=a[k];
      end;
{Menampilkan mana yang kelipatan tiga}
  write('angka kelipatan 3 adalah : ');
  for i:=1 to (j-1) do
    begin
       if b[i]<>0 then
         write(b[i],', ');
     end;
  readln;
end.



Penjumlah Matrix

Fungsi : Menjumlahkan dua matriks 3x3 yang diinputkan
Hint: Masukan nilai matriks di tiap-tiap baris dan kolom.
Screen Shot :




uses crt;
 var m1,m2,mp:array[1..10,1..10] of integer;
       i,j,k,l:integer;
begin
{Menginput nilai matriks}
  writeln('Matriks ke 1');
  for i:=1 to 3 do
    for j:=1 to 3 do
       begin
          write('m1[',i,',',j,'] : ');readln(m1[i,j]);
       end;
  writeln;
  writeln('Matriks ke 2');
  for i:=1 to 3 do
       for j:=1 to 3 do
         begin
           write('m2[',i,',',j,'] : ');readln(m2[i,j]);
         end;
  writeln;
{jumlahkan}
 begin
  for i:=1 to 3 do
    for j:=1 to 3 do
       begin
          mp[i,j]:=m1[i,j]+m2[i,j];
       end;
 {lukis hasil penjumlahan}
 writeln('Hasil Penambahan = ');
 writeln;
    for i:=1 to 3 do
      begin
       writeln;
       for j:=1 to 3 do
         write(mp[i,j],' ');
      end;
readln;
end;
end.



Pendata Mahasiswa

Fungsi: Mendata data mahasiswa, atau apalah dengan array dan menampilkannya.
Hint: Intinya adalah membuat array di record.
Screen shot :




program mhsw;
uses crt;
type mahasiswa=record
               nama,nim,kelas:string;
               end;
var m:array[1..41] of mahasiswa;
       j,i:integer;

begin
write('Jumlah mahasiswa yang mendaftar : ');readln(j);
clrscr;
for i:=1 to j do
begin
writeln('Mahasiswa ',i,':');
write('Nama       : ');readln(m[i].nama);
write('Nim        : ');readln(m[i].nim);
write('Kelas      : ');readln(m[i].kelas);
  writeln;
  writeln;
  end;
clrscr;
writeln('==================================');
writeln;
writeln('DATA MAHASISWA KOMPUTOK');
writeln;
writeln('==================================');
for i:=1 to j do
begin
writeln('Mahasiswa ',i,':');
writeln('Nama       : ',m[i].nama);
writeln('Nim        : ',m[i].nim);
writeln('Kelas      : ',m[i].kelas);
writeln;
writeln;
end;
readln;
end.



Tabel Ajaib

Fungsi : Membuat tabel angka yang apabila nilai tabel dalam satu baris, kolom, dan diagonal di jumlahkan hasilnya akan sama.
Hint: jangan terlalu heran, semua sudah ada rumusnya. Tinggal masukan angka-angka saja.
Screen Shot :




uses crt;
var a,b,c,d,w,x,y,z,i,j:integer;
tab:array[1..4,1..4] of integer;
procedure lukistabel;
{Prosedur untuk menampilkan tabel}
var c:string;
begin
for i:=1 to 4 do
begin
writeln;
writeln;
for j:=1 to 4 do
begin
begin
  if (tab[i,j]>9) or ((tab[i,j]<0) and (tab[i,j]>-10))  then
 c:='    '
else if (tab[i,j]<10) and (tab[i,j]>-1) then
 c:='      '
  else c:='  ';
  end;
if j=1 then
write(tab[i,j],c)
  else if j=2 then write(tab[i,j])
else write(c,tab[i,j]);
end;
end;
end;
{program utama}
Begin
{memasukan nilai}
write('a = ');readln(a);
write('b = ');readln(b);
write('c = ');readln(c);
write('d = ');readln(d);
write('w = ');readln(w);
write('x = ');readln(x);
write('y = ');readln(y);
write('z = ');readln(z);
writeln('memproses.......');
delay(500);
{rumusnya ini}
tab[1,1]:=a-w;
tab[1,2]:=c+w+y;
tab[1,3]:=b+x-y;
tab[1,4]:=d-x;
tab[2,1]:=d+w-z;
tab[2,2]:=b;
tab[2,3]:=c;
tab[2,4]:=a-w+z;
tab[3,1]:=c-x+z;
tab[3,2]:=a;
tab[3,3]:=d;
tab[3,4]:=b+x-z;
tab[4,1]:=b+x;
tab[4,2]:=d-w-y;
tab[4,3]:=a-x+y;
tab[4,4]:=c+w;
{pemanggilan prosedur lukis tabel}
lukistabel;
readln;
end.


Fibbonaci Generator


Fungsi: Kode untuk Menghasilkan deret fibbonaci
Hint : Fibbonaci adalah deret yang angka selanjutnya adalah penjumlahan 2 angka sebelumnya.
Misal : 1 1 2 3 5 8 13 21 ….dst
Screen Shot




uses crt;
var a:array[1..1000] of longint;
i,k:integer;
begin
clrscr;
write('Input banyaknya fibbonaci: ');readln(i);

{fibbonacigenerator}
a[1]:=1;
a[2]:=1;
for k:=2 to i do
begin
a[k+1]:=a[k]+a[k-1];
end;
writeln;
writeln;

{menulis fibbonaci}
for k:=1 to i do
begin
write(a[k],' ');
end;
writeln;
readln;
end.



Iterasi
Nah, ini bagian perulangan. Tidak lebih rumit dari array, namun tidak sesederhana di sub bab fungsi dan prosedur.

Angka
Fungsi: Tak ada fungsi khusus, hanya menampilkan pola-pola angka saja…
Hint : Begitu jalan, langsung masukan angka saja, Jangan masukan angka terlalu kecil atau besar.
Screen Shot




uses crt;
var inp,i,a,t,r:integer;
begin
readln(inp);
t:=inp;
for i:=1 to inp do
  begin
for a:=1 to inp do
  write(a-t);
  writeln;
t:=t-1;
end;
readln;
end.



Jumlah Pangkat

Fungsi:  untuk menghasilkan deret pangkat, misal : 1, 4, 9, 16, 25 dst dan menjumlahkannya
Hint : Masukan jumlah deret pangkat yang akan ditampilkan untuk di jumlah…
Screen Shot




uses crt;
var k,jum:double;
i,n:longint;
begin
clrscr;
readln(n);
jum:=0;
for i:=1 to n do
begin
k:=sqr(i);
write(k:0:0);
  if i<>n then
write('+');
jum:=jum+k;
end;
write('=',jum:0:0);
readln;
end.


Tebak Angka

Fungsi:  Permainan Tebak angka, masukan angka rahasia dan suruh teman untuk menebaknya
Hint :  Permainan ini tidak akan asik bila dilakukan sendirian.
Screen Shot




uses crt;
var a,teb,c,d,rhs:integer;
begin
Write('Bilangan Rahasia : ');readln(rhs);
clrscr;
repeat
write('masukan Tebakan anda : ');readln(teb);
if (teb<>rhs) and (teb>rhs) then
writeln('Bilangan terlalu besar!')
else if (teb<>rhs) and (teb
writeln('bilangan terlalu kecil');
until (teb=rhs);
writeln('Tebakan Anda Benar!!!!, selamat!!!!');
readln;
end.

Z
Fungsi:  Melukis huruf Z dengan karakter ‘*’ sebesar jumlah perulangan yang di inputkan
Hint : Masukan angka untuk menentukan besar huruf Z
Screen Shot




uses crt;
var n,i,a:integer;
begin
readln(n);
for i:=1 to n do
begin
for a:=1 to n do
begin
  if (i=1) or (i=n) then
   write('#')
  else if (i<>1) and (i<>n) then
   begin
   if a+i=n then
     write('#')
     else
   write(' ');
   end;
     end;
     writeln;
     end;
readln;
end.





Program Pencari Pembagi

Program yang mungkin terlihat paling ribet, tapi sebenarnya alurnya sederhana. Berungsi untuk menampilkan pembagi dan hasil bagi bilangan bulat yang di masukan. Selain itu, disini juga bisa digunakan untuk menentukan bilangan mana yang prima atau bukan. Sebelumnya program ini sudah pernah di publish di artikel ini, namun saya tidak tampilkan source kodenya. Silahkan bila ingin langsung mencoba bisa langsung kesana.
Sebenarnya ada cacat di program ini, yaitu ada 2 perulangan disini. Yang satu untuk menentukan bilangan prima,  satunya lagi untuk menentukan pembagi. Sebenarnya 2 perulangan itu dapat dipangkas menjadi satu saja. Sehingga 2 perulangan menjadi tidak efisien. Kenapa harus 2?
Sejarahnya begini, awalnya saya menulis program ini iseng-iseng hanya untuk mencari yang mana bilangan prima. Lalu saya kembangkan lagi menjadi bisa menuliskan daftar bilangan pembagi, waktu itu, daripada repot mengedit perulangan untuk menentukan bilangan prima yang sudah mapan, saya membuat perulangan baru. Dan akhirnya program ini punya 2 perulangan yang strukturnya hampir mirip.
Tapi nampaknya tidak masalah, toh selisih waktu kalkulasinya hanya beberapa milidetik, bahkan untuk bilangan yang mencapai ratusan juta sekalipun. Mau edit lagi, rasanya malas……Berikut kodenya…….:
Hint: Sebelum di compile, buat dulu file bernama output.txt di folder yang sama dengan source code pembagi.




program pembagi;
uses crt;
var x,y,q,w,z,e,f,g:longint;
    l,a:string;
    out:text;
label k;

{prosedur untuk sekedar  merapikan hasil output}

procedure rapikan(s:longint;var t:string);
begin
if s<10 then
 t:='          '
 else if (s>9) and (s<100) then
 t:='         '
 else if (s>99) and (s<1000) then
 t:='        '
 else if (s>999) and (s<10000) then
 t:='       '
 else if (s>9999) and (s<100000) then
 t:='      '
 else if (s>99999) and (s<1000000) then
 t:='     '
 else if (s>999999) and (s<10000000) then
 t:='    '
 else if (s>9999999) and (s<100000000) then
 t:='   '
 else if (s>99999999) and (s<1000000000) then
 t:='  '
 else if (s>999999999) and (s<1000000000) then
 t:=' '
 else t:=' ';
end;

{program utama}
begin
textbackground(blue);
textcolor(Yellow);
clrscr;
assign(out,'output.txt');
append(out);
 gotoxy(3,1);writeln('+______________________________________________________+');
 gotoxy(3,2);writeln('|Copyright@2009, Xenovon, http://komputok.blogspot.com |');
 gotoxy(3,3);Writeln('+------------------------------------------------------+');
 writeln;
 writeln;
 gotoxy(3,5);writeln('Hint: Masukan angka 2 untuk keluar');
 gotoxy(3,6);writeln('      hasil juga dioutputkan ke output.txt');
 writeln;
 writeln;
 gotoxy(15,9);writeln('----[MENENTUKAN PEMBAGI SUATU BILANGAN BULAT]------');
 writeln;
 writeln;


{menuliskan ke output.txt}
 writeln(out);
 writeln(out);
 writeln(out);
 writeln(out,'+______________________________________________________+');
 writeln(out,'|Copyright@2009, Xenovon, http://komputok.blogspot.com |');
 Writeln(out,'+------------------------------------------------------+');
 writeln(out);
 writeln(out);
 writeln(out);
 writeln(out,'----[MENENTUKAN PEMBAGI SUATU BILANGAN BULAT]------');
 writeln(out);
 begin
{input bilangan yang akan di cari}
 k:
 write('masukan bilangan yang akan di cek : ');readln(x);writeln;

{error handling}
 if x<2 then goto k else

{pemeriksaan kondisi untuk keluar program, yaitu dengan menginput angka 2}
 if x=2 then
   begin
    writeln('2 adalah bilangan prima');
    writeln;
    write('Mau keluar?(y/x)');readln(l);
    writeln;
      if l='y' then exit else goto k;
   end;

{Menentukan apakah bilangan prima atau bukan}
 begin
  y:=1;
  repeat
   y:=y+1;
   q:=x mod y;
  until  (q=0);
 end;
if y=x then
 begin
  writeln(x,' adalah bilangan prima');writeln;
 writeln(out,x,' adalah bilangan prima');writeln(out);
 end
else
begin
     {apabila bukan prima, maka program menentukan pembagi yang mungkin}
 writeln('Pembagi dari ',x,': ');
 writeln('--------------------');
 writeln(out,'Pembagi dari ',x,': ');
 writeln(out,'--------------------');
 writeln(out);
 w:=1;
 repeat
  w:=w+1;
  e:=x mod w;
  if e=0 then
   begin
           {menuliskan pembagi & hasil bagi ke konsole dan ke output.txt}
   g:=x div w;
   rapikan(w,a);
   writeln(w,a,'--> ',x,'/',w,'= ',g);
   writeln(out,w,a,'--> ',x,'/',w,'= ',g);
   end;
 until  (w=x);
 writeln;
 writeln(out);
end;
goto k;
end;
close(out);
end.


Nah, sekian dulu….semoga bisa berguna.(AHP  07 Januari 2010, 16:10)

Tuesday, January 5, 2010

Microsoft Office 2010 Beta 2 Special Review

Sepertinya baru kemarin Microsoft mengenalkan Office 2007 ke publik. Peluncuran Office 2007 menjadi menarik karena versi Office itu sangat berbeda dengan Office sebelumnya, dengan hadirnya Ribbon Interface dan banyak fitur-fitur baru. Tapi itu sudah tiga tahun lalu, saya masih ingat dulu saat pertama kali Office 2007 hadir, saya begitu terobsesi untuk menggunakannya. Sampai-sampai berkali-kali membaca artikel yang sama tentang review office 2007. Tapi itu dulu, sekarang microsoft sudah memperkenalkan pengganti Office 2007, yaitu Office 2010 yang saat review ini ditulis masih dalam tahap beta2. Apa yang ditawarkan oleh Microsoft di Office terbarunya itu?

Kesan Pertama

Yang pertama kali di tampilkan oleh Ofiice 2010 ketika di buka adalah splash screen. Apa yang istimewa? Splash Screen Office 2010 tidak seperti Office 2007 yang hanya menampilkan gambar statik, Splash Screen menampilkan gambar bergerak yang cantik. Selain itu, startup terasa lebih cepat dibandingkan Office 2007.


Splash Screen Word, yang kuning-kuning itu sebenarnya bergerak

User Interface

User Interfacenya tidak berbeda jauh dengan Office 2007, meski tetap berbeda. Perbedaan itu seperti pada ribbonnya, Ribbon Office 2010 terasa lebih datar, tidak banyak variasi warna dan gradiasi seperti pada ribbon Office 2010. Kalau menurut saya pribadi, Ribbon Office 2010 tidak se eye-catchng milik 2007, namun terasa lebih cepat membuka ribbon di 2010 dibandingkan 2007.

 
GUI Word 2010

Office button yang ada di Office 2007 juga dihilangkan, sebagai gantinya ada satu tombol bertuliskan file. Mirip seperti Office button atau tombol menu dropdown pada Office 2003 kebawah, namun dia akan menampilkan jendela baru yang di sebut backstage view, Dalam backstage view, terdapat fitur-fitur yang biasanya ada di office button, namun apa yang ditampilkan di backstage lebih lengkap dan beberapa menu terintegerasi dengan jendela backstage view. Misalnya pada menu Print, pada office sebelumnya, ketika mengklik tombol print, yang ditampilkan adalah jendela baru untuk memprint, di office 2010, pilihan-pilihan untuk print dokumen tampil di backstage view tanpa membuka jendela baru. Hal yang sama dapat ditemui pada menu lainnya, seperti recent, help, share dan new. Hanya saja, untuk menu save, save as, option dan open, masih akan menampilkan jendela baru. Selain itu, user interface tidak terlalu banyak berubah.
JIka Office 2007, tidak semua aplikasi memakai interface ribbon, seperti Visio 2010, onenote dan Publisher. Di Office 2010, semuanya sudah menggunakan interface Ribbon. Kecuali microsoft picture manager, tapi mungkin tidak akan menjadi masalah. Karena tidak banyak pengguna office yang menggunakannya.




Back Stage View


 
Jendela Print Yang terintegerasi dengan back stage


Fitur-Fitur Baru

3 tahun pengembangan, tidak mungkin Microsoft membuat Office 2010 tanpa banyak fitur baru. Mungkin tidak semua fitur baru Office 2010 di kupas disini, yang dibahas disini adalah fitur-fitur baru yang menarik dan akan banyak berguna dan fokus ke 3 paket office yang paling sering digunakan secara umum, Word Excel dan Power Point Paket lainnya? Lewat..…
kita mulai dengan fitur-fitur baru yang terdapat di ketiga paket itu sekaligus….

Screenshot

Screenshot ini berfungsi untuk mengambil gambar dilayar. Dengan ini, Ketika membutuhkan tampilan layar untuk dimasukan ke dokumen tidak perlu susah-susah menggunakan software lain. Screenshot dapat ditemui di ribbon tab Insert di bagian Ilustration. Cara menggunakanya sangat mudah, tinggal klik button screenshot, akan tampil gambar jendela aplikasi yang sedang terbuka, tinggal dipilih. Jadi kita dapat membuat screenshot jendela aplikasi lain tanpa harus meninggalkan jendela Office 2010. Namun, fungsinya tetap terbatas, kita tidak dapat mengambil sebagian jendela dan tidak semua jendela ditampilkan di situ, tetap ada jendela terbuka yang tidak tampil.
Meski fungsinya terbatas, lumayanlah, daripada tidak ada. Mungkin fungsi ini akan dikembangkan lagi di office selanjutnya.



Screenshotnya fitur screenshot

Remove Background

Remove background berfungsi untuk membuang background pada gambar. Ini fitur yang sejak dulu di perlukan di MS Office, seperti ketika menampilkan gambar di slide power point, Remove background sangat berguna untuk menampilkan gambar dengan background yang mengganggu, dengan remove background, background yang mengganggu itu dapat dihilangkan. Remove background hanya efektif untuk membuang background yang seragam dan warnanya kontras dengan isi gambarnya. Remove background bekerja otomatis untuk menentukan mana background dan mana gambar utamanya, karena itulah, remove background tidak fleksibel, pengaturan yang ada sangat terbatas.




 Pilihan remove background, sangat terbatas

Paste Preview

Dengan paste preview, teks atau gambar yang akan di paste akan ditampilkan saat kursor menyorot pilihan paste sebelum kita benar-benar mempastenya. Ini berguna untuk melihat seperti apa hasil dari paste itu sebelum kita mempastenya, sehingga meminimalkan kesalahan ketika mempaste. Selain itu, ada pilihan tentang bagaimana format dokumen yang akan di paste apakah mengikuti format asalnya, hanya teks biasa atau digabung format sekarang dengan format asalnya.



Paste Option, saat pilihannya di sorot, apakn ada previewnnya
 

Artistic Effect

Artistic effect merupakan kumpulan efek untuk gambar yang siap pakai. Ada sekitar 23 efek yang hanya butuh 2 klik saja untuk mengaplikasikannya ke dalam gambar. Masih berhubungan dengan manipulasi gambar, di Office 2010 fitur-fitur untuk manipulasi gambar dan shape terintegerasi dalam satu jendela, tidak seperti dulu yang terpisah-pisah meski masih dalam satu ribbon.


Pillihan Artistic Effects

Selection Pane

Apabila di versi office sebelumnya, kita akan kesulitan sekali ketika berurusan dengan obyek dalam jumlah banyak, apalagi yang saling bertumpuk. Bagaimana caranya untuk mengselect obyek yang ada di paling bawah? Di Office sebelumnya memang tidak bisa, tapi di Office 2010, semua itu akan menjadi mudah dengan selection pane

Jendela Konfirmasi Close yang baru
Apabila pada office 2007 apabila kita menutup jendela word sebelum dokumen di simpan, akan muncul jendela konfirmasi save dengan 3 pilihan, Save, No dan cancel. Pada Office 2010, yang ditampilkan adalah Yes, Don't save dan cancel, apabila memilih don't save, dokumen tidak langsung di hapus, tapi disimpan sementara.
Dokumen yang disimpan sementara itu dapat diakses lagi di backstage view bagian recent. Klik recover unsaved document yang ada di bawah.

Close



Fitur Baru Di Word 2010

Word 2010 kini dapat menampilkan word art dan shape seperti yang dapat dilakukan excel dan power point 2007. Apabila kita cermati, Word Art dan edit Shape pada word 2007 masih menggunakan gaya Office versi lama. Kini sudah tidak lagi, kita dapat mengunakan fitur tersebut seperti excel dan Power point. Ada satu fitur di Word 2007, yaitu navigation pane, berfungsi untuk mempermudah kita dalam berpindah halaman dan melihat sekilas konten di tiap halaman word 2010 . Selain itu, Navigation pane juga sudah terintegerasi dengan searching, sehingga akan mudah jika ingin mencari sesuatu disitu.



Navigation Pane

Fitur Baru Di Excel 2010

Hanya satu fitur baru lainnya yang saya temukan di Excel 2010, yaitu Excel Sparklines. Namun saya sudah mencoba-coba, namun belum menemukan fungsi dari sparklines, dia hanya menampilkan bar berdasarkan nilai yang dipilih.



Sparklines

Fitur Baru Di Power Point 2010

Power Point 2010 adalah yang paling banyak perubahannya dibanding word dan excel. Perubahan-perubahan itu seperti pada integerasi custom animation pada ribbon, jadi tidak ditemukan taskpane custom animation disini. Selain itu, custom animation dan silde transition sudah memiliki tab ribbon sendiri, tidak seperti Power point 2007 yang menjadi satu tab. Yang paling menonjol adalah ditambahkannya slide transition baru dalam bentuk animasi 3 dimensi, tidak seperti dulu slide transition dulu yang gerakannya hanya ke kiri, kanan, bawah dan atas. Animasi efek slide transition yang 3 dimensi terlihat sangat cantik. Selain 3 dimensi, ada lagi slide transition yang digerakan bukan slidenya, tapi isi slidenya, namanya Dynamic Content.
Ada juga section, berfungsi untuk membagi slide dalam bagian-bagian. Misalnya bagian pembuka, isi per materi, kesimpulan atau penutup. Sehingga dengan section, slide power point menjadi lebih mudah di organisir.



 Animation Tab




Slide Transition


Section






Selain fitur-fitur tersebut, masih banyak fitur lain Office 2010 yang belum di bahas. Tentunya akan menghabiskan banyak waktu untuk mereview Office terbaru ini. Melihat fitur-fitur baru tersebut, saya rasa akan lebih produktif bila menggunakan Office 2010 ini. Fitur-fitur seperti screenshot remove background dan sebagainya sangat membantu kita dalam menciptakan konten dengan Office 2010. Saat ini memang Office 2010 masih dalam tahap beta, mungkin harus bersabar menunggu versi finalnya dulu untuk menggantikan total office 2007.
Untuk yang ingin mencoba Office 2007 ini secara langung, dapat mengakses artikel


untuk mendapat petunjuk untuk download gratis Office 2010(AHP, 5 Januari 2009 17:37)