OPERASI ARITMETIKA

28
OPERASI ARITMETIKA

description

OPERASI ARITMETIKA. Learning Outcomes. Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: Menggunakan sintaks untuk melakukan operasi aritmetika Menggunakan kaidah konvensi penamaan pada pemrograman. Outline Materi. Operator Numerik Assignment Statement Assignment Expressions - PowerPoint PPT Presentation

Transcript of OPERASI ARITMETIKA

Page 1: OPERASI ARITMETIKA

• OPERASI ARITMETIKA

Page 2: OPERASI ARITMETIKA

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu:

• Menggunakan sintaks untuk melakukan operasi aritmetika

• Menggunakan kaidah konvensi penamaan pada pemrograman

Page 3: OPERASI ARITMETIKA

Outline Materi

• Operator Numerik

• Assignment Statement

• Assignment Expressions

• Arithmetic Expressions

• Operator Shorthand

• Operator Increment dan Decrement

• Konvensi Penamaan

Page 4: OPERASI ARITMETIKA

Operator NumerikOperator Deskripsi Contoh Hasil

+ Penambahan(Addition)

34 + 1 35

- Pengurangan(Subtraction)

34.0 – 0.1 33.9

* Pengalian(Multiplication)

300 * 30 9000

/ Pembagian(Division)

1.0 / 2.0 0.5

% Sisa Hasil Bagi(Remainder)

20 % 3 2

Page 5: OPERASI ARITMETIKA

Operator Numerik

• 4 tipe data bilangan bulat pada Java: byte, short, int, dan long

• 2 tipe data bilangan desimal pada Java: float, dan double

• Penggunaan bilangan desimal double lebih akurat daripada float

• Hasil pembagian dari 2 bilangan bulat adalah bilangan bulat– Contoh: 5/2 = 2 (bukan 2.5), hasilnya dibulatkan

ke bawah

Page 6: OPERASI ARITMETIKA

Operator Numerik• Pada pernyataan “luas = 3.14 * rad * rad;”

Luas, 3.14, rad, rad operand* operator= pernyataan assignment

• Operand dapat berbeda tipe data, Java akan mengkonversi ke tipe data terbesar (widening a cast) secara otomatis

• Contoh:byte i = 100;long k = i * 3 + 4; // i dikonversi ke long, hasil k berupa longdouble d = i * 3.1 + k / 2; // i dan k dikonversi ke double, hasil d berupa double

Page 7: OPERASI ARITMETIKA

Operator Numerik• Operator % adalah sisa hasil bagi / modulo / remainder• Dapat digunakan untuk bilangan bulat positif/negatif

ataupun desimal• Contoh:

10%7 = 3 (Keterangan: 10 / 7 = 1, dan sisa 3)

6 % 7 = 6 (Keterangan: 6 / 7 = 0, dan sisa 6)

-7 % 3 = -1 (Keterangan: -7 / 3 = -2, dan sisa -1)

-12 % 4 = 0 (Keterangan: -12 / 4 = -3, dan sisa 0)

20 % -13 = 7 (Keterangan: 20 / -13 = -1, dan sisa 7)

-26 % -8 = -2 (Keterangan: -26 / -8 = 3, dan sisa -2)

Page 8: OPERASI ARITMETIKA

Operator Numerik• Pada 20 % -13 = 7

20 = dividend (yang dibagi)

-13 = divisor (pembagi)

7 = hasil

• Modulo/remainder akan menghasilkan bilangan negatif jika dividendnya negatif

• Modulo/remainder bermanfaat dalam programming– Contoh: Pencarian bilangan genap/ganjil, Pencarian

hari pada kalendar

Page 9: OPERASI ARITMETIKA

Assignment Statements• Digunakan untuk pemberian nilai

• Menggunakan (=) sebagai assignment operator

• Assignment statements adalah:

Variabel = expression

• Contoh: luas = 3.14 * radius * radius;

Assignment statements

ExpressionVariabel

Assignment operator

Page 10: OPERASI ARITMETIKA

Assignment Expressions• Expression dapat berupa assignment

statements, disebut assignment expressions

• Contoh: r = j = k = 1;

Assignment statements

Assignment ExpressionVariabel

Assignment

operator

Page 11: OPERASI ARITMETIKA

Arithmetic Expressions

• Expressions yang melibatkan operator numerik• Contoh:

• Arithmetic Expressions:

(3+4*x)/5 – 10*(y-5)*(a+b+c)/x+9*(4/x+(9+x)/y)• Operasi dalam tanda kurung (…) akan dieksekusi

terlebih dahulu• Memungkinkan tanda kurung yang bersifat nested

y

x

xx

