telah di jelaskan pada inheritance pada lingkaran maka metode tersebut dapat juga kita pergunakan dalam mencari persegi panjang dan balok hal ini di karenakan balok merupakan turunan dari persegi panjang, kira kira seperti dibawah ini kodenya
class persegipanjang
{
private double panjang;
private double tinggi;
public persegipanjang()
{
setpanjang(1);
settinggi(1);
}
public persegipanjang(double p, double t)
{
setpanjang(p);
settinggi(t);
}
public void setpanjang(double p)
{
if(p>0)
panjang=p;
}
public void settinggi(double t)
{
if (t>0)
tinggi=t;
}
public double getpanjang()
{
return(panjang);
}
public double gettinggi()
{
return(tinggi);
}
public double hitungluas()
{
return (panjang*tinggi);
}
public double hitungkeliling()
{
return(2.0*(panjang+tinggi));
}
}
class balok extends persegipanjang
{
private double lebar;
public balok()
{
settinggi(1);
setpanjang(1);
setlebar (1);
}
public balok(double l, double p, double t)
{
setlebar (l);
settinggi(t);
setpanjang(p);
}
public void setlebar (double l)
{
if (l>0)
lebar = l;
}
public double getlebar()
{
return (lebar);
}
public double hitungvolume()
{
return (lebar*super.hitungluas());
}
}
public class hitungpersegipanjang
{
public static void main(String[] args)
{
balok abc = new balok(0,5,4);
balok xyz =new balok(2,3,4);
System.out.println("data persegi panjang abc:");
System.out.println("--------------------------");
System.out.println("tinggi abc :" + abc.gettinggi());
System.out.println("panjang abc :" + abc.getpanjang());
System.out.println("luas abc :" + abc.hitungluas());
System.out.println("keliling abc :" +abc.hitungkeliling());
System.out.println();
System.out.println ("Data balok XYZ :");
System.out.println ("-----------------------");
System.out.println ("panjang XYZ : " + xyz.getpanjang());
System.out.println ("tinggi XYZ : " + xyz.gettinggi());
System.out.println ("lebar XYZ : " + xyz.getlebar());
System.out.println ("volume XYZ : " + xyz.hitungvolume());
System.out.println ();
}
}
download source
Minggu, 23 Desember 2012
inheritance pada lingkaran
Secara bebas Inheritance di terjemahkan sebahagai pewarisan.
Yaitu sebuah konsep dimana kita bisa membuat sebuah class baru dengan mengembangkan kelas yang pernah dibuat sebelumnya.
Metode OOP memungkinkan kita memperoleh seluruh data dari classinduk (base-class) untuk diberikan kepada class anak (derived-class) tanpa harus melakukan copy-and-paste seluruh kode base-class.
Contoh :
kita akan membuat class Silinder seperti digambarkan dibawah ini
Catt:
Selain tinggi silinder(t), silinder juga memiliki jari-jari (r) lingkaran pada kedua ujungnya.
dikarenakan silinder merupakan keturunan dari lingkaran maka untuk mencari silinder kita memerlukan beberapa rumus dari lingkaran
dalam java inheritance dapat dilakukan seperti contoh berikut
pertama buat class lingkaran:
class lingkaran
{
private double jarijari;
public lingkaran()
{
setjarijari(1);
}
public lingkaran(double r)
{
if (r>0)
jarijari=r;
else
jarijari=100.0;
}
public void setjarijari(double r)
{
if(r>0)
jarijari=r;
}
public double getjarijari()
{
return(jarijari);
}
public double hitungluas()
{
return (Math.PI*jarijari*jarijari);
}
public double hitungkeliling()
{
return(Math.PI*2.0*jarijari);
}
}
//selanjutnya kita buat class silinder
class silinder extends lingkaran //class silinder merupakan turunan dari class lingkaran
{
private double tinggi;
public silinder()
{
setjarijari (1);
settinggi (1);
}
public silinder(double r, double t)
{
setjarijari (r);
settinggi (t);
}
public void settinggi (double t)
{
if (t>0)
tinggi = t;
}
public double gettinggi()
{
return (tinggi);
}
public double hitungluas()
{
return (super.hitungluas() * 2.0 + super.hitungkeliling() * tinggi);
//perintah super digunakan untuk memanggil class lingkaran
}
public double hitungvolume()
{
return (Math.PI * 2.0 * super.getjarijari() * tinggi);
}
}
{
private double tinggi;
public silinder()
{
setjarijari (1);
settinggi (1);
}
public silinder(double r, double t)
{
setjarijari (r);
settinggi (t);
}
public void settinggi (double t)
{
if (t>0)
tinggi = t;
}
public double gettinggi()
{
return (tinggi);
}
public double hitungluas()
{
return (super.hitungluas() * 2.0 + super.hitungkeliling() * tinggi);
//perintah super digunakan untuk memanggil class lingkaran
}
public double hitungvolume()
{
return (Math.PI * 2.0 * super.getjarijari() * tinggi);
}
}
public class cobasilinder
{
public static void main(String[] args)
{
silinder abc = new silinder(4,5);
silinder xyz =new silinder(2,3);
System.out.println("data silinder abc:");
System.out.println("--------------------------");
System.out.println("jari-jari abc :" + abc.getjarijari());
System.out.println("tinggi abc :" + abc.gettinggi());
System.out.println("luas abc :" + abc.hitungluas());
System.out.println("keliling abc :" +abc.hitungkeliling());
System.out.println();
System.out.println ("Data Silinder XYZ :");
System.out.println ("-----------------------");
System.out.println ("Jari-Jari ABC : " + xyz.getjarijari());
System.out.println ("Tinggi ABC : " + xyz.gettinggi());
System.out.println ("Luas ABC : " + xyz.hitungluas());
System.out.println ("volume ABC : " + xyz.hitungvolume());
System.out.println ();
}
}
{
public static void main(String[] args)
{
silinder abc = new silinder(4,5);
silinder xyz =new silinder(2,3);
System.out.println("data silinder abc:");
System.out.println("--------------------------");
System.out.println("jari-jari abc :" + abc.getjarijari());
System.out.println("tinggi abc :" + abc.gettinggi());
System.out.println("luas abc :" + abc.hitungluas());
System.out.println("keliling abc :" +abc.hitungkeliling());
System.out.println();
System.out.println ("Data Silinder XYZ :");
System.out.println ("-----------------------");
System.out.println ("Jari-Jari ABC : " + xyz.getjarijari());
System.out.println ("Tinggi ABC : " + xyz.gettinggi());
System.out.println ("Luas ABC : " + xyz.hitungluas());
System.out.println ("volume ABC : " + xyz.hitungvolume());
System.out.println ();
}
}
Selasa, 11 Desember 2012
Mencari Akar Kuadrat dengan Java
Di dalam matematika, akar kuadrat dari bilangan x sama dengan bilangan r sedemikian sehingga r2 = x, atau, di dalam perkataan lain, bilangan r yang bila dikuadratkan (hasil kali dengan bilangan itu sendiri) sama dengan x.
Setiap bilangan real tak-negatif, katakanlah x memiliki akar kuadrat tak-negatif yang tunggal, disebut akar kuadrat utama, yang dilambangkan oleh akar ke-n sebagai
. Akar kuadrat dapat juga dituliskan dengan notasi eksponen, sebagai x1/2. Misalnya, akar kuadrat utama dari 9 adalah 3, dituliskan dengan
, karena 32 = 3 × 3 = 9 dan 3 tak-negatif. Bagaimanapun, akar kuadrat utama dari sebuah bilangan positif hanya satu dari dua akar kuadratnya. (WIKI)
Untuk mencari akar dengan pemrograman java kita bisa menggunakan metod Math.sqrt yang telah di sediakan oleh java namun bagai mana jika kita ingin mencari dengan menggunakan logika biasa tanpa menggunakan bantuan dari metod yang telah di sediakan oleh java.
untuk mencari akar kita bisa dengan menggunakan pembagian dimana 3x3=9 maka 9/3=3 dengan hal ini maka saya mencoba melakukan pembagian untuk mencari akar dari angka 9 dengan menggunkaan pengulangan dengan for
sekarang kita langsung aja ke-kodenya
import java.io.*;//digunkaan saat kita menggunakna BufferedReader
import java.text.*;//digunakan saat kita menggunkan NumberFormat
import java.util.Scanner;
public class akar2{
double bagi(double x, double y){ //merupakan method yang digunakan untuk
return (x/y);//membagi sebuah bilangan yang di masukan
}
public static void main(String args[]){
double hasil=0;
int i;
int a=0;
//digunakan untuk memanggil mothod yang ada di class akar2 diatas
akar2 hitung = new akar2();
//digunakan untuk menambahkan format decimal beberapa angka di belakang koma
//dari 0 menjadi 0.0000
NumberFormat duaangka = new DecimalFormat("#.####");
BufferedReader input;
try{
input=new BufferedReader(new InputStreamReader(System.in));
System.out.println("masukan angka:");
a = new Integer (input.readLine()).intValue();
for ( i=1;i<a;i++)
{
if ((a/i)==i)
{
hasil = hitung.bagi(a,i);//memanggil method bagi yang ada di atas
}
}
}
catch (Exception e) {
System.out.print("error");
}
//memprint hasil dengan format yang sudah kita buat diatas dengan menggunakan duaangka,format(hasil)
System.out.println("Akar dengan pengulangan dan pembagian dari angka "+a+" adalah " + duaangka.format(hasil));
//memprint langsung dengan menggunkaan metod Math.sqrt dari inputan a
System.out.println("hasil dengan Math.sqrt adalah "+ Math.sqrt(a));
}
}
=======================================================================
for ( i=1;i<a;i++)
{
if ((a/i)==i)
{
hasil = hitung.bagi(a,i);//memanggil method bagi yang ada di atas
}
}
}
kode apaan tuh

