Pemrograman Dasar - Operasi Aritmetika dan Logika (BAB V)
Kompetensi Dasar
3.5 Menerapkan operasi aritmetika dan logika.
4.5 Membuat kode program dengan operasi aritmetika dan logika
(A) Operasi Aritmetika dalam Pascal
Sebuah proses yang melibatkan operator terhadap dua input data atau lebih untuk menghasilkan nilai output tertentu disebut sebagai operasi. Operasi yang melibatkan nilai data berjenis numerik, baik bilangan bulat maupun bilangan real disebut sebagai operasi aritmetika. Data yang memperoleh perlakuan operasi disebut operand, sedangkan simbol khusus yang melakukan operasi disebut sebagai operator. Berikut adalah daftar operasi matematika yang dikenal oleh Pascal.
Contoh operasi aritmetika yang dapat dilakukan pada program Pascal dapat disajikan dalam bentuk tabel berikut.
Penjelasan:
Program pengoperasian matematika dengan data berjenis bilangan bulat memiliki operator penjumlahan, pengurangan, perkalian, pembagian, dan penghitungan sisa hasil bagi
Untuk melakukan proses pemilihan jenis operator dalam operasi, digunakan metode percabangan dengan struktur case...of.
Penjelasan:
Program pengoperasian matematika dengan data berjenis bilangan real memiliki operator penjumlahan (+), pengurangan (-), perkalian (*), dan pembagian (/).
Untuk melakukan proses pemilihan jenis operator dalam operasi, digunakan metode percabangan dengan struktur case...of.
Penjelasan:
Program pengoperasian matematika dengan operator pembagian (l) antara bilangan bulat dengan bilangan real akan menghasilkan bilangan real.
(B) Fungsi Matematika
Untuk mendukung operasi aritmetika dalam pemrograman Pascal dapat menggunakan beberapa fungsi matematika seperti berikut.
1. ABS
ABS merupakan fungsi matematika dalam Pascal yang berguna untuk menghasilkan nilai mutlak dari sebuah bilangan negatif. Perhatikan contoh fungsi ABS dalam pengoperasian matematika berikut.
2. FRAC
FRAC merupakan fungsi matematika dalam Pascal yang berguna untuk menghasilkan nilai desimal dari bilangan real.
3. INT
Fungsi INT berguna untuk membulatkan bilangan pecahan menjadi sebuah bilangan bulat positif.
4. LN
LN berfungsi untuk menghasilkan nilai logaritma dari sebuah bilangan.
5. SIN
Syntax SIN berfungsi untuk menghitung nilai sinus dari sebuah bilangan yang biasanya digunakan untuk menghitung sudut tertentu dari 0° sampai 360° pada operasi matematika.
6. SQR
Syntax SQR berguna untuk melakukan penghitungan kuadrat dari sebuah bilangan.
7. SORT
Syntax SQRT berguna untuk melakukan penghitungan akar kuadrat dari sebuah bilangan.
8. Pemangkatan Lebih dari 2
Untuk menghitung bilangan dengan pangkat lebih 2, misalnya 4 pangkat 3, maka harus menggunakan struktur perulangan untuk melakukan perkalian sebanyak jumlah pangkat. Contohnya sebagai berikut.
22 = 2 x 2 = 4
43 = 4X4 X 4 = 64
4=1
9. PRED
Perintah PRED digunakan untuk menghasilkan nilai yang lebih kecil darinya. Perintah PRED hanya dapat digunakan pada tipe data numerik, character, dan Boolean.
10. SUCC
Perintah SUCC digunakan untuk menghasilkan nilai yang lebih besar darinya. Sama seperti perintah PRED, SUCC hanya dapat digunakan pada tipe data numerik, character, dan Boolean.
11. CHR
Perintah CHR digunakan untuk mengonversi data numi menjadi data bertipe karakter berdasarkan kode ASCII.
12. ORD
Perintah ORD digunakan untuk mengonversi data bertipe karakter menjadi data bertipe numerik berdasarkan kode ASCII.
13. ODD
Perintah ODD digunakan untuk menentukan sebuah bilangan termasuk bilangan ganjil atau bukan. Output dari operasi ODD adalah boolean.
14. INC dan DEC
Perintah INC digunakan untuk menambah nilai bilangan numerik sebesar 1, sedangkan perintah DEC digunakan untuk mengurangi nilai bilangan numerik sebesar 1. Format penulisan INC adalah sebagai berikut.
15. RANDOM
Perintah RANDOM digunakan untuk menampilkan bilangan numerik secara acak. Adapun format penulisannya adalah sebagai berikut.
Zona Aktivitas
Uji Pengetahuan (Nilai Pengetahuan I)
1. Jelaskan jenis operator aritmetika pada bilangan bulat dan bilangan real.
2. Jelaskan fungsi matematika ABS, FRAC, SOR, SORT, INT, LN, SIN, PRED, SUCC, ORD, ODD,
INC, DEC, dan RANDOM.
(C) Operasi Logika dalam Pascal
Operator logika NOT akan menghasilkan nilai berlawanan dari nilai yang di-input-kan. Jika x bernilai false, ketika dioperasikan dengan operator NOT menjadi x := NOT(x); nilai x menjadi true.
Contoh
mengunakan operator NOT
Operator logika OR akan menghasilkan nilai true jika salah satu operand bernilai true. Contoh algoritmenya adalah sebagai berikut.
Penjelasan:
3. Fungsi SHR sama dengan membagi bilangan dengan 2 sebanyak n kali.
x = 9 dan y = 10
x <y, bernilai benar (true)
X = y, bernilai salah (false) true OR false menghasilkan true, maka program menampilkan output 'x lebih kecil sama dengan y.
x = 9 dan y = 10
x < y, bernilai benar (true)
x = y, bernilai salah (false) true AND false menghasilkan output false, maka program menampilkan output 'x bernilai tidak lebih kecil dan sama dengan y'.
x <y, bernilai benar (true)
X = y, bernilai salah (false) true OR false menghasilkan true, maka program menampilkan output 'x lebih kecil sama dengan y.
Penjelasan:
x = 9 dan y = 10
x < y, bernilai benar (true)
x = y, bernilai salah (false) true AND false menghasilkan output false, maka program menampilkan output 'x bernilai tidak lebih kecil dan sama dengan y'.
Penjelasan:
x = 9, y = 10, dan z = 1.
Pada kondisi pertama (x < y) bernilai true XOR (x > z) bernilai true. Output yang dihasilkan darioperasi true XOR true adalah false sehingga pada struktur percabangan if yang pertama tidak akan mengerjakan aksi di bawahnya.
Pada kondisi kedua (x < y) bernilai true XOR (y <z) bernilai false. Output yang dihasilkan dari operasitrue XOR false adalah false sehingga pada struktur percabang if yang kedua akan mengerjakan aksi dibawahnya dengan mencetak tulisan 'x lep besar y, y tidak lebih kecil z'.
Zona Aktivitas
A. Uji Pengetahuan (Nilai Pengetahuan II)
1. Jelaskan jenis operator logika yang Anda ketahui.
2. Apa perbedaan operator OR dengan XOR? Jelaskan dengan program.
(D) Operasi Bit dalam Pascal
operasi bit digunakan untuk melakukan manipulasi bit pada bilangan bertipe data byte dan word. Perbedaan mendasar disebut sebagai operasi bitwise. Operator logika melakukan pengoperasian pada semua jenis data yang di-input dan menghasilkan nilai output berupa nilai Boolean, yaitu true dan false. Berbeda dengan operator logika, operator bitwise mirip dengan operator aljabar yang mengolah data bertipe byte dan word sehingga menghasilkan nilai output berupa bilangan juga. Terdapat lima jenis operator bitwise yang dikenal dalam Pascal, yaitu AND, OR, XOR, SHR, dan SHL.
1. Konversi Bilangan Biner
Bilangan biner terdiri atas dua jenis, yaitu true (1) dan a (O). Nilai true mewakili bilangan 1 atau kondisi sakelar listrik dalam kondisi ON, sedangkan false mewakili bilangan atau kondisi sakelar listrik dalam kondisi OFF.
Contoh
2. Operator OR
Operator OR akan menghasilkan nilai true jika salah satu operand-nya bernilai true (lihat subbab sebelumnya).
3. Operator XOR
Operator XOR akan menghasilkan nilai true jika nilai kedua operand berbeda. Akun tetapi, operator tersebut akan bernilai false jika nilai kedua operand sama, meski nilai keduanya adalah true.
Menggunakan operator bit XOR.
Pada layar komputer Anda akan muncul tampilan operator bit dengan XOR seperti gambar berikut.
4. Operator AND
Operator AND akan menghasilkan nilai true jika kedua operand bernilai true. Akan tetapi, operator tersebut akan bernilai false jika salah satu operand atau bahkan kedua operand bernilai false.
5. Operator SHR
SHR merupakan singkatan dari Shift Right yang berarti menggeser nilai bit ke kanan menuju ke posisi yang lebih rendah. Bentuk format penulisan kode program adalah sebagai berikut.
bit 1 dan bit kedua dari bilangan 10 digeser 2 bit (dihapus sebanyak hal menjadi bernilai 10. Jadi, nilia bilangan 10 desimal setelah dioperasikan da SHR sebanyak 2. menghasilkan nilai desimal sebesar 2.
2. Menggunakan fungsi SHR
Hasil dari output program di atas memiliki perhitungan sebagai berikut.
3. Fungsi SHR sama dengan membagi bilangan dengan 2 sebanyak n kali.
Dari program tersebut, dapat disimpulkan bahwa sebuah bilangan ketika mendapat perlakuan operator SHR akan sama dengan bilangan tersebut dibagi 2 sejumlah n kali. Contohnya adalah sebagai berikut.
10 SHR 3.
Penyelesaian: 10 div 2 div 2 div 2 = 1
6. Operator SHL
SHL merupakan singkatan dari Shift Left yang berarti menggeser nilai bit ke kiri menuju ke posisi yang lebih tinggi dari sebelumnya. Bentuk format penulisan kode program adalah sebagai berikut.
Contoh
1. 10 SHL 2.
Jawab: Konversi mode 10 SHL 2 adalah mengubah bilangan 10 desimal menjadi biner sehingga bentuknya menjadi:
Menambahkan 2 bit bernilai 00 pada deret bit sebelah kiri bilangan 1010 sehingga data menjadi 101000. Jadi, nilai bilangan 10 desimal setelah dioperasikan dengan operator SHL sebanyak 2 menghasilkan nilai desimal sebesar 40.
2. Menggunakan fungsi SHL.
Hasil dari output program tersebut memiliki perhitungan sebagai berikut.
3. Fungsi SHL sama dengan mengalikan bilangan dengan 2 sebanyak 3 kali.
Dari program tersebut, dapat disimpulkan bahwa sebuah bilangan ketika mendapat perlakuan operator SHL akan sama dengan bilangan tersebut dikali 2 sejumlah n kali. Contohnya adalah sebagai berikut. 10 SHL 3
Penyelesaian: 10 * 2 * 2 * 2 = 80
Zona Aktivitas
A. Uji Pengetahuan (Nilai Pengetahuan III)
1. Konversikan bilangan desimal berikut menjadi dalam bentuk biner.
2. Tuliskan dan jelaskan macam-macam operator bit.
(E) Operasi Aritmetika dalam Java
Seperti pemrograman Pascal, Java juga memiliki beberapa operator aritmetika yang dapat digunakan untuk melan ekspresi matematika seperti proses penghitungan gaji, aijo dan penghitungan diskon. Berikut daftar operasi matematin yang dikenal oleh Java.
Contoh
Berikut contoh operasi aritmetika dengan Java.
Program tersebut akan menghasilkan output berikut.
(F) Operasi Relasional dalam Java
Operasi relasional adalah operasi yang dilakukan untuk membandingkan antara dua nilai yang menghasilkan nilai data bertipe Boolean (true atau false). Operasi ini sering digunakan untuk menyeleksi suatu kondisi dalam sebuah struktur percabangan seperti if...then. Berikut daftar operator relasional dalam Java
Contoh
Contoh dalam membandingkan dua data dalam operasi relasional adalah sebagai berikut.
Output program tersebut adalah sebagai berikut.
(G) Operasi Logika dalam Java
perasi logika adalah sebuah operasi yang digunakan untuk membandingkan dua kondisi atau lebih dengan hasil keluaran berupa data bertipe Boolean (true atau false). Berikut daftar operator logika dalam Java.
Contoh
Berikut contoh dalam melakukan operasi logika dengan Java.
Output dari program tersebut adalah sebagai berikut.
(H) Operasi Assignment dalam Java
Operasi assignment digunakan untuk memasukkan nilai hasil operasi aritmetika ke dalam suatu variabel. Bentuk format dibandingkan dengan operasi aritmetika. Sebagai contoh adalah A += C dengan penulisan aritmetika adalah A = A + C. Berikut daftar operasi assignment.
Contoh
Berikut contoh dalam melakukan assignment penjumlahan dan perkalian dengan Java.
Output dari kode program tersebut adalah sebagai berikut.
(I) Operasi Kondisional dalam Java
syarat terjadinya operasi kondisional adalah terdapat tiga operand yang akan digunakan untuk memeriksa nilai data Boolean dalam sebuah ekspresi. Penggunaan operasi ini menggunakan operator ?:. Format penulisan operasi kondisional atau ternary seperti berikut.
Contoh
Contoh operasi kondisional dengan Java adalah sebagai berikut.
Output dari kode program tersebut adalah sebagai berikut.
(J) Operasi Instanceof dalam Java
Operasi ini digunakan secara khusus pada variabel dengan
referensi objek untuk mengecek tipe dari objek tersebut. Format penulisan operator instanceof seperti berikut.
Nilai keluaran true akan dihasilkan jika objek yang direferensikan oleh variabel berada di sebelah kiri operator termasuk kategori class yang berada di bagian kanan. Contohnya adalah seperti berikut.
Contoh
Contoh penggunaan operator instanceof dengan Java adalah sebagai berikut.
Keluaran hasil kode program tersebut adalah sebagai berikut.
Sama seperti dalam sebuah rangkaian operasi aritmetika, jika memiliki beberapa operator, akan dilakukan urutan pengerjaan berdasarkan prioritas utama. Dalam Java, hal ini disebut sebagai preseden operator. Berikut daftar dari preseden operator Java.
A. Uji Pengetahuan (Nilai Pengetahuan IV)
1. Tuliskan dan jelaskan operator aritmetika yang didukung oleh bahasa pemrograman Java.
2. Apa perbedaan antara penggunaan operator && dan || dalam Java?
3. Apa yang dimaksud dari assignment A *= B dalam sebuah baris kode bahasa pemrograman java?
4. Apa yang Anda ketahui tentang operator dalam sebuah baris kode pemrogaman Java?
Rangkuman
1. Operator aritmetika dalam Pascal dan Java terdiri atas +, - *. 1, dan %.
2. Operator logika dalam Pascal terdiri atas NOT, AND, OR, dan XOR.
3. Dalam Pascal dikenal lima jenis operator bitwise, yaitu AND, OR, XOR, SHR, dan SHL.
4. Operator relasional dalam Java dapat digunakan untuk membandingkan kondisi dua data antara lain ==, !=, >, <, >=, dan <=.
5. Operator logika yang dapat digunakan dalam Java antara lain &&, ll, dan !.
Ulangan Akhir Bab 5
A. Pilihlah salah satu jawaban yang tepat.
1. Berikut yang bukan merupakan operator aritmetika terhadap bilangan bulat adalah
a. +
b. -
c. /
d. mod
e. *
2. Berikut yang bukan merupakan operator aritmetika terhadap bilangan real adalah
a. +
b. -
c. /
d. mod
e. *
3. Perhatikan baris kode program berikut.
Nilai hasil dari kode program berikut adalah
a. 0.633
b. 0.64
c. 1.64
d. 6.3999985
e. 6.44444
4. Perhatikan baris kode program berikut.
Nilai hasil dari kode program tersebut adalah
a. true
b. false
c. {
d. 101
e. 99
5. Operator assignment dalam Java yang digunakan untuk memastikan bahwa dua nilai data yang dibandingkan adalah berbeda dapat menggunakan jenis operator
a. ==
b. !=
c. <
d. >
e. !!
6. Perhatikan baris kode program berikut.
Nilai output variabel chr dari kode program berikut adalah .....
a. A
b. a
c. {
d. 6
e. >
7. Operator yang berfungsi membagi nilai operand sebelah kiri dengan operand sebelah kanan dan sisa hasil pembagian disimpan ke dalam operand sebelah kiri adalah
a. /=
b. +=
c. !=
d. -=
e. %=
8. Perhatikan barisan kode pemrograman Java berikut.
Output dari y adalah ....
a. 200
b. 100
c. true
d. false
e. null
9. Perhatikan kode program berikut.
Baris yang menunjukkan bahwa operator instanceof sedang dijalankan oleh compiler Java adalah ....
a. 10
b. 7
c. 6
d. 5
e. 4
10. Operator aritmetika yang tepat untuk menentukan suatu bilangan bernilai ganjil atau genap adalah ....
a. +
b. -
c. /
d. *
e. %
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Apa perbedaan antara fungsi INC dan DEC
2. Jelaskan perbedaan operator bit OR dengan operator bit XOR dalam bentuk program.
3. Tuliskan algoritme untuk menampilkan bilangan secara acak dari 1 sampai 120 sebanyak 20 kali.
4. Jelaskan perbedaan operator matematika terhadap bilangan bulat dibandingkan dengan bilangan real.
5. Tuliskan dan jelaskan macam-macam operator bit.
6. Jelaskan jenis-jenis variabel yang Andaketahui dalam pemrograman Java.
7. Jelaskan perbedaan antara penggunaan operator = dengan %= dalam Java.
8. Untuk menguji dua buah nilai data, sebaiknya menggunakan operator relasional apa dalam pemrograman Java? Jelaskan pendapat Anda.
9. Untuk menghasilkan nilai dalam kondisi true dalam sebuah perbandingan kondisi sebuah logika program, sebaiknya menggunakan operator && atau || dalam Java? Jelaskan pendapat Anda.
10. Apa yang Anda ketahui tentang operasi kondisional? Jelaskan format penulisan yang digunakan.
0 komentar: