Pemrograman
TUJUAN
Menalar artinya
mencapai kesimpulan
dari berbagai
pernyataan. A thinker
3
Perhatikan argumen di bawah ini:
Contoh:
1. Dua buah bilangan bulat a dan b dikatakan
relatif prima jika gcd(a, b) = 1.
Contoh:
if x > y then
begin
temp:=x;
x:=y;
y:=temp;
end;
8
Proposisi
9
Permainan
10
Permainan
11
Permainan
“y > 5”
13
Permainan
“Tolong untuk tidak tidur selama kuliah”
15
Kesimpulan: Proposisi adalah kalimat berita
16
Contoh-contoh proposisi lainnya:
17
Contoh-contoh di bawah ini bukan proposisi
18
Pernyataan yang melibatkan peubah (variable) disebut
predikat, kalimat terbuka, atau fungsi proposisi
Contoh: “ x > 3”, “y = x + 10”
Notasi: P(x), misalnya P(x): x > 3
19
Kembali ke kalkulus proposisi
Contoh:
p : 13 adalah bilangan ganjil.
q : Soekarno adalah alumnus UGM.
r: 2+2=4
20
Bentuk-bentuk Proposisi
21
Proposisi Atomik
Proposisi tunggal
Contoh:
(a) Informatika ITB dibentuk tahun 1982
(b) 2n selalu genap untuk n=0, 1, 2, …
(c) I’m Javanese
(d) Orang Jawa belum tentu bisa Bahasa Java
22
Proposisi Majemuk
Misalkan p dan q adalah proposisi atomik.
Ada empat macam proposisi majemuk:
23
Contoh-contoh proposisi majemuk:
24
p : Pemilih dalam Pilkada harus berusia 17
tahun
q : Pemilih dalam Pilkada sudah menikah
25
Latihan. Diketahui proposisi-proposisi berikut:
p : Pemuda itu tinggi
q : Pemuda itu tampan
p q pq p q pq p p
T T T T T T T F
T F F T F T F T
F T F F T T
F F F F F F
27
Disjungsi Eksklusif
Kata “atau” (or) dalam operasi logika digunakan dalam
salah satu dari dua cara:
1. Inclusive or
“atau” berarti “p atau q atau keduanya”
Contoh: “Tenaga IT yang dibutuhkan harus menguasai
Bahasa C++ atau Java”.
2. Exclusive or
“atau” berarti “p atau q tetapi bukan keduanya”.
Contoh: “Ia dihukum 5 tahun atau denda 10 juta”.
28
Operator logika disjungsi eksklusif: xor
Notasi:
Tabel kebenaran:
p q pq
T T F
T F T
F T T
F F F
29
Nilai kebenaran proposisi majemuk dapat ditentukan
dengan menggunakan “tabel kebenaran”
Contoh proposisi majemuk: (p q) (~q r)
Tabel kebenaran:
p q r pq ~q ~q r (p q) (~q r)
T T T T F F T
T T F T F F T
T F T F T T T
T F F F T F F
F T T F F F F
F T F F F F F
F F T F T T T
F F F F T F F
30
p ~(p q) adalah sebuah tautologi
T T T F T
T F F T T
F T F T T
F F F T T
31
belajar mengakibatkan tidak pintar, adalah
syarat cukup untuk tidak belajar, berlaku jika
dan hanya jika pintar atau tidak belajar
Misal p: pintar dan b: belajar
Proposisi pada soal dapat diubah menjadi
((b→~p) →~b) (p~b)
Selanjutnya, kita uji kebenarannya dengan
tabel kebenaran
Tabel Kebenaran
(p q) ~(p q) adalah sebuah kontradiksi
T T T F F F
T F F T F F
F T F T F F
F F F F T F
35
Hukum-hukum Logika
36
7. Hukum komutatif: 8. Hukum asosiatif:
p q q p p (q r) (p q) r
p q q p p (q r) (p q) r
37
Algoritma dan pemrograman
Pengantar pemrograman
Dasar (basic) pemrograman
Pengantar pemrograman dan rekayasa
perangkat lunak
masalah Program solusi
komputer
Cara mendeskripsikan masalah dengan
komputer :
menjabarkan masalah
merinci langkah untuk menyelesaikan
masalah
membuat sarana interaksi manusia-komputer
Tranformasi masalah menjadi
program komputer diperlukan:
algoritma
masalah Program solusi
komputer
Belajar Memrogram Vs Belajar
Bahasa Pemrograman
Belajar memprogram adalah belajar tentang
metodologi pemecahan masalah, kemudian
menuangkannya dalam suatu notasi tertentu yang
mudah dibaca dan dipahami.
Belajar bahasa pemrograman berarti belajar
memakai suatu bahasa, aturan-aturan tata
bahasanya, instruksi-instruksinya, tata cara
pengoperasian compiler-nya, dan memanfaatkan
instruksi-instruksi tersebut untuk membuat program
yang ditulis hanya dalam bahasa itu saja.
Belajar Memprogram
belajar bahasa pemrograman
belajar tentang strategi pemecahan masalah,
metodologi dan sistematika pemecahan
masalah kemudian menuliskannya dalam
notasi yang disepakati bersama
bersifat pemahaman persoalan, analisis dan
sintesis
titik berat : designer program
Belajar Bahasa Pemrograman
belajar memakai suatu bahasa
pemrograman, aturan sintaks, tatacara untuk
memanfaatkan instruksi yang spesifik untuk
setiap bahasa
titik berat : coder
Langkah-langkah dalam
Pemrograman Komputer
Mendefinisikan Masalah
Kondisi awal, yaitu input yang tersedia.
Kondisi akhir, yaitu output yang diinginkan.
Data lain yang tersedia.
Operator yang tersedia.
Syarat atau kendala yang harus dipenuhi.
Langkah-langkah dalam
Pemrograman Komputer
Memilih Algoritma.
Menulis Program.
Menguji Program.
Kesalahan sintaks (penulisan program).
Kesalahan pelaksanaan: semantik, logika, dan
ketelitian..
Langkah-langkah dalam
Pemrograman Komputer
Uji dan Verifikasi Program
Dokumentasi Program
Pemeliharaan Program
Apakah Algoritma itu?
Algorism algorithm
nama penulis buku Arab yaitu Abu Ja’far Muhammad ibnu Musa
Al-Khuwarizmi
Algoritma adalah:
penyusunaan aspek proses logika dari suatu pemecahan
masalah.
Apakah Algoritma itu?
Deklarasi
Inisialisasi
Proses penyelesaian masalah
Finalisasi
Tahapan Algoritma
Deklarasi
kentang : integer
pisau : integer
Inisialisasi
Proses penyelesaian masalah
Finalisasi
Tahapan Algoritma
Deklarasi
Inisialisasi
kentang <- 1
pisau <- 1
Proses penyelesaian masalah
Finalisasi
Tahapan Algoritma
Deklarasi
Inisialisasi
Proses penyelesaian masalah
kentang <- kentang + pisau
Finalisasi
pisau <- 0
Mengubah bahasa algoritmik menjadi bahasa
pemrograman yang dimengerti oleh
komputer,
Pascal
C++
Basic
Var :
Kentang : integer;
Pisau : integer;
Begin
Kentang := 1;
pisau := 1;
Witeln (” mulai mengupas kentang”);
kentang := kentang + pisau;
pisau := 0;
1. Runtunan (Sequence)
2. Pemilihan (Selection)
3. Pengulangan (Repetition)
Sistem bilangan
Sistem bilangan yang banyak digunakan
manusia adalah sistem bilangan desimal, yaitu
sistem bilangan yang menggunakan 10 macam
simbol.
Logika Komputer diwakili oleh bentuk elemen
dua keadaan (two-state elements) yaitu off dan
on.
Konsep inilah yang dipakai dalam sistem
bilangan binary yang hanya menggunakan 2
macam nilai untuk mewakili besaran nilai.
Sistem Bilangan menggunakan suatu bilangan
dasar atau basis (base/radix) yang tertentu
4 Jenis Sistem Bilangan
9810= ?2
98:2=49 sisa 1
49:2=24 sisa 1
24:2=12 sisa 0
12:2=6 sisa 0
6:2=3 sisa 0
3:2=1 sisa 1
9810= 11000112
Desimal ke oktal
Konversi bilangan desimal ke oktal merupakan
suatu proses mengubah bentuk bilangan
desimal kedalam bentuk bilangan oktal, dengan
cara membagi bilangan desimal dengan nilai 8
(basis). Untuk memahaminya silahkan agan
simak contoh dibawah ini.
Desimal Ke Hexadecimal
Konversi bilangan desimal ke hexadesimal
merupakan suatu proses mengubah bentuk
bilangan desimal kedalam bentuk bilangan
hexadesimal, dengan cara membagi bilangan
desimal dengan nilai 16 (basis). Silahkan agan
simak contoh dibawah ini untuk lebih jelasnya.
BinerKeDesimal
Contoh konversi bilangan biner 10111002 ke
bilangan desimal :
45738 = . . . (2)
4 5 7 3
100 101 111 011
jadi, 45738 = 1001011110112
Bilangan Oktal ke Hexa
Yaitu dengan cara menterjemahkan ke angka biner
melalui tabel, kemudian dari angka biner baru
terjemahkan ke angka hexadecimal dengan cara
mengambil 4 karakter dari angka biner tersebut.
contoh:
756(8) = . . . (16)
7 5 6
111 101 110
1111011102
0001 1110 1110
1 14 14
1 E E jadi, 7568 = 1EE16
Bilangan Hexa decimal ke biner
contoh: F116 = . . . 2 = … 8
F 1
1111 0001
1111 00012
011 110 001
3 6 1 = 3618
Konversi Bilangan Hexadesimal Ke
Desimal
Agar dapat melakukan konversi bilangan
hexadecimal ke desimal, yaitu dengan cara
mengalikan masing-masing digit bilangan
dengan position value nya. Contoh konversi
bilangan hexadecimal
C5416 = … 10
Konversi bilangan
10111012= …. 8
5345310= … 16
4534310= … 2
110101112=…10
Runtunan (Sequence)
A B A B
ALGORITMA:
Caranya :
Kita siapkan satu buah gelas C untuk
menampung sementara air dari gelas A
sebelum dipindah ke gelas B
ilustrasi
BA
BA AC
AC
ilustrasi
A B
C
Program Tukar_isi
Diberikan 2 buah gelas, A dan B; gelas A berisi air
berwarna merah, gelas B berisi air berwarna biru. Isi
kedua gelas A dan B ditukar sedemikian sehingga
gelas A berisi air berwarna biru dan gelas B berisi air
berwarna merah.
KAMUS :
gelas A,gelas B, gelas C : air
ALGORITMA:
Tuangkan air dari gelas A kedalam gelas C
Tuangkan air dari gelas B kedalam gelas A
Tuangkan air dari gelas C kedalam gelas B
Algoritma :
BA
AB
Algoritma :
CA
AB
BC
Pemilihan (Selection)
If kondisi then
aksi
endIf
If kondisi then
aksi1
else
aksi2
endIf
Contoh (Pemilihan) :
repeat
aksi
until kondisi_stop
while kondisi_ulang do
aksi
endwhile
Contoh (Pengulangan) :
For i 1 to 5 do
output(“UPN”)
EndFor
i1
Repeat
output(“UPN”)
ii+1
Until (i>5)
i1
While (i<=5) do
output(“UPN”)
ii+1
endwhile
TopDown Design
Cara pendekatan ini sangat bermanfaat dalam
membuat algoritma untuk masalah yang cukup rumit
dan komplek.
Strategi perancangan puncak turun dimulai dengan
membuat algoritma secara global (garis besar) lebih
dahulu, selanjutnya setiap langkah diuraikan lagi
menjadi beberapa langkah yang lebih sederhana
TopDown Design
A.1 A.2