Translate

Rabu, 07 November 2012

Ini sebenarnya dulu proyek ujian Praktikum Sistem Terdistribusi, tapi rasanya malah jadi produk gagal :D . Jadinya ya ane open saja source code-nya siapa tahu ada yang ngembangin dan bisa lebih bermanfaat. Niatnya dulu bikin game sederhana yang bisa diimplementasikan client-server sekaligus multithread. Berhubung penerapan di client-server udah cukup membuat ane malnutrisi, jadinya ane oprek dikit jadi berbasis desktop biasa.
Permainannya kayak gini:
animasi bola dengan java
Intinya kita harus meng-klik bola warna merah itu untuk dapat skor. Setiap klik yang mengenai bola akan mendapat skor +1, permainan selesai saat waktu sudah 30 detik (ada countdown timer-nya.). Simpel kan? bikinnya yang agak bikin frustasi apalagi bikin fungsi yang nentuin bola itu kena klik atau gak :D
Program terdiri dari 6 class. yaitu:
1. GUI.java
Class ini bertanggung jawab tentang form dan aksi-aksi interface yang ada di dalamnya. Oiya, untuk perhitungan koordinat waktu kita melakukan klik pada bola itu ada dalam fungsi berikut:
void klikKanvas() {
Objek.addMouseListener(new MouseListener() {
public void mouseClicked(MouseEvent evt) {
Objek.mouseClicked(evt);
xx = Objek.posX();
yy = Objek.posY();
int objekX = Objek.getX();
int objekY = Objek.getY();
if ((xx > objekX && xx <= objekX + 50) && (yy > objekY && yy <= objekY + 50)) {
player.setScore();
}
}
public void mousePressed(MouseEvent me) {
}
public void mouseReleased(MouseEvent me) {
}
public void mouseEntered(MouseEvent me) {
}
public void mouseExited(MouseEvent me) {
}
});
}

Koordinat lokasi bola ditentukan dengan variabel objekX dan objekY, sedangkan posisi kursor dengan variabel xx dan yy. Nah jika jika koordinat antara bola dan kursor sama maka logikanya kita berhasil memukul bola itu. TAPI, sulitnya adalah koordinat posisi bola tepat Berada di tengah bola. Adalah hal yang sulit bisa meng-klik bola tepat di tengahnya ditambah lagi bola itu bergerak secara acak. untuk itu, ditambahkan 50 pada posisi objek agar kita bisa mendapat skor jika memukul bola itu walaupun tidak pas di tengahnya.
2. Animasi.java
Class ini bertanggung jawab tentang animasi dan mengatur thread yang berjalan. Animasi ini mengatur objek bola agar bergerak secara random di dalam Canvas dan kecepatannya diatur oleh thread tadi.
3. level.java
Ini sebenarnya buat penanganan level. Jika mendapatkan skor tertentu, maka bisa ke level selanjutnya dengan kecepatan gerak bola meningkat. Tapi berhubung gagal, ya ane gak pake dulu. Silahkan dikembangkan :)
4. Objek.java
Class objek gunanya untuk menciptakan objek bola tadi sekalian mencatat koordinat tiap gerakan bola dalam kanvas.
5. Pemain.java
Class Pemain ini untuk mengidentifikasi pemain, yaitu nama dan skor.
6. Main.java
Main class untuk menjalankan program.
Sori nih gak bisa jelasin Source-nya satu-satu, ntar bisa jadi cerpen soalnya. So langsung aja download, pelajari, oprek, dan kembangkan ya. :) Jangan lupa harus sabar karena source code yang ada mungkin berantakan dan membingungkan. Tapi semoga saja bisa dikembangin lebih bagus lagi
Bravo IT Indonesia ^^b
Download Source Code Lengkap Game Pukul Bola Sederhana Menggunakan Java (Netbeans Project)

Kamis, 01 November 2012

Contoh Rumus-Rumus pada Microsoft Excel

