OPERATOR
NIM : 1504105010017
KELOMPOK : 10
ASISTEN : YUSRIZAL
2015
BAB I
DASAR TEORI
+ penjumlahan a = b + c;
* perkalian a = b * c;
/ pembagian a = b / c;
% sisa pembagian a = b % c;
2. Operator Tunggal
Operator tunggal ini hanya membutuhkan satu operand saja untuk bisa
melakukan operasi. Yang perlu digarisbawahi adalah bahwa pada operator tunggal
ini tidak dapat digunakan pada variabel final karena nilainya selalu berubah-ubah.
Cara
Operator Keterangan Operator Penggunaan
+= a = (a + b) a += b;
-= a = (a & a -= b;
*= a = (a * b) a *= b;
/= a = (a / b) a /= b;
%= a = (a % b) a %= b;
|= a = (a | b) a |= b;
^= a = (a ^ b) a ^= b;
(Sumber: http://www.abouteguh.com/mengenal-operator-pada-pemrograman-
java/)
Operator-operator pada java:
+ Penjumlahan 5+4 9
- Pengurangan 9-5 4
* Perkalian 2*3 6
/ Pembagian 4/2 2
% Modulus 3%2 1
Ketika kedua operand dari operator pembagian adalah integer, maka hasilnya akan
integer. Misalkan 5/2 akan menghasilkan 2 bukan 2.5.
3. Operator Relasional
Operator ini digunakan untuk membandingkan dua buah nilai operand dan
menghasilkan nilai boolean, yaitu true or false. Java menyediakan
enamoperator relasional yang dapat digunakan untuk membadingkan dua
nilai.
5 < 10 True
10 <= 5 False
5 >= 3 True
8 == 8 True
10 != 10 False
4. Operator Logika
Operator logika memiliki satu atau lebih operand boolean yang
menghasilkan nilai boolean, dengan kata lain operator ini hanya dapat
digunakan untuk operand yang bertipe boolean.
Terdapat 6 operator logika dalan java, yaitu: && (Logika AND), &
(Boolean Logika AND), || (Logika OR), ^ (Boolean Logika Exclusive OR)
dan ! (Logika NOT).
Operator AND (&&) dan Booelan Logika AND (&)
Hasil operator AND bernilai true jika dan hanya jika kedua
operand mempunyai nilai boolean true. Berikut ini adalah Tabel
Kebenaran untuk AND:
P1 P2 P1 &&
P2
Hasil operator true jika salah satu dari nilai operand bernilai true. Berikut ini
adalah Tabel Kebenaran untuk OR:
P1 P2 P1 || P2
P1 !P1
true false
false true
Operator-operator Shorthand
Sebagai contoh i = i + 8;
i+= 8;
Operator += disebut dengan operator penugasan penjumlahan. Operator-operator
shorthand lainnya ditampilkan pada tabel dibawah ini:
+= Penugasan i += 8 i = i +8
Penjumlahan
-= Penugasan i -= 8 i=i-8
Pengurangan
*= Penugasan i *= 8 i=i*8
Perkalian
/= Penugasan i /= 8 i=i/8
Pembagian
%= Penugasan i %= 8 i=i%8
Modulus
Operator ini biasa disebut dengan increment dan decrement. Operator ini
digunakan untuk menaikan atau menurunkan suatu nilai integer (bilangan bulat)
sebanyak satu (1) satuan dan hanya dapat digunakan dalam variabel.
+ Penjumlahan n=n+1;
- Pengurangan n=n-1;
* Perkalian n=n*1;
/ Pembagian n=n/1;
2. Operator Tunggal
(+) Operator plus; menyatakan nilai positif (setiap angka tanpa tanda ini
akan dianggap sebagai positif)
(-) Operator minus; menyatakan nilai negatif, dapat pula digunakan untuk
menegatifkan suatu bilangan
(++) Operator kenaikan; menambah suatu bilangan dengan 1
(--) Operator penurunan; mengurangkan suatu bilangan dengan 1
(!) Operator lawan; membalik nilai suatu boolean
Operator tunggal hanya membutuhkan satu operan untuk melakukan
operasinya. Operator ini tidak dapat digunakan untuk variabel final, karena
variabel final berupa konstanta yang tidak dapat diubah-ubah. Beberapa jenis
operator tunggal diberikan pada tabel di bawah ini.
Nama
Simbol Operator Operasi Contoh
|| Kondisi OR b=true||false;
Operator && akan mengevaluasi Op2 (di sebelah kanan) HANYA jika
operand 1 bernilai "true". Seperti terlihat dari tabel di atas, apabila Op1 (di
sebelah kiri) bernilai "false", hasilnya akan selalu "false" tidak tergantung
pada isi dari Op2.
5. Operator Kondisi OR
Operator kondisi OR menghasilkan "true" jika salah satu operandnya
bernilai "true". Jika keduanya "false", operator ini menghasilkan "false".
Berikut ini table kebenaran oeprasi OR.
Op1 atau Exp1 Op2 atau Exp2 Hasil
Operator || akan mengevaluasi Op2 (di sebelah kanan) HANYA jika operand
1 bernilai "false". Seperti terlihat dari tabel di atas, apabila Op1 (di sebelah
kiri) bernilai "true", hasilnya akan selalu "true" tidak tergantung pada isi dari
Op2.
6. Operator NOT
Operator NOT ("!") melakukan operasi boolean NOT pada operand atau
ekspresi tunggal. Operator ini mengecek nilai boolean dari suatu operand
atau expresi kemudian membalik nilainya (dari true ke false atau false ke
true). Berikut ini adalah tabel kebenaran operator NOT.
Op1 Hasil
True False
False True
Operator adalah suatu tanda atau simbol yang dipakai untuk menyatakan suatu
operasi atau manipulasi nilai. Contohnya adalah operasi penambahan
dipresentasikan dengan tanda +, pengurangan dipresentasikan dengan tanda -, dan
sebagainya. Sedangkan operan adalah nilai yang dilibatkan didalamnya.
Bentuk operator
Berkenaan dengan banyaknya operan yang dilibatkan oleh ope maka
operator dapat diklasifikasikan menjadi bentuk yaitu :
1. Unary operator >> dengan 1 operan
2. Binary operator >> dengan 2 operan
3. Ternary operator >> dengan 3 operan
Jenis operator
Java menyediakan
bebagai jenis operator. Macam-macam operator ini mempunyai fungsi yang
berbeda. Berbagai jenis operator ini dapat diklasifikasikan sebagai berikut :
Operator Aritmatika
Arithmatic operator (operator aritmatika) adalah operator yang berfungsi untuk
operasi aritmatika. Lihat tabel dibawah ini.
Arithmatic Description
Operator
+ plus
- minus
* point
/ divide
% modulus
Operator Relasi
Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang
sering digunakan untuk mengatur alur jalannya sebuah program.
Operator Logika
Operator ini digunakan untuk ekspresi logik yang
menghasilkan nilai boolean. Operator-operator yang digunakan adalah AND ( &&
), OR ( ) dan NOT ( ! ).
a b a||b a && b
true true true true
true false true false
false true true false
false false false false
Bitwise Operator
Bitwise operator adalah operator yang dipakai untuk operasi bit pada nilai operan.
Operator yang digunakan untuk memanippulasi bit.
1. Bitwise AND
Bitwise AND akan menghasilkan bit 1, jika kedua operan bernilai bit
1. Operasi bitwise AND dapat digambarkan sebagai berikut :
a B a&b
0 0 0
0 1 0
1 0 0
1 1 1
2. Bitwise OR
Bitwise OR akan menghasilkan bit 1, jika salah satu operan bernilai bit
1. Operasi bitwise OR dapat digambarkan sebagai baerikut :
a B a&b
0 0 0
0 1 1
1 0 1
1 1 1
4. Bitwise Complement
Bitwise Complement akan menghasilkan bit yang berlawanan dengan bit
yang dioperasikan. Operasinya dapat digambarkan
Boolean Operator
Boolean operator (operator boolean) adalah operator yang mengharuskan
operannya bertipe boolean (true atau false).
Logic operator Description
! negation (not)
& AND
| OR
^ XOR
&& AND (short circuit)
|| OR (short circuit)
Operator !, &, | dan ^ mempunyai implementasi yang sama sebagaimana ketika ia
menjadi bitwise operator. Hanya saja di logical operator, operan yang dilibatkan
disini harus bertipe boolean, yang hanya mempunyai nilai true atau false.
(Sumber: http://agungimam.blogspot.co.id/2013/04/operator-dalam-java.html)
Operator Aritmatika
Operator Penugasan
Operator Pembanding
Operator Logika
1. Operator Aritmatika
Operator aritmatika yang sering digunakan untuk menghitung sebuah
pekerjaan matematika seperti jumlah, bagi, kali, pangkat, dll.
Operator Keterangan
+ Penjumlahan
- Pengurangan
* Pengurangan
/ Pembagian
% Sisa Pembagian
2. Operator Penugasan
Operator penugasan adalah operator yang digunakan untuk menugaskan suatu
fariabel untuk melakukan sebuah proses. operator ini biasa digunakan pada
perulangan sebagai increment atau decrement.
Operator Keterangan
= Pemberian Nilai
+= Penambahan Bilangan
-= Pengurangan Bilangan
/= Pembagian Bilangan
% Perolehan Sisa Pembagian
3. Operator Pembanding
4. Operator Logika
Operator Keterangan
&& Dan
|| Atau
(Sumber: http://jintoples.blogspot.co.id/2012/12/tipe-tipe-operator-pada-
java.html#.VkU-gNIrLIU)
BAB II
PROGRAM
1. Program I.
Input program:
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package basicmathdemo;
/**
*
* @author Jabal Abdussalam
*/
public class BasicMathDemo {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// deklarasi dan inisialisasi variable a dengan nilai 8+8
int a = 8 + 8 ;
Output program:
run:
hasil penjumlahan16dan48adalah64
hasil pembagian16dan96adalah0
hasil perkalian96dan48adalah4608
hasil pengurangan96dan16adalah80
BUILD SUCCESSFUL (total time: 0 seconds)
2. Program II.
Input program:
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package operatorprecedence;
/**
*
* @author Jabal Abdussalam
*/
public class OperatorPrecedence {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// deklarasi variable u,s,k dan e bertipe int
int u;
int s;
int k;
int e;
// deklarasi variable p,q,r dan s bertipe double
double p;
double q;
double r;
double S;
// berikan nilai 2 kepada u
u = 2;
// hitung l = 1+7/4-u
int l = (1+7)/(4 - u);
// hitung k = (4+4)/(u*5)
k = (4+4)/(u*5);
// isi e dengan 26
e = 26;
// isi p dengan 9
p = 9;
// hitung q = 5+5 / p*3
q = (5+5) / (p*3);
// hitung r = (8+8)/(p*3)
r = (8+8)/(p*3);
// s adalah selisih q dengan r
S = q - r;
// cetak nilai u,l,k dan e
System.out.println(" u bernilai=" +u+ "; l bernilai="+l+"; k
bernilai="+k+"; e bernilai="+e );
// cetak nilai p,q dan S
System.out.println(" p bernilai="+p+"; q bernilai="+q+ "; S bernilai="+S);
// cetak r
System.out.println("r bernilai="+r);
Output program:
run:
u bernilai=2; l bernilai=4; k bernilai=0; e bernilai=26
p bernilai=9.0; q bernilai=0.37037037037037035; S bernilai=-
0.2222222222222222
r bernilai=0.5925925925925926
BUILD SUCCESSFUL (total time: 0 seconds)
3. Program III.
Input program:
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package modulusdemo;
/**
*
* @author Jabal Abdussalam
*/
public class ModulusDemo {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// deklarasikan variable hasil, bilanganPertama dan bilanganKedua bertipe
int
int hasil;
int bilanganPertama;
int bilanganKedua;
// berikan nilai 20 untuk bilanganPertama
bilanganPertama = 20;
// berikan nilai 2 untuk bilanganKedua
bilanganKedua = 2;
// hasil adalah bilanganPertama modulus bilanganKedua
hasil = bilanganPertama % bilanganKedua;
//tampilkan hasil ke layar
System.out.println("hasil dari modulus
bilangan"+bilanganPertama+"dan"+bilanganKedua+"adalah"+(hasil));
// hasil adalah bilanganKedua modulus bilanganPertama
hasil = bilanganKedua % bilanganPertama;
// tampilkan hasil ke layar
System.out.println("hasil dari modulus
bilangan"+bilanganKedua+"dan"+bilanganPertama+"adalah"+(hasil));
}
}
Output program:
run:
hasil dari modulus bilangan20dan2adalah0
hasil dari modulus bilangan2dan20adalah2
BUILD SUCCESSFUL (total time: 0 seconds)
4. Program IV.
Input program:
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package arithmeticassigmentdemo;
/**
*
* @author Jabal Abdussalam
*/
public class ArithmeticAssigmentDemo {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// deklarasikan variable x int dan berikan nilai 11
int x = 11;
// deklarasikan variable y int dan berikan nilai 23
int y = 23;
// deklarasikan variable z int dan berikan nilai 18
int z = 18;
// tampilkan nilai x,y,z
System.out.println("x bernilai"+x+"; y bernilai:"+y+"; z bernilai:"+z);
// hitung x = x*2 dengan menggunakan operator aritmatika assigment
x*=2;
// hitung y = y/5 dengan menggunakan operator aritmatika assigment
y/=5;
// hitung z = z+6 dengan menggunakan operator aritmatika assigment
z+=6;
// tampilkan nilai x,y,z
System.out.println("x bernilai:"+x+"; y bernialai:"+y+"; z bernilai:"+z);
// hitung z = z+(x*y) dengan menggunakan operator aritmatika assigment
z+=(x*y);
// tampilkan nilai z
System.out.println("z bernilai"+z);
}
}
Output program:
run:
x bernilai11; y bernilai:23; z bernilai:18
x bernilai:22; y bernialai:4; z bernilai:24
z bernilai112
BUILD SUCCESSFUL (total time: 0 seconds)
5. Program V.
Input:
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package decisionoperator;
/**
*
* @author Jabal Abdussalam
*/
public class DecisionOperator {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
//deklarasi variable a bertipe int dengan nilai 12
int a = 12;
// deklarasi variable b bertipe int dengan nilai 82
int b = 82;
// deklarasi variable c bertipe
int c;
// menggunakan operator ? untuk menentukan bilangan pembagi dan yang
dibagi
//jika a > b maka c = a/b
//jika b < a maka c = b/a
c = (a > b)? a/b : b/a;
// tampilkan nilai c
System.out.println("hasil bagi nya adalah "+c);
}}
Output program:
run:
hasil bagi nya adalah 6
BUILD SUCCESSFUL (total time: 0 seconds)
BAB III
PEMBAHASAN
1. Pembahasan program I.
Pada program ini membahas tentang aritmatika dasar, dimana
nama kelasnya yaitu BasicMathDemo. Pertama mendeklarasikan dan
menginisialisasi beberapa variable yang bertipe int dengan nama dan nilai
yang berbeda-beda. Proses deklarasi dan inisialisasinya seperti dibawah
ini:
int a = 8 + 8;
int b = a * 6;
int c = b / 2;
double p;
double q;
double r;
double S;
k = (4+4)/(u*5);
e = 26;
p = 9;
q = (5+5) / (p*3);
r = (8+8)/(p*3);
S = q - r;
Kemudian menampilkan u, l, k dan e dengan perintah seperti
dibawah ini:
System.out.println("r bernilai="+r);
r bernilai=0.5925925925925926
int hasil;
int bilanganPertama;
int bilanganKedua;
bilanganPertama = 20;
bilnganKedua = 2;
x*=2;
y/=5;
z+=6;
Hasil output dari program ini akan Nampak seperti dibawah ini:
z bernilai112
5. Pembahasn program V.
int a = 12;
int b = 82;
int c;
KESIMPULAN