kode diatas merupakan pengulangan yang saya gunakan untuk mencari hasil pembagian dari angka yang saya inputkan. cara kerja dari kode diatas seperti dibawah ini
misal kita akan mencari akar 9 maka a=9
maka saat i=3 maka program akan menghitung hasil dengan rumus hasil =a/i dimana dengan menggukan method bagi yang ada di atas maka (a) diterjemahkan ke (x) dan (i) ke (y) dan di method berupa (x/y) dan hasil dari program di atas adalah sebagai berikut
download source
Setiap bilangan real tak-negatif, katakanlah x memiliki akar kuadrat tak-negatif yang tunggal, disebut akar kuadrat utama, yang dilambangkan oleh akar ke-n sebagai
. Akar kuadrat dapat juga dituliskan dengan notasi eksponen, sebagai x1/2. Misalnya, akar kuadrat utama dari 9 adalah 3, dituliskan dengan
, karena 32 = 3 × 3 = 9 dan 3 tak-negatif. Bagaimanapun, akar kuadrat utama dari sebuah bilangan positif hanya satu dari dua akar kuadratnya. (WIKI)
Untuk mencari akar dengan pemrograman java kita bisa menggunakan metod Math.sqrt yang telah di sediakan oleh java namun bagai mana jika kita ingin mencari dengan menggunakan logika biasa tanpa menggunakan bantuan dari metod yang telah di sediakan oleh java.
untuk mencari akar kita bisa dengan menggunakan pembagian dimana 3x3=9 maka 9/3=3 dengan hal ini maka saya mencoba melakukan pembagian untuk mencari akar dari angka 9 dengan menggunkaan pengulangan dengan for

