Download - ALGORITMA
![Page 1: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/1.jpg)
1
ALGORITMA
Urut-urutan langkah pengerjaan (Al-Khawarizmi)
Atau sejumlah urutan perintah untuk mengerjakan sesuatu atau menyelesaikan suatu masalah, masalah apapun tidak terbatas pada pembuatan program saja.
![Page 2: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/2.jpg)
2
Menuliskan Algoritma
Algoritma dapat dituliskan dengan berbagai cara: Teks
Level kedekatan dengan kode program: mulai dari teks bebas sampai pseudocode
Diagram, misal: bagan alir (flowchart)
![Page 3: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/3.jpg)
3
Contoh 1: Algoritma pembuatan kue
Memanaskan oven Penyiapan bahan Pencampuran bahan dalam mangkuk Memasukkannya kedalam loyang Membakarnya Mencek kematangan kue setiap 5 menit
sampai dengan bagian atas kue tidak lengket.
Mendinginkannya dan memotongnya
![Page 4: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/4.jpg)
4
Gather the ingredients:Bowl, spoon
flour, butter, sugar, milk, egg
Cake top spring back?
End
Heat Oven
Mix in bowl
Pour in the baking pan
Bake in the oven for 50 minutes
Bake more for 5 minutes
Cool and Cut
Start
![Page 5: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/5.jpg)
5
Contoh 2: Persoalan 1
Menentukan apakah suatu bilangan bulat positif adalah bilangan genap atau bilangan ganjil.
![Page 6: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/6.jpg)
6
Contoh Algoritma Persoalan 1: Menggunakan Teks Bebas
1. Bagi bilangan dengan bilangan 22. Hitung sisa hasil bagi pada
langkah 1.3. Bila sisa hasil bagi sama dengan 0
maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.
![Page 7: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/7.jpg)
7
Contoh Algoritma Persoalan 1:Menggunakan PseudocodeProgram Menentukan_Bilangan{ Menentukan apakah suatu bilangan bulat positif adalah bilangan ganjil atau genap }
KAMUS:n : integer > 0 {input bilangan bulat positif}m : integer > 0 {hasil sisa pembagian n dgn. 2}
ALGORITMA:input (n)m n mod 2if m = 0 then output (n, ‘ adalah bilangan genap’)else { m = 1 } output (n, ‘ adalah bilangan ganjil’)
![Page 8: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/8.jpg)
8
Contoh Algoritma Persoalan 1:Menggunakan Flowchart
Ya
Tidak
Start
input (n)
m = n mod 2
{ Hitung sisa bagi n dengan 2 }
A
A
m = 0
output (‘Genap’)
output (‘Ganjil’
)
End
Keterangan:n : integer > 0m : integer > 0
![Page 9: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/9.jpg)
9
Flowchart/Bagan Alir
visualisasi dari algoritma dalam bentuk bagan
Agar pengertian tentang masalah dan penyelesaiannya dapat tergambarkan dengan jelas.
Dalam pemrograman akan menggambarkan logika aliran pemrograman.
![Page 10: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/10.jpg)
10
Bagan Alir (Flowchart)
Kelebihan (umum): Bentuk grafis memudahkan interpretasi dan
pembacaan Relatif mudah dimengerti Relatif mudah untuk dibuat
Kekurangan (umum): Tidak ringkas (membutuhkan media penulisan
yang relatif besar) Untuk algoritma dalam ukuran besar menjadi tidak
praktis Kurang fleksibel untuk menjelaskan konsep-
konsep spesifik dalam pemrograman Misalnya: struktur data (type data tidak terdefinisi
eksplisit), kondisional dengan banyak kasus, dsb.
![Page 11: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/11.jpg)
11
Manfaat Bagan Alir: Identifikasi masalah Pengertian tentang masalah Proses penyelesaian suatu masalah Hubungan tiap-tiap bagian dari
proses. Kendala-kendala dalam penyelesaian
masalah. Ide-ide baru menyelesaikan masalah. Relatif lebih dapat dimengerti & oleh
orang lain.
![Page 12: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/12.jpg)
12
Simbol Flowchart [1]
SIMBOL NAMA FUNGSI
Terminator Permulaan/akhir algoritma
Garis alir / flow line
Arah aliran program
Preparation Proses inisialisasi/pemberian harga awal
Proses Proses perhitungan/proses pengolahan data
![Page 13: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/13.jpg)
13
Simbol Flowchart [2]
SIMBOL NAMA FUNGSI
Input/output data
Proses input/output data, parameter, informasi
Predefined process/ subprogram
Permulaan sub program/proses menjalankan sub program
Decision Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya
![Page 14: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/14.jpg)
14
Simbol Flowchart [3]
SIMBOL NAMA FUNGSI
On Page Connector
Penghubung bagian-bagian flowchart yang berada pada satu halaman
Off Page Connector
Penghubung bagian-bagian flowchart yang berada pada halaman yang berbeda
Dll.
![Page 15: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/15.jpg)
15
![Page 16: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/16.jpg)
16
Kontrol Struktur : Dibagi dalam 4 katagori yaitu:
Statement Sequence Selection Iteration (Looping)
![Page 17: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/17.jpg)
17
Statement: Control berupa instruksi/perintah
yang harus dikerjakan oleh komputer.
Setiap bahasa pemrograman memiliki instruksi yang berlainan.
![Page 18: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/18.jpg)
18
Sequence : Beberapa statement diurutkan
menjadi urutan perintah
![Page 19: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/19.jpg)
19
Selection (IF/THEN/ELSE): pemilihan 2
kemungkinan berdasarkan evaluasi dari suatu expresi, dapat benar (true) atau salah (False).
![Page 20: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/20.jpg)
20
Iteration (Looping): pengulangan atas dasar eveluasi
suatu test, bila benar perulangan akan
dilakukan bila salah akan berhenti.
Dibagi 2 dari segi posisi pengetesan awal iterasi pada akhir iterasi
![Page 21: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/21.jpg)
21
awal iterasi
pada akhir iterasi
![Page 22: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/22.jpg)
22
Program Terstruktur : Terdapat dua model pemrograman
tak terstruktur terstruktur
Perbedaan dari keduanya adalah:
![Page 23: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/23.jpg)
23
Program Tak Terstruktur : Program dibuat secara berurutan
kebawah. Dimulai dari baris pertama hingga
baris terakhir program Susah untuk dipahami, sehingga tidak
mudah untuk memodifikasi program buatan orang lain
Akan tetapi untuk program yang sederhana dapat digunakan.
![Page 24: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/24.jpg)
24
Program Terstruktur : Desain program top – down,
solusi masalah dimulai dari general, kearah solusi detail hingga bagian yang paling detail
Desain program berbentuk modul-modul Setiap bagian solusi masalah di buat
subprogram tersendiri (prosedur). Tiap modul dapat dites tersendiri Mudah untuk difahami
![Page 25: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/25.jpg)
25
Contoh Program Linear Regresi Program ini didesign untuk
mencari persamaan Linear dari sejumlah data X, Y
Input : sejumlah data X, Y Output : Persamaan Linear
Y=aX+b (par a & b)
Solusi numerik :
22 xxn
yxxyna
xayb
![Page 26: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/26.jpg)
26
X = data x Y = data yN = jumlah data sX = jumlah x sY = jumlah ysXY = jumlah perkalian xy sXX = jumlah x
kuadratsXsX = jumlah x dikuadratkanXrata = rata-rata x Yrata = rata-rata
y a = gradien garis b = konstantaTanya$ = jawaban yang diharapkan untuk
mengulangi proses input data atau melanjutkan proses hingga selesai (Y/T)
Design Variable yang digunakan :
![Page 27: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/27.jpg)
27
Unstructured program: Inisialisasi variable hitung jumlah data N Masukkan data X dan Y Hitung X2, X*Y Hitung jumlah X, Y, X*Y, X2 Hitung rata-rata X, Y Hitung kuadrat jumlah X Hitung a, b Tampilkan harga a dan b
![Page 28: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/28.jpg)
28
Unstructured program cont:
![Page 29: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/29.jpg)
29
Structured program :
Program terdiri atas program utama dan 2 buah modul:
Program Utama:Inisialisasi variableLink ke modul InputDataLink ke modul LinearRegresi
![Page 30: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/30.jpg)
30
Module InputData:Inisialisasi variableTentukan jumlah data X dan YMasukkan data X dan Y
Modul LinearRegresi:Hitung jumlah X, Y, X*Y, X2Hitung rata-rata X, YHitung kuadrat jumlah X Hitung a, bTampilkan harga a dan b
Structured program (cont.):
![Page 31: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/31.jpg)
31
Start
Inisialisasi Variabel
Stop
Gbr 6a. Bagan alir program Linear Regresi dengan menggunakanPemrograman terstruktur menggunakan bahasa sehari-hari.Bagan alir Utama (Kiri), Bagan alir Modul InputProcess (tengah) danBagan alir Modul Linearregresi (kanan)
ProgramUtama
Dari ProgramUtama
Inisialisasi Variabel=0
Read XRead Y
I < Jumlah Data
Hitung Penjumlahan XHitung Penjumlahan Y
Hitung Penjumlahan X*YHitung Kuadrat jumlah X
Hitung Rata-Rata XHitung Rata-Rata Y
Hitung Kuadrat Penjumlahan XHitung a dan b
tampilkan atampilkan b
Kembali keProgram Utama
ModulInputProcess
Modul InputProcess
Modul LinearRegresi
Redimensi VariabelArray
ReadJumlah
Data
Y
T
Dari ProgramUtama
Inisialisasi Variabel=0
I < Jumlah Data
Kembali keProgram Utama
ModulLinearRegresi
Y
T
Start
DIM X(0)DIM Y(0)
DIM N, sX, sYDIM sXY, sXX, sXsXDIM Xrata, Yrata, i
Stop
Gbr 6b. Bagan alir program Linear Regresi dengan menggunakanPemrograman terstruktur menggunakan bahasa pemrograman.Bagan alir Utama (Kiri), Bagan alir Modul InputProcess (tengah) danBagan alir Modul LinearRegresi (kanan)
ProgramUtama
Xrata=sX/NYrata=sY/NsXsX=sX*sX
a=(N*sX*sY-sXY)/(N*sXX-sXsX)b=Yrata-a*Xrata
Print aPrint B
Dari ProgramUtama
N = 0
Input X(i)Input Y(i)
i < N
sX=sX+XsY=sY+Y
sXY=sXY+X*YsXX=sXX+X*X
Kembali keProgram Utama
ModulInputProcess
Modul InputProcess
Modul LinearRegresi
Redim X(N)Redim Y(N)
Input N
Y
T
Dari ProgramUtama
sX = 0: sY = 0sXY = 0: sXX = 0
sXsX = 0Xrata=0: Yrata=0
i < N
Kembali keProgram Utama
ModulLinearRegresi
Y
T
Structured program (cont.):
![Page 32: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/32.jpg)
32
Start
Inisialisasi Variabel
Stop
Gbr 6a. Bagan alir program Linear Regresi dengan menggunakanPemrograman terstruktur menggunakan bahasa sehari-hari.Bagan alir Utama (Kiri), Bagan alir Modul InputProcess (tengah) danBagan alir Modul Linearregresi (kanan)
ProgramUtama
Dari ProgramUtama
Inisialisasi Variabel=0
Read XRead Y
I < Jumlah Data
Hitung Penjumlahan XHitung Penjumlahan Y
Hitung Penjumlahan X*YHitung Kuadrat jumlah X
Hitung Rata-Rata XHitung Rata-Rata Y
Hitung Kuadrat Penjumlahan XHitung a dan b
tampilkan atampilkan b
Kembali keProgram Utama
ModulInputProcess
Modul InputProcess
Modul LinearRegresi
Redimensi VariabelArray
ReadJumlah
Data
Y
T
Dari ProgramUtama
Inisialisasi Variabel=0
I < Jumlah Data
Kembali keProgram Utama
ModulLinearRegresi
Y
T
Start
DIM X(0)DIM Y(0)
DIM N, sX, sYDIM sXY, sXX, sXsXDIM Xrata, Yrata, i
Stop
Gbr 6b. Bagan alir program Linear Regresi dengan menggunakanPemrograman terstruktur menggunakan bahasa pemrograman.Bagan alir Utama (Kiri), Bagan alir Modul InputProcess (tengah) danBagan alir Modul LinearRegresi (kanan)
ProgramUtama
Xrata=sX/NYrata=sY/NsXsX=sX*sX
a=(N*sX*sY-sXY)/(N*sXX-sXsX)b=Yrata-a*Xrata
Print aPrint B
Dari ProgramUtama
N = 0
Input X(i)Input Y(i)
i < N
sX=sX+XsY=sY+Y
sXY=sXY+X*YsXX=sXX+X*X
Kembali keProgram Utama
ModulInputProcess
Modul InputProcess
Modul LinearRegresi
Redim X(N)Redim Y(N)
Input N
Y
T
Dari ProgramUtama
sX = 0: sY = 0sXY = 0: sXX = 0
sXsX = 0Xrata=0: Yrata=0
i < N
Kembali keProgram Utama
ModulLinearRegresi
Y
T
Structured program (cont.):
![Page 33: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/33.jpg)
33
Dokumentasi Kegunaan dokumentasi adalah
untuk memudahkan saat penulisan
program memudahkan debugging (mencari
kesalahan) memudahkan orang lain
mengembangkan program tersebut
![Page 34: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/34.jpg)
34
Dokumentasi Bagian yang perlu dibuat
dokumentasinya: Input, output Komentar-komentar proses utamanya Penjelasan setiap variable (terutama
input & output) Bagan alirnya. Tanggal modifikasi, dan nama programer Spesifikasi program Buku manualnya Program Help
![Page 35: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/35.jpg)
35
LOGIKA (BOOLEAN)
Operator Symbol Komputer
Contoh symbol aljabar
contoh
Bit Wise Complement
NOT a NOT b NOT a NOT b
Conjunction AND a AND b AND a AND b
Disjunction (inclusive "or")
OR a OR b OR a OR b
Exclusive "or" XOR a XOR b XOR a XOR b
Equivalence EQV a EQV b EQV a EQV b
Implication IMP a IMP b IMP a IMP b
![Page 36: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/36.jpg)
36
IF .. THEN .. ELSE ..
Format: IF [kondisi] THEN Pernyataan Benar ELSE Pernyataan salah END IF
![Page 37: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/37.jpg)
37
MS EXCEL Worksheet pada Excel adalah variable array
2D atau 3D pada keseluruhan file excel tidak diperlukan perintah Input, output, print perintah disimpan dalam cell dan hasilnya
langsung ditampilkan pada cell tersebut dapat menggunakan operator logika AND,
OR, NOT, True, False serta perintah IF variable dan konstanta tergantung dari
penggunaannya dlam perhitungan
![Page 38: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/38.jpg)
38
Kolom (A s/d IV=256 kolom) baris (1 s/d 65536)
sheet (max 255) max array(255,65536,256)
![Page 39: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/39.jpg)
39
IF .. THEN .. ELSE .. (EXCEL)
![Page 40: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/40.jpg)
40
IF .. THEN ..
FORMAT: IF [kondisi] THEN Pernyataan
![Page 41: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/41.jpg)
41
IF .. THEN .. (EXCEL)
![Page 42: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/42.jpg)
42
IF .. THEN .. ELSE .. Format:IF [kondisi1] THEN
Pernyataan Benar1
ELSEIF [kondisi2] THEN
Pernyataan Benar2
ELSEIF [kondisi..] THEN
Pernyataan Benar..
ELSE
Pernyataan salah
END IF
![Page 43: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/43.jpg)
43
![Page 44: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/44.jpg)
44
Contoh lain:INPUT “Ukuran Butir”;UBTR
IF UBTR <= 1/256 THEN
PRINT “Batulempung”
ELSEIF UBTR<=1/16 THEN
PRINT “Batulanau”
ELSEIF UBTR<=2 THEN
PRINT “Batupasir”
ELSE
PRINT “Konglomerat/Breksi”
END IF
![Page 45: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/45.jpg)
45
![Page 46: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/46.jpg)
46
SELECT.. CASE Format:SELECT CASE variableCASE IS kondisi A Pernyataan ACASE IS kondisi B Pernyataan B...CASE ELSE
PernyataanEND SELECT
![Page 47: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/47.jpg)
47
SELECT.. CASE Format:SELECT CASE UBTR
CASE IS<=1/256:PRINT “Batulempung”
CASE IS<=1/16: PRINT “Batulanau”
CASE IS<=2: PRINT “Batupasir”
CASE ELSE : PRINT “Breksi”
END SELECT
![Page 48: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/48.jpg)
LOGICAL EVALUATION USING BOOLEAN OPERATOR
Comparing 2 variables The answer:
T(RUE) F(FALSE)
Each answer will be connected to some different statement
Can be program termination, do another job with or without correlated to the evaluate variable, do another job
Usually in IF…..THEN form
![Page 49: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/49.jpg)
BOOLEAN TRUTH TABLE
Expr-1 Expr-2
NOT AND OR XOR EQV IMP
T T F T T F T T
T F F F T T F F
F T T F T T F T
F F T F F F T T
![Page 50: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/50.jpg)
50
BOOLEAN ALGEBRA
A Boolean operator can be completely described using a truth table.
The truth table for the Boolean operators AND and OR are shown at the right.
The AND operator is also known as a Boolean product. The OR operator is the Boolean sum.
![Page 51: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/51.jpg)
51
BOOLEAN ALGEBRA
The truth table for the Boolean NOT operator is shown at the right.
The NOT operation is most often designated by an over bar. It is sometimes indicated by a prime mark ( ‘ ) or an “elbow” ().
![Page 52: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/52.jpg)
52
BOOLEAN ALGEBRA
A Boolean operator can be expressing as a vent diagram
Suppose have 2 different lithology: Limestone and Sandstone:
Limestone Sandstone
![Page 53: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/53.jpg)
53
Searching: NOT
Search: Sandstone
Search: Limestone
Limestone Sandstone
SandstoneLimestone
![Page 54: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/54.jpg)
54
Searching:
Search: AND
Search: OR
Limestone Sandstone
Limestone Sandstone
![Page 55: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/55.jpg)
55
Digital computers contain circuits that implement Boolean functions.
The simpler that we can make a Boolean function, the smaller the circuit that will result. Simpler circuits are cheaper to build,
consume less power, and run faster than complex circuits.
With this in mind, we always want to reduce our Boolean functions to their simplest form.
There are a number of Boolean identities that help us to do this.
BOOLEAN ALGEBRA
![Page 56: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/56.jpg)
56
The Boolean operator (electrical) Can be
representing as: switch, relay or gate
X X
XY
X+YX
Y
X
Y
![Page 57: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/57.jpg)
57
The Boolean AND operator
0
0
0
0
1
0
0
1
0
1
1
1
![Page 58: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/58.jpg)
58
Expr 1 Exp 2 ANDT T TT F FF T FF F F
![Page 59: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/59.jpg)
59
The Boolean OR operator
0
1
0
0
1
0
1
1
0
1
1
1
![Page 60: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/60.jpg)
60
Expr 1 Exp 2 ORT T TT F TF T TF F F
![Page 61: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/61.jpg)
61
The Boolean NOT operator
0 1
1 0
![Page 62: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/62.jpg)
62
Expr NOTT FF T
![Page 63: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/63.jpg)
63
Derivative Boolean operator (XOR)
0
1
0
0
1
0
1
0
0
1
1
1
X+YX
Y
0011
0101
0110
0100
0010
1100
0101
0011
1010
![Page 64: ALGORITMA](https://reader036.vdocuments.pub/reader036/viewer/2022062422/56813a0f550346895da1e5db/html5/thumbnails/64.jpg)
64
Derivative Boolean operator (XNOR / EQV)
1
0
0
0
1
0
0
1
0
1
1
1
X+YX
Y
0011
0101
0110 1001
0100
0010
1100
0101
0011
1010