• Tidak ada hasil yang ditemukan

Data Logika Boolean Ekspresi. Tim Penyusun Materi Pengenalan Komputasi Institut Teknologi Bandung 2019

N/A
N/A
Protected

Academic year: 2022

Membagikan "Data Logika Boolean Ekspresi. Tim Penyusun Materi Pengenalan Komputasi Institut Teknologi Bandung 2019"

Copied!
32
0
0

Teks penuh

(1)

Data – Logika Boolean – Ekspresi

Tim Penyusun Materi Pengenalan Komputasi Institut Teknologi Bandung © 2019

(2)

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

17/10/21 KU1072/Pengenalan Komputasi B 2

(3)

Data

17/10/21 KU1072/Struktur Dasar Program Prosedural 3

(4)

Data

Definisi data menurut Oxford English Dictionary:

The quantities, characters, or symbols on which operations are performed by computers and other automatic equipment and which may be stored, or transmitted in the form of electrical signal, magnetic

tapes, punched cards *) etc.

*) Dewasa ini magnetic tapes dan punched cards sudah tidak

digunakan. Teknologi terbaru menggunakan CD, DVD, flash drive, dll.

17/10/21 Pengenalan Komputasi 4

Contoh data kalimat

“Computational thinking is for everyone” di-encode dalam QR code

(5)

Data Diskrit vs Kontinyu

17/10/21 Pengenalan Komputasi 5

Berapa berat total sekeranjang jeruk?

Jawab:

504,9343498 gram

Untuk merepresentasikan data berat jeruk terdapat sejumlah tak terbatas yang dapat digunakan (bilangan riil) è data kontinyu

Ada berapa banyak jeruk di dalam kerjanjang?

Jawab: 7 buah

Untuk merepresentasikan data jumlah jeruk dalam keranjang terdapat angka yang berbatas yang dapat digunakan (bilangan bulat) è data diskrit

(6)

Abstraksi Data

90

Suhu Air?

Berat Badan?

Kecepatan Kendaraan

Bergerak

kemampuan kita untuk menginterpretasikan

suatu data dengan konteks masalahnya

17/10/21 KU1072/Struktur Dasar Program Prosedural 6

(7)

Kecepatan Kendaraan Bergerak

Persoalan Abstraksi Data

17/10/21

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

(8)

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 Prosedural

17/10/21 8

(9)

Tipe data dasar dalam pemrograman

17/10/21 KU1072/Struktur Dasar Program Prosedural 9

Domain Nilai

Boolean/Logika: true = 1; false = 0

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

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

Character: karakter/huruf Contoh: A; #; b

String: Kumpulan karakter/huruf Contoh: xcxcx

(10)

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

17/10/21 KU1072/Struktur Dasar Program Prosedural 10

(11)

Contoh jenis data lain

17/10/21 Pengenalan Komputasi 11

Data gambar (image)

Disimpan dalam 3 format: bitmap, JPEG, PNG

(12)

Contoh jenis data lain

17/10/21 Pengenalan Komputasi 12

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

(13)

Representasi Data dalam Komputer

Bit: Binary digit

Unit terkecil dari informasi yang bisa diproses komputer

Merepresentasikan sistem angka biner

Nilai yang mungkin : 0 atau 1

Byte

Kumpulan 8 bits

Dapat

merepresentasikan 256 pesan berbeda

17/10/21 Pengenalan Komputasi 13

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 bit Contoh di atas: 3 bit data dapat merepresentasikan 23 = 8 nilai

(14)

Bit sebagai Kode

• Kode merepresentasikan setiap huruf, digit, dan karakter 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 karakter unik

Memungkinkan untuk merepresentasikan karakter bahasa- bahasa dunia lainnya

17/10/21 Pengenalan Komputasi/Computing System, Network and

Internet 14

(15)

Logika Boolean

17/10/21 Pengenalan Komputasi 15

(16)

Logika Boolean

