Data – Logika Boolean – Ekspresi
Transcript of Data – Logika Boolean – Ekspresi
Data – Logika Boolean –Ekspresi
Tim Penyusun Materi Pengenalan Komputasi
Institut Teknologi Bandung © 2021
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
Data
9/27/2021 KU1072/Struktur Dasar Program Prosedural 3
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
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
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
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
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
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
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
Contoh jenis data lain
9/27/2021 Pengenalan Komputasi 11
Data gambar (image)Disimpan dalam 3 format: bitmap, JPEG, PNG
9/27/2021 Pengenalan Komputasi 12
Contoh jenis data lain
9/27/2021 Pengenalan Komputasi 13
Data suara (sound) direpresentasikan dalam bentuk sound wave (gelombang suara)
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
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
Logika Boolean
9/27/2021 Pengenalan Komputasi 16
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
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
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
9/27/2021 Pengenalan Komputasi 20
fruit OR vegetables
rivers AND salinity
(foxes OR rabits) AND pest control
9/27/2021 Pengenalan Komputasi 21
Ekspresi
9/27/2021 Pengenalan Komputasi 22
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
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
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
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:
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:
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:
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?