Data – Logika Boolean – Ekspresi

29
Data – Logika Boolean – Ekspresi Tim Penyusun Materi Pengenalan Komputasi Institut Teknologi Bandung © 2021

Transcript of Data – Logika Boolean – Ekspresi

Page 1: Data – Logika Boolean – Ekspresi

Data – Logika Boolean –Ekspresi

Tim Penyusun Materi Pengenalan Komputasi

Institut Teknologi Bandung © 2021

Page 2: Data – Logika Boolean – Ekspresi

Tujuan

• Mahasiswa dapat• Menjelaskan berbagai jenis type data dan kegunaannya• Menjelaskan dan menggunakan operasi logika dan• Menjelaskan dan menggunakan operasi logika yang berkaitan dengan

berbagai type data• Menggunakan blok program terkait data dan ekspresi dalam Scratch

9/27/2021 KU1072/Pengenalan Komputasi B 2

Page 3: Data – Logika Boolean – Ekspresi

Data

9/27/2021 KU1072/Struktur Dasar Program Prosedural 3

Page 4: Data – Logika Boolean – Ekspresi

Data

Definisi data menurut Oxford English Dictionary:

The quantities, characters, or symbols on whichoperations are performed by computers and otherautomatic equipment and which may be stored, or

transmitted in the form of electrical signal, magnetictapes, punched cards *) etc.

*) Dewasa ini magnetic tapes dan punched cards sudah tidak digunakan.Teknologi terbaru menggunakan CD, DVD, flash drive, dll.

9/27/2021 Pengenalan Komputasi 4

Contoh data kalimat“Computational thinking isfor everyone” di-encodedalam QR code

Page 5: Data – Logika Boolean – Ekspresi

Data Diskrit vs Kontinyu

9/27/2021 Pengenalan Komputasi 5

Berapa berat total sekeranjang jeruk?Jawab:504,9343498 gram

Untuk merepresentasikan data beratjeruk terdapat sejumlah tak terbatasyang dapat digunakan (bilangan riil) data kontinyu

Ada berapa banyak jeruk didalam kerjanjang?Jawab: 7 buah

Untuk merepresentasikan datajumlah jeruk dalam keranjangterdapat angka yang berbatasyang dapat digunakan (bilanganbulat) data diskrit

Page 6: Data – Logika Boolean – Ekspresi

Abstraksi Data

90

Suhu Air?

Berat Badan?

Kecepatan

Kendaraan

Bergerak

kemampuan kita untuk

menginterpretasikan

suatu data dengan

konteks masalahnya

9/27/2021 6KU1072/Struktur Dasar Program Prosedural

Page 7: Data – Logika Boolean – Ekspresi

Kecepatan

Kendaraan

Bergerak

Persoalan Abstraksi Data

9/27/2021

Suhu Air?Berat Badan?

75

derajat

Celcius Kilogram

Km/jam

kemampuan kita untuk

mengerti konteks dan

merepresentasikan

menjadi bentuk lain.

KU1072/Struktur Dasar Program Prosedural 7

Page 8: Data – Logika Boolean – Ekspresi

Tipe Data

• Setiap data memiliki jenis yang berbeda-beda• Data umur seseorang berbeda dengan data nama

• Data umur dibentuk dari kumpulan angka• Data nama dibentuk dari serangkaian huruf