sekarang kita langsung aja ke-kodenya
import java.io.*;//digunkaan saat kita menggunakna BufferedReader
import java.text.*;//digunakan saat kita menggunkan NumberFormat
import java.util.Scanner;
public class akar2{
double bagi(double x, double y){ //merupakan method yang digunakan untuk
return (x/y);//membagi sebuah bilangan yang di masukan
}
public static void main(String args[]){
double hasil=0;
int i;
int a=0;
//digunakan untuk memanggil mothod yang ada di class akar2 diatas
akar2 hitung = new akar2();
//digunakan untuk menambahkan format decimal beberapa angka di belakang koma
//dari 0 menjadi 0.0000
NumberFormat duaangka = new DecimalFormat("#.####");
BufferedReader input;
try{
input=new BufferedReader(new InputStreamReader(System.in));
System.out.println("masukan angka:");
a = new Integer (input.readLine()).intValue();
for ( i=1;i<a;i++)
{
if ((a/i)==i)
{
hasil = hitung.bagi(a,i);//memanggil method bagi yang ada di atas
}
}
}
catch (Exception e) {
System.out.print("error");
}
//memprint hasil dengan format yang sudah kita buat diatas dengan menggunakan duaangka,format(hasil)
System.out.println("Akar dengan pengulangan dan pembagian dari angka "+a+" adalah " + duaangka.format(hasil));
//memprint langsung dengan menggunkaan metod Math.sqrt dari inputan a
System.out.println("hasil dengan Math.sqrt adalah "+ Math.sqrt(a));
}
}
=======================================================================
for ( i=1;i<a;i++)
{
if ((a/i)==i)
{
hasil = hitung.bagi(a,i);//memanggil method bagi yang ada di atas
}
}
}
kode apaan tuh

kode diatas merupakan pengulangan yang saya gunakan untuk mencari hasil pembagian dari angka yang saya inputkan. cara kerja dari kode diatas seperti dibawah ini
misal kita akan mencari akar 9 maka a=9
| a | i=1 | i<a | a/i=i | i++ |
| 9 | 1 | TRUE | 9/1==1 False | 1+1=2 |
| 9 | 2 | TRUE | 9/2==2 False | 1+2=3 |
| 9 | 3 | TRUE | 9/3==3TRUE |
maka saat i=3 maka program akan menghitung hasil dengan rumus hasil =a/i dimana dengan menggukan method bagi yang ada di atas maka (a) diterjemahkan ke (x) dan (i) ke (y) dan di method berupa (x/y) dan hasil dari program di atas adalah sebagai berikut
download source
Rabu, 28 November 2012
[Single] Sakurasou no Pet na Kanojo OP Single - Kimi ga Yume wo Tsuretekita
[Single] Sakurasou no Pet na Kanojo OP Single - Kimi ga Yume wo Tsuretekita
Title: Sakurasou no Pet na Kanojo OP Single - Kimi ga Yume wo Tsuretekita
Artist: Kayano Ai, Nakatsu Mariko & Takamori Natsumi
Tracklist:
1. Kimi ga Yume wo Tsuretekita
2. Kimi ga Yume wo Tsuretekita (WHITE Ver.)
3. Kimi ga Yume wo Tsuretekita (Instrumental)
4. Kimi ga Yume wo Tsuretekita (WHITE Ver.) (Instrumental)
Download
Selasa, 27 November 2012
Mencari Arti Dari Sebuah Nim dengan Java
Setiap mahasiswa pasti memiliki nim, dimana nim tersebut dapat digunakan untuk semua kegiatan administrasi kampus, nah taukah anda kita dapat mencari arti dari sebuah nim yang kita miliki, dengan menggunakan pemrograman java maka kita dapat mencari arti dari angka-angka yang terdapat pada nim kita tersebut
oke langsung saja ini dia programnya
import javax.swing.JOptionPane;
public class mencarinim2 {
public static void main(String[] args) {
// TODO code application logic here
String nim;
String jurusan="";
String jenjang="";
String Nama;
String tahun;
nim = JOptionPane.showInputDialog("Masukan nim:");
Nama = JOptionPane.showInputDialog("Masukan nama:");
tahun = nim.substring(0,2);
if (nim.charAt(2) == '1' && nim.charAt(3) == '1'){
jurusan = "TI";
}
else if (nim.charAt(2) == '1' && nim.charAt(3) == '2')
{
jurusan = "SI";
}
else if (nim.charAt(2) == '1' && nim.charAt(3) == '3')
{
jurusan = "SK";
}
if (nim.charAt(4)=='5')
{
jenjang="Strata 1";
}
else if (nim.charAt(4)=='3')
{
jenjang="Diploma 3";
}
JOptionPane.showMessageDialog(null,"Nim " +nim+ "\n "+"Nama "+Nama+ "\n"+"Tahun masuk 20"+tahun+"\n"+"Jurusan " +jurusan+"\n"+"jenjang "+jenjang);
}
}
penjelasan
saat kita memasukan nim kita maka program akan mengecek tiap karakter dari nim kita
saat memasukan nim, nim kita akan di cek satu persatu dengan menggunakan charat. charat akan mengecek setiap karakter satu persatu contoh
0 | 4 | 1 | 1 | 5 | 0 | 0 | 3 | 4 | 9 |
Tahun Masuk | Jurusan | Jenjang | |||||||
di atas ada program untuk mengecek karakter nim kita
if (nim.charAt(2) == '1' && nim.charAt(3) == '1'){
jurusan = "TI";
}
dimana dalam charat nim kita akan di hitung seperti berikut
0 1 2 3 4 5 6 7 8 9
--------------------
0 4 1 1 5 0 0 3 4 9
dalam if di atas charat akan mengecek apakah karakter ke 2 adalah 1 dan karakter ke 3 adalah 1 jika benar maka program akan mencetak jurusan TI/Teknik Informatika dan begitu juga seterusnya dan untuk tahun masuk saya menggunakan substring dimana dalam substring tersebut saya masukan (0,2) substring akan mengecek dari 0 sampai 2 -1 =1 jadi substring mengecek pada deret ke 0 dan 1 dan jika kita masukan ke 0 adalah 0 dan deret ke 1 adalah 4 maka yang keluar adalah 04.
kira kira seperti inilah hasilnya
download source
Membuat Program Palindrome Dengan Java
Palindrom adalah sebuah kata, frasa, angka maupun susunan lainnya yang dapat dibaca dengan sama baik dari depan maupun belakang (spasi antara huruf-huruf biasanya diperbolehkan). Kata "palindrom" berasal dari bahasa Yunani: palin ("balik") dan dromos ("pacuan kuda").
Menurut buku Mother Tongue: English & How It Got That Way (hal. 227): "Palindrom … berumur setidaknya 2.000 tahun."
Palindrom Latin "Sator Arepo Tenet Opera Rotas" sangat unik karena ia akan megulang kalimatnya lagi jika kita membentuk kata dari huruf pertama setiap kata kemudian disambung dengan huruf kedua setiap kata, dan seterusnya. Karena itu ia juga dapat disusun dalam sebuah kotak yang dapat dibaca secara vertikal maupun horisontal:
Selain itu, palindrom juga ada dalam bahasa-bahasa non-Barat, contohnya bahasa Jepang, bahasa Tionghoa dan bahasa Korea.
Dalam Bahasa Indonesia kalimat seperti di bawah ini juga merupakan palindrom:
import javax.swing.JOptionPane;
public class palindrome2 {
public static void main(String[] args) {
String kalimat = JOptionPane.showInputDialog("Kalimat/kata : ");
boolean ketemu = false;
for (int a = kalimat.length() - 1; a >= 0; a--) {
for (int b = 0; b < kalimat.length(); b++) {
System.out.println("huruf ke-" + b + " dihitung dari depan karakternya adalah " + kalimat.charAt(b));
if (kalimat.charAt(a) == kalimat.charAt(b)) {
ketemu = true;
} else {
ketemu = false;
}
}
System.out.println();
System.out.println("Huruf ke-" + a + " dihitung dari belakang karakternya adalah " + kalimat.charAt(a));
System.out.println();
}
if (ketemu == true) {
System.out.println("Palindrom !");
} else {
System.out.println("Bukan Palindrom !");
}
}
}
penjelasan program di atas adalah
saat kita memasukan subuah kata maka kata tersebut akan di loop dengan for pertama dari akhir kata, lalu dengan for ke dua kata tersebut akan di loop dari awal kata
contoh
for pertama
<---
3 2 1
a s a
for ke dua
---->
1 2 3
a s a
selanjutnya degan if kita akan mengecek apakah kata tersebut merupakan kata Palindrome atau bukan
di sini kita akan mengecek contoh
apakah a pertama sama degan a di akhir kata
apakah s kedua sama dengan s kedua
apakah a terakhir sama dengan a pertama
jika sama maka kata tersebut merupakan kata Palindrome hasil program
download source
Menurut buku Mother Tongue: English & How It Got That Way (hal. 227): "Palindrom … berumur setidaknya 2.000 tahun."
Palindrom Latin "Sator Arepo Tenet Opera Rotas" sangat unik karena ia akan megulang kalimatnya lagi jika kita membentuk kata dari huruf pertama setiap kata kemudian disambung dengan huruf kedua setiap kata, dan seterusnya. Karena itu ia juga dapat disusun dalam sebuah kotak yang dapat dibaca secara vertikal maupun horisontal:
S A T O RPalindrom ada dalam banyak bahasa-bahasa Barat, terutamanya di bahasa Inggris. Meskipun begitu, gelar "bahasa palindrom" jatuh pada bahasa Finlandia.
A R E P O
T E N E T
O P E R A
R O T A S
Selain itu, palindrom juga ada dalam bahasa-bahasa non-Barat, contohnya bahasa Jepang, bahasa Tionghoa dan bahasa Korea.
Dalam Bahasa Indonesia kalimat seperti di bawah ini juga merupakan palindrom:
- Aku suka rajawali, bapak. Apabila wajar, aku suka (oleh Benjamin Goodspeed Zimmer).
- Kasur ini rusak.
- Kasur Nababan rusak.
import javax.swing.JOptionPane;
public class palindrome2 {
public static void main(String[] args) {
String kalimat = JOptionPane.showInputDialog("Kalimat/kata : ");
boolean ketemu = false;
for (int a = kalimat.length() - 1; a >= 0; a--) {
for (int b = 0; b < kalimat.length(); b++) {
System.out.println("huruf ke-" + b + " dihitung dari depan karakternya adalah " + kalimat.charAt(b));
if (kalimat.charAt(a) == kalimat.charAt(b)) {
ketemu = true;
} else {
ketemu = false;
}
}
System.out.println();
System.out.println("Huruf ke-" + a + " dihitung dari belakang karakternya adalah " + kalimat.charAt(a));
System.out.println();
}
if (ketemu == true) {
System.out.println("Palindrom !");
} else {
System.out.println("Bukan Palindrom !");
}
}
}
penjelasan program di atas adalah
saat kita memasukan subuah kata maka kata tersebut akan di loop dengan for pertama dari akhir kata, lalu dengan for ke dua kata tersebut akan di loop dari awal kata
contoh
for pertama
<---
3 2 1
a s a
for ke dua
---->
1 2 3
a s a
selanjutnya degan if kita akan mengecek apakah kata tersebut merupakan kata Palindrome atau bukan
di sini kita akan mengecek contoh
apakah a pertama sama degan a di akhir kata
apakah s kedua sama dengan s kedua
apakah a terakhir sama dengan a pertama
jika sama maka kata tersebut merupakan kata Palindrome hasil program
download source
Program Parkir Sederhana Dengan Java
Berikut ini merupakan sistem informasi parkir sederhana dengan menggunakan pemrograman java
import javax.swing.JOptionPane;
public class parkiran {
public static void main(String[] args) {
// TODO code application logic here
String platnomer;
String jammasuk;
String jamkeluar;
String menitmasuk;
String menitkeluar;
int a;
int b;
int c;
int d;
int e;
int f;
int tarif;
platnomer = JOptionPane.showInputDialog("masukan plat nomer:");
jammasuk = JOptionPane.showInputDialog("Jam masuk Kendaraan");
menitmasuk = JOptionPane.showInputDialog("Menit masuk Kendaraan");
jamkeluar = JOptionPane.showInputDialog("Jam Keluar Kendaraan");
menitkeluar = JOptionPane.showInputDialog("Menit masuk Kendaraan");
b = Integer.parseInt(jammasuk);//merubah string menjadi integer
c = Integer.parseInt(jamkeluar);
d = Integer.parseInt(menitmasuk);
e = Integer.parseInt(menitkeluar);
a = c-b; //jam keluar di kurang jam masuk
f = e-d; //menit keluar dikurang menit masuk
if (f<0){ //jika jumalh menit kurang dari 0 alis hasilnya mines maka
a=a-1;//jumlah jam dikurang 1
f=f+60;//jumlah menit + 60
}
if (a==0)//jika jam sama dengan 0 maka tarif sama dengan 1000
{tarif = 1000;
}
else if(a>=5) //jika lebih dari 5 jam maka tarif tetap 5000
{tarif = 5000;
}
else//jika kondisi jam tidak sesuai dengan kondisi diatas maka
{tarif = a * 1000;// tarif parkir sama dengan jam di kali 1000
}
JOptionPane.showMessageDialog(null,"Plat Nomer Kendaraan " +platnomer+ "\n "+"Jam Masuk "+b+"."+d+ "\n"+"Jam Keluar"+c+"."+e+"\n"+"Lama Parkir "+a+" Jam"+f+" Menit"+"\n"+"Tarif Parkir Perjam Rp 1.000"+"\n"+"Total Bayar "+tarif);
}
}
download source
Senin, 26 November 2012
Menentukan Bentuk Segitiga Dengan Java
Segitiga atau segi tiga adalah nama suatu bentuk yang dibuat dari tiga sisi yang berupa garis lurus dan tiga sudut. Matematikawan Euclid yang hidup sekitar tahun 300 SM menemukan bahwa jumlah ketiga sudut di suatu segi tiga adalah 180 derajat. Hal ini memungkinkan kita menghitung besarnya salah satu sudut bila dua sudut lainnya sudah diketahui.(wiki).
klasifikasi segitiga menurut panjang sisinya dapat di bagi menjadi tiga yaitu
- Segitiga sama sisi (bahasa Inggris: equilateral triangle) adalah segitiga yang ketiga sisinya sama panjang. Sebagai akibatnya semua sudutnya juga sama besar, yaitu 60o.
- Segitiga sama kaki (bahasa Inggris: isoceles triangle) adalah segitiga yang dua dari tiga sisinya sama panjang. Segitiga ini memiliki dua sudut yang sama besar.
- Segitiga sembarang (bahasa Inggris: scalene triangle) adalah segitiga yang ketiga sisinya berbeda panjangnya. Besar semua sudutnya juga berbeda.
Dalam pemrograman kita dapat menentukan klasifikasi segitiga tersebut dengan berbagai bahasa pemrograman terutama pemrograman dengan JAVA. Dalam java untuk menentukan jenis segitiga tersebut dapat menggunakan program seperti dibawah ini:
import javax.swing.JOptionPane;//digunakan saat kita menginginkan bentuk visual dengan java
public class sgitiga {
public static void main(String[] args) {
// TODO code application logic here
String sisi1;
String sisi2;
String sisi3;
int a;
int b;
int c;
sisi1 = JOptionPane.showInputDialog("Masukan sisi 1:");
//menginput nilai menggunakan bentuk visual
sisi2 = JOptionPane.showInputDialog("Masukan sisi 2");
sisi3 = JOptionPane.showInputDialog("Masukan sisi 3");
a = Integer.parseInt(sisi1);//merubah string menjadi integer
b = Integer.parseInt(sisi2);
c = Integer.parseInt(sisi3);
if (a==b && a==c && c==b){
//jika besar a sama dengan b dan besar a sama dengan c dan besar c sama
//dengan b maka segitiga tersebut segitiga sama sisi
JOptionPane.showMessageDialog(null,"segitiga sama sisi");
}
else if(a!=b && a!=c && c!=b){
//jika besar a tidak sama dengan b dan a tidak sama dengan c dan c tidak sama
//dengan b maka segitiga tersebut segitiga sembarang
JOptionPane.showMessageDialog(null,"segitiga sembarang");
}
else
//jika angka yang di masukan tidak sesuai dengan kondisi diatas maka
//segitiga tersebut segitiga sama kaki
{ JOptionPane.showMessageDialog(null,"segitiga sama kaki");}
}
}
//=======================STOP========================
download source
Minggu, 18 November 2012
Bilangan Prima Dengan Java
Dalam matematika, bilangan prima adalah bilangan asli yang lebih besar dari 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri. 2 dan 3 adalah bilangan prima. 4 bukan bilangan prima karena 4 bisa dibagi 2. Sepuluh bilangan prima yang pertama adalah 2, 3, 5, 7, 11, 13, 17, 19, 23 dan 29.
Jika suatu bilangan yang lebih besar dari satu bukan bilangan prima, maka bilangan itu disebut bilangan komposit.
Program:
cara pertama :
import java.util.Scanner;
public class bilanganprimadenganfor {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
String hasil = "";
boolean isPrima;
int number1;
int x = 2;
int count = 1;
for(number1=1;number1<=100;number1++){
if(number1==2 || number1==3 || number1 == 5 || number1 == 7)
{System.out.print(number1+" ");
}
else if (number1!=1 && number1%2!=0 && number1%3!=0 && number1%5!=0 && number1%7!=0)
{ System.out.print(number1+" ");
}
}
}
}
Cara ke 2
import java.util.Arrays;
public class prime {
private static int limit = 1000;
private static boolean[] sieve = new boolean[limit + 1];
private static int limitSqrt = (int)Math.sqrt((double)limit);
public static void main(String[] args) {
// there may be more efficient data structure
// arrangements than this (there are!) but
// this is the algorithm in Wikipedia
// initialize results array
Arrays.fill(sieve, false);
// the sieve works only for integers > 3, so
// set these trivially to their proper values
sieve[0] = false;
sieve[1] = false;
sieve[2] = true;
sieve[3] = true;
// loop through all possible integer values for x and y
// up to the square root of the max prime for the sieve
// we don't need any larger values for x or y since the
// max value for x or y will be the square root of n
// in the quadratics
// the theorem showed that the quadratics will produce all
// primes that also satisfy their wheel factorizations, so
// we can produce the value of n from the quadratic first
// and then filter n through the wheel quadratic
// there may be more efficient ways to do this, but this
// is the design in the Wikipedia article
// loop through all integers for x and y for calculating
// the quadratics
for (int x = 1; x <= limitSqrt; x++) {
for (int y = 1; y <= limitSqrt; y++) {
// first quadratic using m = 12 and r in R1 = {r : 1, 5}
int n = (4 * x * x) + (y * y);
if (n <= limit && (n % 12 == 1 || n % 12 == 5)) {
sieve[n] = !sieve[n];
}
// second quadratic using m = 12 and r in R2 = {r : 7}
n = (3 * x * x) + (y * y);
if (n <= limit && (n % 12 == 7)) {
sieve[n] = !sieve[n];
}
// third quadratic using m = 12 and r in R3 = {r : 11}
n = (3 * x * x) - (y * y);
if (x > y && n <= limit && (n % 12 == 11)) {
sieve[n] = !sieve[n];
} // end if
// note that R1 union R2 union R3 is the set R
// R = {r : 1, 5, 7, 11}
// which is all values 0 < r < 12 where r is
// a relative prime of 12
// Thus all primes become candidates
} // end for
} // end for
// remove all perfect squares since the quadratic
// wheel factorization filter removes only some of them
for (int n = 5; n <= limitSqrt; n++) {
if (sieve[n]) {
int x = n * n;
for (int i = x; i <= limit; i += x) {
sieve[i] = false;
} // end for
} // end if
} // end for
// put the results to the System.out device
// in 10x10 blocks
for (int i = 0, j = 0; i <= limit; i++) {
if (sieve[i]) {
System.out.printf("%,8d", i);
if (++j % 10 == 0) {
System.out.println();
} // end if
if (j % 100 == 0) {
System.out.println();
} // end if
} // end if
} // end for
} // end main
} // end class SieveOfAtkin
Langganan:
Komentar (Atom)