Rumus-rumus di MS-Excel sebenarnya banyak, lebih banyak dari yang pernah Anda bayangkan (meski tak menyentuh angka ribuan). Mempelajari semua rumusnya hanya akan membuat Anda botak! Padahal rumus yang dipakai palingan 5-20 rumus saja. Karena itu, saya menuliskan sedikit rumus yang tersedia dan yang sering dipakai. Saya berusaha menuliskannya dengan baik dan mudah dimengerti. Semoga Anda paham maksud rumus-rumus tersebut. Rumus-rumus ini aslinya ditulis dalam Bahasa Inggris dan beberapa dengan singkatan, sehingga saya agak kesulitan (bahkan keterangannya juga tidak cukup menjelaskan maksud beberapa rumus ini).
  • =SUMIFS(sum_range; range_kriteria_1; kriteria_1; range_kriteria_2; kriteria_2… dst)
Untuk  penjumlahan dengan multi kriteria.
  • =SUM(angka 1; angka 2; …)
Untuk menjumlahkan sederetan angka.
  • =AVERAGE(angka 1; angka2; …)
Untuk menghitung nilai rata-rata.
  • =COUNT(value 1; value 2; …)
Untuk menghitung banyak data dari sederetan data angka dalam suatu range.
  • =MAX(angka 1; angka 2; …)
Untuk mencari nilai terbesar.
  • =MIN(angka 1; angka2; …)
Untuk mencari nilai terkecil.
  • =SQRT(angka)
Untuk mencari akar kuadrat.
  • =FV(suku bunga; jumlah periode pembayaran; pembayaran tiap periode; nilai penanaman modal saat ini)
Untuk menghitung nilai kemudian dari suatu investasi dengan besar pembayaran yang sama serta bunga yang tetap dalam periode tertentu.
  • =PMT(suku bunga; jumlah periode; nilai sekarang; nilai kemudian; tipe pembayaran)
Untuk menghitung nilai angsuran secara periodik untuk melunasi nilai pijaman berdasarkan periode, dengan pembayaran dan bunga yang konstan.
  • =PPMT(suku bunga; jumlah periode; nilai sekarang; nilai kemudian; tipe pembayaran)
Untuk menghitung nilai pokok pembayaran untuk membayar kembali suatu nilai pinjamandalam jangka waktu yang ditentukan.
  • =VLOOKUP(kunci; range tabel; nomor kolom)
Untuk mengambil data dari tabel lain secara vertikal.
  • =HLOOKUP(kunci; range tabel; nomor kolom)
Untuk mengambil data dari table lain secara horizontal.
  • =IF(tes logika; nilai jika benar; nilai jika salah)
Untuk menguji kebenaran dari suatu kondisi.
  • =LEFT(teks; karakter yang akan diambil)
Untuk mengambil karakter dari kiri.
  • =MID(teks; start dari; karakter yang akan diambil)
Untuk mengambil karakter dari posisi tengah.
  • =RIGHT(teks; karakter yang akan diambil)
Untuk mengambil karakter dari kanan.
  • =IF(string; nilai jika benar; nilai jika salah)
Untuk menguji kebenaran dari suatu kondisi.
  • =EOMONTH(tanggal awal; jumlah bulan sebelum atau sesudah tanggal awal)
Untuk mengetahui tanggal terakhir dari suatu bulan.
  • =WORKDAY(tanggal awal; hari libur selain tanggal awal; pilihan dari satu atau beberapa tanggal diluar kalender kerja)
Untuk menghitung jumlah hari kerja.
  • =ROUND(angka yang akan dibulatkan; jumlah pembulatan)
Untuk membulatkan bilangan.
  • =COUNTIF(range yang akan dihitung; syarat)
Menghitung jumlah sel yang memenuhi syarat tertentu.
  • =DATE(tahun; bulan; tanggal)
Untuk menuliskan tanggal.
  • =DAY(tanggal)
Untuk mengambil nilai hari dari suatu data tanggal.
  • =MONTH(tanggal)
Untuk mengambil nilai bulan dari suatu tanggal.
  • =YEAR(tanggal)
Untuk mengambil nilai tahun dari suatu tanggal.


okeee sekian yoooo moga bermanfaat...:D