• Untuk setiap jenis data juga memiliki rentang (range) yang berbeda• Data umur rentangnya antara 1 sampai 100 (bila diasumsikan bahwa umur

seseorang tidak lebih dari 100).• Data nama rentangnya mulai dari 1 sampai 50 (bila di anggap nama tidak ada yang

melebihi 50 huruf

• Tipe data mendefinisikan himpunan nilai-nilai tertentu, misalnya:• Tipe data integer : himpunan nilai yang terdiri atas bilangan bulat

(negatif, 0, positif)• Tipe data boolean: himpunan nilai yang terdiri atas nilai true dan false

KU1072/Struktur Dasar Program Prosedural9/27/2021 8

Page 9: Data – Logika Boolean – Ekspresi

Tipe data dasar dalam pemrograman

9/27/2021 KU1072/Struktur Dasar Program Prosedural 9

Domain Nilai

Boolean/Logika: true = 1; false = 0

Integer/bilangan bulat: bilangan bulat negatif, 0, bilangan bulat positifContoh: 1; -144; 999; 0

Bilangan real/floating point: bilangan riil, positif dan negatifContoh: 3.14; -7.021; 4.01x10-1

Character: karakter/hurufContoh: A; #; b

String: Kumpulan karakter/hurufContoh: xcxcx

Page 10: Data – Logika Boolean – Ekspresi

Contoh Tipe untuk Suatu Data

• Umur Integer contoh: 25; 44; 35• Kota String, contoh: “Jakarta”; “Bandung”• Nama String, contoh: “Budi”; “Ali”• Suhu Integer atau real, contoh: 37.5; 100• Luas Integer atau real, contoh: 400; 43.5• Berat Badan Integer atau real, contoh: 60.5; 75• NIM Integer atau string?, contoh: 15812001

9/27/2021 KU1072/Struktur Dasar Program Prosedural 10

Page 11: Data – Logika Boolean – Ekspresi

Contoh jenis data lain

9/27/2021 Pengenalan Komputasi 11

Data gambar (image)Disimpan dalam 3 format: bitmap, JPEG, PNG

Page 12: Data – Logika Boolean – Ekspresi

9/27/2021 Pengenalan Komputasi 12

Page 13: Data – Logika Boolean – Ekspresi

Contoh jenis data lain

9/27/2021 Pengenalan Komputasi 13

Data suara (sound) direpresentasikan dalam bentuk sound wave (gelombang suara)

Page 14: Data – Logika Boolean – Ekspresi

Representasi Data dalam Komputer

• Bit: Binary digit• Unit terkecil dari

informasi yang bisadiproses komputer

• Merepresentasikan sistemangka biner

• Nilai yang mungkin : 0atau 1

• Byte• Kumpulan 8 bits• Dapat• merepresentasikan 256

pesan berbeda

9/27/2021 Pengenalan Komputasi 14

Bit dapat dianalogikan seperti lampu bohlam.Nilai 0 adalah lampu mati, nilai 1 adalah lampu menyala.Ada 2n nilai berbeda yang dapat direpresentasikan dgn n buah bitContoh di atas: 3 bit data dapat merepresentasikan 23 = 8 nilai

Page 15: Data – Logika Boolean – Ekspresi

Bit sebagai Kode

• Kode merepresentasikan setiap huruf, digit, dankarakter spesial

• ASCII: paling banyak digunakan• Setiap karakter memiliki kode 8 bit yang unik• 256 kode unik dari 26 huruf, 10 digit, dan beberapa

karakter spesial• Awalnya dirancang hanya untuk karakter b. Inggris

• Unicode: mendukung lebih dari 100.000 karakterunik

• Memungkinkan untuk merepresentasikan karakter bahasa-bahasa dunia lainnya

9/27/2021Pengenalan Komputasi/Computing System, Network and

Internet15

Page 16: Data – Logika Boolean – Ekspresi

Logika Boolean

9/27/2021 Pengenalan Komputasi 16

Page 17: Data – Logika Boolean – Ekspresi

Which photo do you want? –Flowchart

9/27/2021 KU1102 - Pengenalan Komputasi - Algorithmic Thinking 17

MulaiMulai

ambil foto ke-1

ada payung?

semua foto sudah

diperiksa? atau foto

sesuai ditemukan? SelesaiSelesai

ada sesuatu

di kepala?

dapat melihat

laut?

Cetak foto

Tidak

Ya

Ya

Tidak

Ya

Tidak

Tidak

YaCetak “foto tidak

ditemukan”

foto sesuai

ditemukan?

Ya

Tidak

cek foto

berikutnya

foto sesuai

ditemukan

Ya

Page 18: Data – Logika Boolean – Ekspresi

Logika Boolean

• Logika berkaitan dengan bagaimana manusia melakukanpenalaran (reasoning) terhadap apa yang benar atau salah

• Boolean logic (logika boolean): dibentuk dari proposisi• Pernyataan yang bisa bernilai true atau false• true dan false nilai logika/kebenaran• Contoh proposisi:

• Gunung Everest adalah gunung tertinggi di dunia bernilai true• Sungai Kapuas adalah sungai terpanjang di dunia bernilai false

• Bukan proposisi, contoh:• Sikat gigimu!• Berapa tinggi Gunung Everest?

9/27/2021 Pengenalan Komputasi 18

Page 19: Data – Logika Boolean – Ekspresi

Operasi Logika

• Proposisi baru dapat dibentuk dengan menghubungkan duaproposisi dengan operasi logika

• Operasi logika yang akan dibahas: AND OR NOT XOR• Jika P adalah proposisi dan Q adalah proposisi maka:

9/27/2021 Pengenalan Komputasi 19

P Q P and Q P or Q not P not Q

true true true true false false

true false false true false true

false true false true true false

false false false false true true

Page 20: Data – Logika Boolean – Ekspresi

9/27/2021 Pengenalan Komputasi 20

fruit OR vegetables

rivers AND salinity

(foxes OR rabits) AND pest control

Page 21: Data – Logika Boolean – Ekspresi

9/27/2021 Pengenalan Komputasi 21

Page 22: Data – Logika Boolean – Ekspresi

Ekspresi

9/27/2021 Pengenalan Komputasi 22

Page 23: Data – Logika Boolean – Ekspresi

Variabel (Peubah)

• Variabel digunakan menyimpan suatu nilai yang ber-”tipe data”tertentu

• Merepresentasikan suatu makna di dunia nyata yang ingin diolahdalam ekspresi, misalnya:

• Sum : jumlah beberapa angka (bilangan riil)• Max : nilai maksimum (bilangan bulat)• N : jumlah mahasiswa dalam kelas

9/27/2021 KU1072/Struktur Dasar Program Prosedural 23

Page 24: Data – Logika Boolean – Ekspresi

Ekspresi

• Ekspresi adalah kombinasi dari satu atau lebih nilai data atauvariabel dalam tipe tertentu, dan operator yang bermakna menurutaturan dan menghasilkan suatu nilai dalam suatu tipe tertentu

• Operator adalah suatu fungsi standar untuk melakukan beberapahal dasar seperti perhitungan aritmatika, logika, dan relasional.

• Struktur umum ekspresi [biner]: <operan1> <operator> <operan2>

• Hasil dari operasi bergantung pada tipe data operan• Operan dapat berupa nilai, variabel, atau ekspresi lain

9/27/2021 Pengenalan Komputasi 24

Page 25: Data – Logika Boolean – Ekspresi

Jenis Ekspresi

• Jenis ekspresi menurut arity dari operator:• Ekspresi biner: bentuk dasarnya adalah operasi dengan 2 operan

• Contoh: A + 5• Ekspresi uner: bentuk dasarnya adalah operasi dengan 1 operan

• Contoh: not (found)

• Jenis ekspresi menurut tipe data yang dihasilkan:• Ekspresi aritmatika: operan bertipe numerik (int/float) dan

menghasilkan nilai numerik• Ekspresi relasional: operan bertipe numerik (int/float) dan

menghasilkan nilai bool/logika• Ekspresi logika: operan bertipe bool/logika dan menghasilkan nilai

bool/logika

9/27/2021 Pengenalan Komputasi 25

Page 26: Data – Logika Boolean – Ekspresi

Operasi Aritmatika

9/27/2021 Pengenalan Komputasi 26

Operator

Description Type Operan Example

+ Penjumlahan: menambahkan nilai kedua operan Bil. bulat, real a + b = 31

- Pengurangan: mengurangi nilai operan kiri dengannilai operan kanan

Bil. bulat, real a – b = -11

* Perkalian: mengalikan nilai kedua operan Bil. bulat, real a * b = 210

/ Pembagian bulat: , maka hasil operasi adalahpembagian bulat

Bil. bulat b / a = 2

/ Pembagian riil: Jika operan adalah float, maka hasiloperasi adalah pembagian bilangan float

Bil. bulat, real b / a = 2.1

mod Modulo: sisa hasil pembagian bulat Bil. bulat b mod a = 1

^ Pangkat: memangkatkan operan kiri dengan operankanan

Bil. bulat, real 10 ^ 2 = 100

Contoh: Jika a = 10 dan b = 21, maka:

Page 27: Data – Logika Boolean – Ekspresi

Operator Relasional

9/27/2021 Pengenalan Komputasi 27

Operator Description Type Operan Example

= Jika nilai kedua operan sama, maka menghasilkantrue (tidak berlaku untuk bilangan riil)

Bil. bulat, character,boolean, string

(a == b) menghasilkan false

<> Jika nilai kedua operan tidak sama, makamenghasilkan true

Bil. bulat, real, character,boolean, string

(a <> b) menghasilkan true

> Jika nilai operan kiri lebih besar dari operan kanan,maka menghasilkan true

Bil. bulat, real (a > b) menghasilkan false

< Jika nilai operan kiri lebih kecil dari operan kanan,maka menghasilkan true

Bil. bulat, real (a < b) menghasilkan true

>= Jika nilai operan kiri lebih besar dari atau samadengan operan kanan, maka menghasilkan true

Bil. bulat, real (a >= b) menghasilkan false

<= Jika nilai operan kiri lebih kecil dari atau samadengan operan kanan, maka menghasilkan true

Bil. bulat, real (a <= b) menghasilkan true

Contoh: Jika a = 10 dan b = 21, maka:

Page 28: Data – Logika Boolean – Ekspresi

Operator Logika

9/27/2021 Pengenalan Komputasi 28

Operator Description Type Operan Example

and Logika AND: Jika kedua operan bernilai true, makamenghasilkan true.

boolean (a and b) menghasilkan false

or Logika OR: Jika setidaknya salah satu dari kedua operanbernilai true, maka menghasilkan true.

boolean (a or b) menghasilkan false

not Logika NOT: Untuk membalik nilai logika dari operannya. boolean not(a) menghasilkan false

Jika a = true dan b = false, maka:

Page 29: Data – Logika Boolean – Ekspresi

Latihan

a = 10b = 13c = 15d = FALSEe = TRUE

9/27/2021 Pengenalan Komputasi 29

• a * b• c / a• c mod b• b mod 2

• d AND e• d OR e• d XOR e• e XOR e• (d AND e) OR e• (d OR e) OR d

Bagaimana cara menentukan apakah sebuah bilangan genap/ganjil?