// print result
System.out.print("Total value = ");
System.out.println(total);
}
} Integer: jumlah coin (8 pennies, 4 dimes, dan 3 quarters)
Floating point: nilai dari coin tsb (0.01, 0.10 dan 0.25)
11/02/21 Algoritma & Pemrograman 8
Floating Point
Notasi operasi Perkalian: * (bukan x)
Tambah: + ; Kurang: - ; dan Bagi: /
Bilangan dapat ditulis bagian dari
program:
Jangan menggunakan spasi dan koma (,)
Misalkan: 17.000,50 (melayu) 17000.50
Real Number: 133 x 10-2 133E-2
Terdiri dari: mantissa 133 dan exponent -2
Decimal Hexadecimal
Decimal: 60
Hexadecimal : 3C
60 / 16 = 3 sisa 12 (C)
11/02/21 Algoritma & Pemrograman 22
Assignment
Remember:
Semua nama variabel dibuat untuk menyimpan nilai
(tergantung tipe data).
Assignment
Memberikan nilai baru kepada variabel (simbol: =)
total = pennies * 0.01;
Nama Variabel:
Nilai yang disimpan pada variabel dapat berubah,
sesuai dengan yang diinginkan oleh program (input)
Misalkan variabel dapat digunakan berulang-ulang untuk
menyimpan data yang baru.
// print result
System.out.print(“Total value = “);
System.out.println(total);
}
}
11/02/21 Algoritma & Pemrograman 24
Assignment
Perhatikan:
total = total + dimes * 0.10;
Variabel total nilainya (0.08) digunakan
kembali untuk membentuk nilai baru total
nilai = 3 + 7;
operator
beta = 2 * ++x;
sekarang: beta berisi: ? , x berisi: ?
alfa = 2 * x;
x = x + 1;
beta = 2 * ++x;
Ekivalen dengan:
x = x + 1;
beta = 2 * x;
11/02/21 Algoritma & Pemrograman 34
Operator Decrement
Mengurangi 1 nilai:
int i;
Dapat dilakukan secara langsung: i = i - 1;
Menggunakan unary operator:
i--; atau --i;
Apakah perbedaannya?
Ekspresi: op--
Nilai ekspresi: nilai op sebelum dikurangi 1
Akibat: variabel op berkurang 1 nilainya
Ekspresi: --op
Nilai ekspresi: nilai op sesudah dikurangi 1
Akibat: variabel op berkurang 1 nilainya
11/02/21 Algoritma & Pemrograman 35
Operator Relasional
Relasional:
Membandingkan dua nilai
Menghasilkan nilai boolean (true atau false)
Operator Ekspresi Bernilai true jika
> a>b a lebih besar dari b
>= a >= b a lebih besar atau sama
dengan b
< a<b a lebih kecil dari b
00000000000000000000000000000000000000000000000
00000000011011001
~A
11111111111111111111111111111111111111111111111
11111111100100110 = -218
11/02/21 Algoritma & Pemrograman 42
Operator Bitwise: <<
Operator left shift (<<)
untuk menggeser bit-bit ke kiri sebanyak operand sebelah kanan
Identik dengan pengalian dengan bilangan 2
x << n identik dengan x * 2n
Contoh:
A = 29
0000000000000000000000000000000000000000000000000000
000000011101
A << 2
0000000000000000000000000000000000000000000000000000
000001110100 = 116 = 29 * 22
11/02/21 Algoritma & Pemrograman 43
Operator Bitwise: >>
Operator right shift (>>)
untuk menggeser bit-bit ke kanan sebanyak operand sebelah kanan
Identik dengan pembagian dengan bilangan 2
x >> n identik dengan x / 2n
Contoh:
A = 29
000000000000000000000000000000000000000000000000000000
0000011101
A >> 2
000000000000000000000000000000000000000000000000000000
0000000111 = 7 = 29 / 22
A >>> 2
00000000000000000000000000000111 = 7
11/02/21 Algoritma & Pemrograman 45
Operator Bitwise: >>> [2]
Operator unsigned right shift (>>>) untuk bilangan negatif
32 bit
Contoh:
A = -29 (two’s complement of 29)
00000000000000000000000000011101 = 29
- 29 = complement dari 29 + 1
11111111111111111111111111100010 = ~29
00000000000000000000000000000001 = 1
---------------------------------------------------------------+
11111111111111111111111111100011 = -29
A >>> 2
00111111111111111111111111111000 = 1073741816