Pengantar algoritma 2
Download
Report
Transcript Pengantar algoritma 2
Pemrograman Dasar
Pengantar Algoritma - 2
PTIIK - UB
Pseudocode (lanjutan)
Beberapa operasi dasar komputer:
1. Membaca data (input)
2. Menampilkan data (output)
3. Melakukan perhitungan aritmetika (compute)
4. Memberikan nilai ke suatu variabel (store)
5. Membandingkan dan memilih (compare and select)
6. Melakukan pengulangan (repeat/loop)
2
1. Membaca data
Sewaktu komputer menerima informasi atau input,
maka perintah yang biasa digunakan adalah “READ”,
“GET”, “BACA” ,”INPUT” atau “KEYIN”
Contoh:
READ Bilangan
GET kode_pajak
BACA nama_mahasiswa
3
2. Menampilkan data
Sewaktu komputer menampilkan informasi ataupun
output, maka perintah yang biasa digunakan adalah
“PRINT”, “WRITE”, “PUT”, “OUTPUT”, “DISPLAY” ataupun
“CETAK”
Contoh:
PRINT “Universitas Brawijaya”
CETAK “Dasar Pemrograman Komputer”
OUTPUT Total
4
3. Menghitung data
Untuk melakukan operasi aritmetika digunakan
pseudocode berikut:
+ : penjumlahan (ADD… TO…)
- : pengurangan (SUBTRACT… FROM…)
* : perkalian (MULTIPLY… BY…)
/ : pembagian (DIVIDE… BY…)
() : kurung
Perintah “COMPUTE”, “CALCULATE” ataupun
“HITUNG” juga dapat digunakan.
Contoh:
ADD number TO total
Total = Total + number
5
4. Memberikan nilai ke variabel
Beberapa cara untuk memberikan nilai ke dalam
variabel :
– Memberikan nilai awal dengan perintah
“INITIALIZE”, “INIT” atau “SET”
– Memberikan nilai sebagai hasil dari suatu proses,
dengan tanda “=“
– Menyimpan suatu nilai dengan perintah “SAVE” atau
“STORE”
Contoh:
SET Counter TO 0
Total = Harga * Jumlah
6
5. Membandingkan dan memilih
Salah satu operasi terpenting adalah membandingkan
dan memilih salah satu alternatif solusi.
Keyword yang dapat digunakan : “IF”, “THEN” , “ELSE”,
dan “ENDIF”
Contoh
IF Pilih==‘1’ THEN
Discount = 0.1 * harga
ELSE
Discount = 0.2 * harga
ENDIF
7
6. Mengulang
Dapat menggunakan keyword “WHILE” dan “ENDWHILE”
Contoh
bil = 0
WHILE bil < 10
cetak bil
bil = bil +1
ENDWHILE
8
Contoh flow chart
& pseudocode
Start
Masukkan
a,b,c
d = b2 – 4ac
Y
d<0
T
x1=(-b+sqrt(d))/2a
x2 =(-b-sqrt(d))/2a
READ a,b,c
d = (b*b)–(4*a*c)
IF d<0 THEN
PRINT “Akar imajiner”
ELSE
x1 = (-b+sqrt(d))/(2*a)
x2 = (-b-sqrt(d))/(2*a)
PRINT x1,x2
ENDIF
Cetak Pesan
“Akar imajiner”
Cetak x1,x2
Stop
Pengantar Algoritma - TIF UB 2010
9
Paradigma pemrograman
Imperative
Declarative
Procedural
e.g. C, Pascal, Fortran, Basic
Logical
e.g. Prolog
Structured
e.g. C, Pascal, Fortran, Basic
Functional
e.g. LISP, Scheme,Objective
Domain-specific
Object-oriented
e.g. SQL,HTML,XML,CSS
e.g. C++, Java,
Smalltalk, C#
Pengantar Algoritma - TIF UB 2010
10
Paradigma pemrograman
Imperative vs Declarative
Imperative:
Program yang imperative: mendefinisikan urutan
perintah untuk dikerjakan
Proses komputasi digambarkan sebagai kumpulan
pernyataan yang mengubah program state
Program state: keadaan atau konfigurasi informasi
dalam program pada satu saat
Membutuhkan algoritma yang didefinisikan eksplisit
Mirip dengan paradigma bahasa mesin
Pengantar Algoritma - TIF UB 2010
11
Paradigma pemrograman
Imperative vs Declarative
Declarative:
Menggambarkan logika komputasi tanpa mendeskripsikan
aliran kendali seperti pada imperative programming
Menggambarkan komputasi apa yang harus dikerjakan,
bukan bagaimana komputasi tersebut mengerjakannya
Contoh:
Logical programming dengan Prolog, berhubungan dengan logika
matematika, dapat digunakan untuk aplikasi kecerdasan buatan
Domain-specific scripting dengan HTML, untuk mendeskripsikan
apa yang ditampilkan dalam halaman web
Pengantar Algoritma - TIF UB 2010
12
Pemrograman terstruktur
Menggunakan tiga struktur kontrol, yaitu:
1.
2.
3.
Sequence (penerjaan berurutan)
Selection (pemilihan)
Repetition (pengulangan)
13
Sequence
Sequence merupakan urutan pengerjaan perintah
dari perintah/pernyataan pertama sampai dengan
perintah/pernyataan terakhir.
Umumnya program mempunyai sequence mulai dari
atas ke bawah dan dari kiri ke kanan (kecuali operasi
pemberian nilai, dari kanan ke kiri).
14
Contoh sequence
Contoh:
Cetak “Jumlah Mahasiswa”
Set Jumlah to 49
Cetak “Tambahan mahasiswa baru”
Baca mhs_baru
Jumlah = Jumlah + mhs_baru
Cetak “Jumlah Mahasiswa”
Cetak Jumlah
Penjelasan
– Urutan pengerjaan dimulai dari urutan pertama
sampai dengan urutan terakhir. Jika mhs_baru diisi
dengan 2, maka Jumlah yang tercetak adalah 51
15
Contoh sequence
Contoh:
Cetak “Jumlah Mahasiswa”
Jumlah = 49
Cetak “Tambahan mahasiswa baru”
Baca mhs_baru
Jumlah = Jumlah + mhs_baru
Cetak “Jumlah Mahasiswa”
Cetak Jumlah
Penjelasan
– Urutan pengerjaan dimulai dari urutan pertama
sampai dengan urutan terakhir. Jika mhs_baru diisi
dengan 2, maka Jumlah yang tercetak adalah 51
16
2. Selection
Struktur kontrol selection menggambarkan
pemilihan diantara diantara dua atau lebih
aksi berdasarkan kondisi atau persyaratan
tertentu.
Aksi pertama akan dikerjakan jika kondisi
atau persyaratan tersebut bernilai benar.
Jika tidak, maka aksi kedua setelah keyword
“else” (jika ada) akan dikerjakan.
17
Contoh selection
Contoh :
IF Hari==1 THEN
Cetak “Senin”
ELSE
Cetak “Bukan hari Senin”
ENDIF
Penjelasan
– Tulisan “Senin” akan ditampilkan jika Hari bernilai
1, jika tidak maka tulisan “Bukan hari Senin” yang
akan ditampilkan
18
3. Repetition
Beberapa perintah dapat diulang dengan
menggunakan struktur kontrol repetition.
Perintah akan tetap diulang selama kondisi
perulangan dipenuhi (i.e. bernilai benar)
19
Contoh repetition
Contoh:
bintang = 0
WHILE bintang < 5
PRINT bintang
bintang = bintang + 1
ENDWHILE
20
Contoh repetition
Contoh:
bintang = 0
WHILE bintang < 5
PRINT bintang
ENDWHILE
21
Latihan
1.
Buatlah algoritma menggunakan pseudocode untuk
menghitung luas persegi panjang
2.
Buatlah algoritma menggunakan pseudocode untuk
menghitung luas lingkaran.
3.
Buatlah algoritma menggunakan pseudocode untuk
menentukan apakah bilangan yang diinput adalah
bilangan ganjil atau bilangan genap.
22
Latihan
4.
Buatlah algoritma menggunakan pseudocode untuk
menginput 3 buah bilangan, kemudian tentukan
bilangan terbesar, terkecil, dan rata-ratanya.
5.
Buatlah algoritma menggunakan pseudocode untuk
mengubah satuan waktu yang diinputkan dari detik
ke satuan jam dan menit
23
Latihan
Ulangi latihan no. 1 s/d no. 5 diatas dengan
menggunakan flowchart.
24