cbayx 949

))(5(10

5

43

Page 12: OPERASI ARITMETIKA

Arithmetic Expressions

• Setelah operator tanda kurung (…), prioritas eksekusi adalah * dan /, lalu + dan –

• Jika ada > 1, prioritas eksekusi dari kiri ke kanan

• Java mengacu pada operator precedence dan associativity saat mengeksekusi expressions

Page 13: OPERASI ARITMETIKA

Arithmetic Expressions

Page 14: OPERASI ARITMETIKA

Operator Shorthand

• Variabel yang digunakan, dimodifikasi, dan di-assign ulang pada variabel yang sama

• Contoh:i = i + 8

Dapat digantikan menjadi i += 8

• += disebut addition assignment operator dalam bentuk ringkas (shorthand operator)

• Operator tidak dipisahkan spasi (harus +=, bukan + =)

Page 15: OPERASI ARITMETIKA

Operator Shorthand

Operator Name Example Equivalent

+= Addition assignment A += 8 A = A + 8

-= Substratction assignment A -= 8 A = A – 8

*= Multiplication assignment A *= 8 A = A * 8

/= Division assignment A /= 8 A = A / 8

%= Remainder assignment A %= 8 A = A % 8

• Contoh:A = A – 3 A -= 3

B = B % 7 B %= 7

C = C * 8 C *= 8

Page 16: OPERASI ARITMETIKA

Operator Increment dan Decrement

• Operator shorthand untuk menaikan dan menurunkan 1 nilai

• Sering digunakan dalam perulangan

• Operator: ++ dan --

• Dalam notasi prefix (di awal) dan postfix (di akhir)

• Operator tidak dipisahkan spasi (harus ++, bukan + +)

Page 17: OPERASI ARITMETIKA

Operator Increment dan Decrement

Operator

Name Description

++var preincrement Nilai var ditambahkan 1 dahulu, lalu pengoperasian

var++ postincrement Pengoperasian dahulu, lalu nilai var ditambahkan 1

--var predecrement Nilai var dikurangi 1 dahulu, lalu pengoperasian

var-- postdecrement

Pengoperasian dahulu, lalu nilai var dikurangi 1

Page 18: OPERASI ARITMETIKA

Operator Increment dan Decrement

• Contoh 1:int i = 10;int newNum = 10 * i++;sama denganint i = 10;int newNum = 10 * i;i = i + 1;

• Contoh 2:int i = 10;int newNum = 10 * (++i);sama denganint i = 10;i = i + 1;int newNum = 10 * i;

• Contoh 3:double x = 1.0;double y = 5.0;double z = x-- + (+

+y);sama dengandouble x = 1.0;double y = 5.0;y = y + 1;double z = x + y;x = x – 1;

Page 19: OPERASI ARITMETIKA

Operator Increment dan Decrement

Page 20: OPERASI ARITMETIKA

Operator Increment dan Decrement

• Awal i=8; dan j=3;• i+=(++j);

Sama dengan:

j=j+1; j=4

i=i+j; i=12

• i+=(j++);Sama dengan:

i=i+j; i=16

j=j+1; j=5

Page 21: OPERASI ARITMETIKA

Did You Know?

• Statements/Expressions bisa dilakukan langsung di dalam System.out.println(…);

• Contoh:System.out.println(i=10);

System.out.println(++i);

System.out.println(i%=2);

System.out.println(i=i+(i=5));

System.out.println(i=(i=1)+2);

Page 22: OPERASI ARITMETIKA

Did You Know?

Page 23: OPERASI ARITMETIKA

Did You Know?• Penggunaan tanda petik (“) pada

System.out.println(…) menyatakan string• Penggunaan (+) pada System.out.println(…)

berarti menyambungkan 2/lebih string• Contoh:

System.out.println(“Hasil penjumlahan i+j=”+i+j);

berbeda dengan

System.out.println(“Hasil penjumlahan i+j=“+(i+j));

Page 24: OPERASI ARITMETIKA

Did You Know?

Page 25: OPERASI ARITMETIKA

Advanced Learning• Konvensi Penamaan Variabel dan Fungsi

– Lowercase untuk penamaan variabel dan fungsi, jika lebih dari 1 kata, gabungkan dan gunakan huruf kapital untuk kata kedua dan berikutnya

– Contoh: radius, area, showInputDialog, println, nextInt

• Konvensi Penamaan Class– Menggunakan huruf kapital untuk setiap awal kata– Contoh: ComputeArea, JOptionPane, System, Math, Scanner

• Konvensi Penamaan Konstanta– Menggunakan huruf kapital semua dan setiap kata dipisahkan

underscore ( _ )– Contoh: PI, MAX_VALUE

Page 26: OPERASI ARITMETIKA

Advanced Learning• Konvensi penamaan ini menggunakan standar Java• Memudahkan programmer lain saling membaca

kode• Jangan memberikan nama class yang sudah ada di

Java– Contoh: Math, System– Class akan dipelajari lebih lanjut di Algoritma dan MOOP

2

• Hindari untuk menyingkat penamaan– Contoh: numberOfStudents akan lebih baik (deksriptif)

daripada numStuds, numOfStuds, atau numOfStudents

Page 27: OPERASI ARITMETIKA

Advanced Learning• Sebaiknya konsisten terhadap indentansi dan spasi

– Contoh: int i= 3+4 * 4 bad styleint i = 3 + 4 * 4 good style

• Ada 2 jenis block style yang popular– Next-line style

public class Test{

public static void main(String[] args){}

}– End-of-line style

public class Test {public static void main(String[] args) {}

}

Page 28: OPERASI ARITMETIKA

Referensi

• Introduction to Java Programming. 7ed. Liang. 2009. p58-81

• Java Software Solutions. 5ed. Lewis & Loftus. 2007. p96-99, p103-114

• Java A Beginner’s Guide. 3ed. Herbert. 2005. p52-55, p58-68

• Dasar Pemrograman Java 2. Abdul Kadir. 2004. p42-61

• The Complete Referenc Java. 5ed. Herbert. 2005. p58-62