3 Operator Lanjut Dan Tipe Bilangan Lanjut
-
Upload
ibnu-rezpectorjackers -
Category
Documents
-
view
264 -
download
0
description
Transcript of 3 Operator Lanjut Dan Tipe Bilangan Lanjut
Operator Lanjut dan Tipe Bilangan
Lanjut
Muhammad Ridwan Arif Cahyono
Kuis : Buku tertutup -> Curang = 80!
1. Buatlah flowchart, algoritma, dan pseucode dari program
untuk menghitung hambatan (R) apabila diketahui nilai
Luas kawat (A), hambat jenis (p), panjang kawat (L).
2. Apabila nilai A = 1,0, p = 2,98 dan L = 20,10. Buat
program sederhana untuk menghitung nilai R
berdasarkan soal nomor 1.
3. double A = 13.75, b =4; berapa hasil dari A % b?
4. Hitung 10 + 1.0/4 dan 10.0 + 1/4!
5. Misalkan a = 5, berapa hasil dari ++a dan a++?
Tipe bilangan
Integer : terdiri dari byte, short, int, dan long -> bilangan
bulat
Floating-point : terdiri dari float dan double -> bilangan riil
Karakter : terdiri dari char -> karakter alfanumerik dan
simbol.
Boolean : terdiri dari tipe data boolean ->
mempresentasikan nilai logika (benar, salah)
Mendeklarasikan Variabel
Tipe namaVariabel;
Tipe namaVariabel1, Variabel2,...;
Contoh :
int x;
int x, y, z;
Dalam suatu program, variabel harus unik dan berbeda satu sama
lain.
Inisiasi variabel
Tipe namaVariabel = nilai;
Tipe namaVariabel1 = nilai1, namaVariabel2 = nilai2;
Contoh :
int x = 10;
char y = “A”;
Typecasting
Typecasting adalah proses pemeranan tipe data dari satu
tipe tertentu ke tipe lainnya.
Konversi otomatis -> kompatible, rentang tujuan lebih besar
daripada awal
Byte b =2;
Int c =b;
Konversi tak otomatis -> tidak kompatible, rentang tujuan lebih
rendah daripada awal
Int a = 257;
Byte b = (byte) a;
Array
Array adalah sekumpulan variabel bertipe sama yang diacu
dengan nama yang sama. Array diakses melalui indexnya
yang selalu berupa integer dan dimulai dari 0.
A[0] A[1] A[2] A[3]
10 20 30 50
Array Satu Dimensi
Array dideklarasikan dengan tanda [] (bracket).
Bentuk umum :
Tipe namaArray[];
Atau
Tipe [] namaArray;
Untuk menentukan jumlah elemen array, perlu
mengalokasikan ruang memory dengan kata kunci new.
JumlahHari = new int[12]
Array Multi Dimensi
Int [] [] duaD = new int [2] [3]
duaD[0][0] duaD[0][1] duaD[0][2]
duaD[1][0] duaD[1][1] duaD[1][2]
Operator Aritmatika
Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Modulus
++ Increment
-- Decrement
Operant dari operator aritmatika harus bertipe numerik.
int a = 2, b = 4;
c = a + b;
Assignment
Operator Keterangan
+= Assignment untuk penjumlahan
-= Assignment untuk pengurangan
*= Assignment untuk perkalian
/= Assignment untuk pembagian
%= Assignment untuk sisa bagi
b += a // sama dengan b = b + a
Catatan khusus
Penggunaan operator “/” :
apabila kedua operand berupa integer maka hasilnya adalah
integer.
¼ = 0
Apabila salah satu operand berupa floating point, maka hasilnya
berupa floating point.
1.0/4 = 0.25
Operator Increment dan Decrement
Increment : menaikan nilai operand dengan nilai 1.
a = a + 1 -> a++
Decrement : menurunkan nilai operand dengan nilai 1.
a = a – 1 -> a--
Terdapat dua jenis :
Pre-increment (dinaikan satu lebih dulu sebelum diproses)
a = 5
++a = 6
a = 6
Post-increment (diproses dulu sebelum dinaikan satu)
a = 5
a++ = 5
a = 6
Operator Relasional
Operator Keterangan
== Sama dengan
!= Tidak sama dengan
> Lebih besar
< Lebih kecil
>= Lebih besar atau sama dengan
<= Lebih kecil atau sama dengan
Hasil yang diberikan dari operasi yang melibatkan operator relasional akan
bernilai boolean (true/false)
Contoh
Public class relasional {
public static void main(String[] args) {
int a = 5, b = 10;
System.out.println(“nilai :” + (a == b))
System.out.println(“nilai :” + (a < b))
}
}
Output :
Nilai : false
Nilai : true
Operator logika
Operator Keterangan
&& Operasi AND
|| Operasi OR
^ Operasi XOR
! Operasi NOT
A B A&&B A||B A^B !A
True True True True False False
True False False True True False
False True False True True True
False False False False False True
Operator Bitwise
Operator Keterangan
& Operasi bitwise AND
| Operasi bitwise OR
^ Operasi bitwise XOR
~ Operasi bitwise NOT
>> Operasi shift right
>>> Operasi shift right zero fill
<< Operasi shift left
Operator bitwise digunakan untuk melakukan operasi boolean terhadap dua buah
operand bertipe integer. Operasi ini dilakukan bit demi bit. Jadi integer dikonversi
menjadi bit. Apabila hasilnya true nilainya 1, apabia false nilainya 0.
Operator bitwise AND
Menghasilkan nilai 1 apabila kedua nilai bernilai 1.
00001000 Nilai 8 dalam bentuk biner
00000111 Nilai 7 dalam bentuk biner
-------------- &
00000000 hasilnya = 0
Operator bitwise OR
Menghasilkan nilai 0 apabila hanya kedua nilai bernilai 0.
00001000 Nilai 8 dalam bentuk biner
00000111 Nilai 7 dalam bentuk biner
-------------- |
00001111 hasilnya = 15
Operator Bitwise XOR
Akan menghasilkan 1 apabila salah satu bernilai 1.
00101010 nilai 42 dalam bentuk biner
00001111 nilai 15 dalam bentuk biner
------------- ^
00100101 hasilnya = 37
Operator bitwise NOT
Dilakukan untuk negasi bit
00001000 menjadi 11110111
Operator Shift Right
Digunakan untuk melakukan pergeseran bit ke arah kanan
sebanyak nilai yang didefinisikan.
x >> 3, melakukan pergeseran 3 bit ke arah kanan dari nilai
x yang telah dikonversi menjadi bit.
Contoh :
64 >> 1 -> 32
64 >> 2 -> 2
Operator Shift Right Zero Fill
Operator Shift Left
Digunakan untuk melakukan pergeseran bit ke arah kiri
sebanyak nilai yang didefinisikan.
x << 2, melakukan pergeseran 2 bit ke arah kanan dari nilai
x yang telah dikonversi menjadi bit.
Contoh :
2 >> 1 -> 4
2 >> 2 -> 8
Operator ?:
Digunakan untuk menggantikan statement if-then-else.
ekspresi1 ? Ekspresi2 : ekspresi3;
Ekspresi1 yang akan diperiksa dan harus menghasilkan
nilai bertipe boolean. Apabila ekspresi1 bernilai true,
maka ekspresi2 yang diambil nilainya, apabila sebaliknya
maka ekspresi3 yang akan diambil nilainya.
nilai = -2;
hasilnya = nilai < 0 ? –nilai : nilai;
------------------------------------------
hasilnya : 2
Prioritas pada Operator Tertinggi
() [] .
++ -- ~ !
* / %
+ -
>> >>> <<
> >= < >=
== !=
&
^
|
&&
||
?:
=
Terendah
Penggunaan Tanda Kurung
Menunjukan ekspresi yang akan dilakukan terlebih dahulu.
Int a=3, b=4;
Int hasil = a + b * 2
-------------------------
Int hasil = (a + b) * 2