• Logika berkaitan dengan bagaimana manusia melakukan penalaran (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?

17/10/21 Pengenalan Komputasi 16

(17)

Operasi Logika

• Proposisi baru dapat dibentuk dengan menghubungkan dua proposisi dengan operasi logika

• Operasi logika yang akan dibahas: AND OR NOT

Jika P adalah proposisi dan Q adalah proposisi maka:

17/10/21 Pengenalan Komputasi 17

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

(18)

Ekspresi

17/10/21 Pengenalan Komputasi 18

(19)

Ekspresi

Ekspresi adalah kombinasi dari satu atau lebih nilai data atau

variabel dalam tipe tertentu, dan operator yang bermakna menurut aturan dan menghasilkan suatu nilai dalam suatu tipe tertentu

Operator adalah suatu fungsi standar untuk melakukan beberapa hal 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

17/10/21 Pengenalan Komputasi 19

(20)

Variabel (Peubah)

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

tertentu

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

Sum : jumlah beberapa angka (bilangan riil)

Max : nilai maksimum (bilangan bulat)

N : nilai bilangan bulat

17/10/21 KU1072/Struktur Dasar Program Prosedural 20

(21)

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

17/10/21 Pengenalan Komputasi 21

(22)

Operasi Aritmatika

17/10/21 Pengenalan Komputasi 22

Operator Description Type Operan Example

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

- Pengurangan: mengurangi nilai operan kiri dengan nilai operan kanan

Bil. bulat, real a – b = -11

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

/ Pembagian bulat: , maka hasil operasi adalah pembagian bulat

Bil. bulat b / a = 2

/ Pembagian riil: Jika operan adalah float, maka hasil operasi 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 operan kanan

Bil. bulat, real 10 ^ 2 = 100 Contoh: Jika a = 10 dan b = 21, maka:

(23)

Operator Relasional

17/10/21 Pengenalan Komputasi 23

Operator Description Type Operan Example

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

Bil. bulat, character, boolean, string

(a == b) menghasilkan false

<> Jika nilai kedua operan tidak sama, maka menghasilkan 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 sama dengan operan kanan, maka menghasilkan true

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

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

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

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

(24)

Operator Logika

17/10/21 Pengenalan Komputasi 24

Operator Description Type Operan Example

and Logika AND: Jika kedua operan bernilai true, maka menghasilkan true.

boolean (a and b) menghasilkan false

or Logika OR: Jika setidaknya salah satu dari kedua operan bernilai 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:

(25)

Memperkenalkan: Scratch

17/10/21 Pengenalan Komputasi 25

(26)

Scratch

Scratch adalah event-driven visual programming language (bahasa pemrograman visual) berbasis blok

Service disediakan oleh MIT Media Lab

Digunakan khususnya untuk belajar pemrograman pada level dasar

Juga merupakan komunitas online dengan lebih dari 40 juta projek yang dibuat oleh lebih dari 40 juta pengguna (per Mei 2019)

Akses: https://scratch.mit.edu/

• “Kode program” ditulis dengan cara melakukan drag-and-drop

blok program dari blocks palette ke coding-area. Hasil run program dapat dilihat pada stage area.

17/10/21 Pengenalan Komputasi 26

(27)

17/10/21 Pengenalan Komputasi 27

Scratch Desktop

Download: https://scratch.mit.edu/download Blocks

Palette

Stage Coding Area

Area

(28)

Mendefinisikan Variabel

• Operasi dasar terhadap variabel:

Set nilai suatu variabel

Mengubah nilai suatu variabel

Menampilkan nilai variabel

Dll (silakan dieksplorasi)

• Variabel dapat memiliki nilai dengan tipe dasar: bilangan bulat, bilangan real, string, character

17/10/21 Pengenalan Komputasi 28

(29)

Ekspresi dalam Scratch

• Block palette terkait ekspresi:

Operator

Operasi artimatika

Operasi relasional

Operasi logika

Dll. (silakan dieksplorasi sendiri)

17/10/21 Pengenalan Komputasi 29

Operator aritmatika

Operator relasional Operator

logika

(30)

Membaca Input dari Keyboard

Blok Sensing: ask and wait

17/10/21 Pengenalan Komputasi 30

(31)

Menampilkan hasil

Blok Looks/Sound

Dalam bentuk teks/suara

17/10/21 Pengenalan Komputasi 31

(32)

Tugas

• Download Scratch Desktop

https://scratch.mit.edu/download

• Buatlah program kecil yang melakukan hal berikut:

Mendefinisikan variabel A, B, C

Mengisi nilai A, B dengan bilangan bulat (bebas)

Mengeset C = A * B

Menampilkan C

• Dengan melihat contoh-contoh projek yang ada, buatlah program- program lain yang menarik dengan memanfaatkan objek-objek

yang tersedia di Scratch yang memanfaatkan variabel dan menggunakan ekspresi yang tersedia

17/10/21 Pengenalan Komputasi 32

Referensi

Dokumen terkait

• Tiap sub bagian dapat didefinisikan sebagai fungsi yang tinggal dipanggil sebagai 1 baris atau ekspresi dalam program utama. • Code reuse instead of

• Buatlah program yang membaca sebuah matriks dengan elemen integer, misalnya M, dan masukan sebuah nilai integer, misalnya X dan selanjutnya mengalikan setiap elemen matriks M

Logika fuzzy merupakan pengembangan dari logika boolean yang hanya memiliki nilai true (1) atau false (0).. 2.1.1 Sistem

Ekspresi Boolean adalah ekspresi yang menghasilkan nilai yang dapat berupa :  Benar (true) atau salah (false)..  Bukan nol

1 Propagasi eror adalah kejadian di mana eror dari operan suatu komputasi sederhana memberikan eror yang lebih besar pada hasil komputasi tersebut.. Misalnya, eror awal

&gt;= Jika nilai operan kiri lebih besar dari atau sama dengan operan kanan, maka menghasilkan

Array bernama TabInt dengan setiap elemen bertype integer dan dengan nilai default elemen 0, dengan ukuran 10 elemen dan.. setiap elemen array diakses dengan menggunakan indeks ke-0

Setiap Orang dengan sengaja dan tanpa hak atau melawan hukum melakukan perbuatan sebagaimana dimaksud dalam Pasal 27 sampai dengan Pasal 34 yang mengakibatkan kerugian bagi Orang