PENGANTAR
ALGORITMA PEMROGRAMAN
(IS1313)
Programming
2
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 1 / 25
Pengertian Algoritma (1/3)
Algoritma.
Urutan atau rentetan langkah-langkah logis tertentu
untuk menyelesaikan atau memecahkan suatu
masalah yang disusun secara sistematis & logis.
→ Mengoperasikan perangkat komputer,
menjalankan motor/mobil, membuat kue dll
Algoritma merupakan cetak-biru dari suatu program &
sebaiknya disusun sebelum program dibuat.
Kriteria suatu algoritma:
► Memiliki masukan & keluaran
► Terstruktur
3
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 2 / 25
pemrograman.
Contoh:
Algoritma menghitung luas persegi panjang:
● Masukan panjang (P)
● Masukan lebar (L)
● Luas ← P x L
● Tulis Luas
4
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 3 / 25
Pengertian Algoritma (3/3)
Ciri algoritma.
● Algoritma memiliki nol atau lebih masukan.
● Algoritma memiliki nol atau lebih keluaran.
● Setiap langkah harus didefinisikan dengan tepat & tidak
berarti-dua (Ambiguitas) → Definiteness / kepastian.
● Algoritma harus berhenti setelah mengerjakan sejumlah
langkah terbatas → Finiteness / ada batas.
● Algoritma harus efektif → sederhana
5
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 4 / 25
Pseudo-code
Judul Algoritma.
Bagian yang terdiri atas nama algoritma dan penjelasan
(spesifikasi) tentang algoritma tersebut.
Nama sebaiknya singkat dan menggambarkan apa yang
dilakukan oleh algoritma tersebut
Deklarasi.
Bagian untuk mendefinisikan semua nama yang digunakan di
dalam program.
Nama tersebut dapat berupa nama tetapan, peubah, tipe,
prosedur dan fungsi.
Deskripsi.
Merupakan kumpulan instruksi yang berisi uraian langkah-
langkah penyelesaian masalah yang ditulis dengan
menggunakan suatu notasi.
7
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 6 / 25
1. Kelulusan Mahasiswa
Algoritma Kelulusan_mhs
{diberikan nama dan nilai mahasiswa, jika nilai
tersebut lebih besar atau sama dengan 56, maka
mahasiswa tersebut dinyatakan lulus, jika tidak
maka dinyatakan tidak lulus}
DEKLARASI:
Nama : string
Nilai : integer
Keterangan : string
DESKRIPSI:
read (nama, nilai)
if nilai >= 56 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write (nama, keterangan)
endif
8
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 7 / 25
Contoh penulisan Algoritma + Pseudo-code (2/3)
DEKLARASI:
Const phi = 3.14 {nilai}
R : real {jari-jari lingkaran}
Luas : real {luas lingkaran}
Keliling : real {keliling lingkaran}
DESKRIPSI:
read(R)
luas ← phi*R*R
keliling ← 2*phi*R
write(luas, keliling)
9
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 8 / 25
3. Komisi Salesman
Algoritma Komisi_Salesmen
{baca nama dan hasil penjualan salesman, kemudian
hitung besarnya komisi sebesar 15% dari hasil
penjualan dan tampilkan nama dan komisinya ke
layar}
DEKLARASI:
Nama : string
NilaiPenjualan : real
Komisi : real
DESKRIPSI:
read(Nama, NilaiPenjualan)
Komisi ← 0.15 * NilaiPenjualan
write(Nama, Komisi)
10
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 9 / 25
Pengertian Pemrograman (1/3)
Program komputer.
Sekumpulan instruksi (statement) yang dimengerti
oleh komputer.
Bagian Program
Suatu program pada dasarnya terdiri dari 3 bagian:
Masukan : bisa ada, bisa tidak
Proses
Keluaran : min. satu ouput.
11
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 10 / 25
Pemrograman.
Suatu kumpulan instruksi-instruksi atau source code
yang dibuat oleh seorang programmer.
◊ Pemrograman Prosedural.
◊ Pemrograman Modular,
++
◊ Pemrograman Object-oriented → C , Java
◊ Pemrograman Declaratif
12
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 11 / 25
Pengertian Pemrograman (3/3)
Bahasa pemrograman.
Alat atau tools yang dipergunakan untuk membuat suatu
program.
Contoh: Basic, Pascal, Cobol, C, C++, PHP, Java etc
13
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 12 / 25
14
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 13 / 25
Bahasa Pemrograman & Translator (2/3)
Interpreter Compiler
Input – source code - Basic, PHP, ASP dll Pascal, C, C++, Cobol
- Program dari user
Output - Tidak ada object code - Bahasa Assembly
- Translasi dilakukan internal - Exe
- INTERPRETER
Source code
Interpreter Result
Input data
- COMPILER
Source Object Linker
Compiler Exe Result
code code
Input
data
Preprocessor Libraries
16
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 15 / 25
Flowchart (1/3)
Definisi:
● Merupakan bagan yang menggunakan simbol-simbol
tertentu dalam menunjukkan alir di dalam suatu
program atau prosedur sistem secara logika.
● Bagan yang mempunyai alir yang menggambarkan
langkah-langkah penyelesaian suatu masalah yang
juga merupakan cara penyajian dari suatu algoritma.
Macam-macam flowchart
● System flowchart
● Document / Paperwork / Form flowchart
● Schematic flowchart
● Program flowchart
● Process flowchart
17
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 16 / 25
Flowchart (2/3)
System flowchart.
Bagan alir yang menggambarkan arus / alur pekerjaan
secara keseluruhan dari suatu sistem dengan menjelaskan
urut-urutan dari prosedur yang terdapat di dalam sistem
tersebut.
Deskripsi dilakukan secara grafik dari urutan prosedur-
prosedur yang terkombinasi yang membentuk suatu sistem
18
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 17 / 25
Flowchart (3/3)
Schematic flowchart.
Menggambarkan suatu sistem atau prosedur dengan
menggunakan gambar-gambar komputer, peripheral, form-form
atau peralatan lain yang digunakan dalam menggunakan suatu
sistem selain simbol-simbol flowchart standar.
Program flowchart.
Flowchart yang dihasil dari System Flowchart yang akan
memberikan keterangan yang lebih rinci pada setiap langkah
program atau prosedur yang sesungguhnya dilaksanakan
dalam urutan yang tepat saat terjadi.
Process flowchart.
Teknik penggambaran rekayasa industrial yang memecah dan
menganalisis langkah-langkah dalam suatu prosedur atau
sistem
19
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 18 / 25
Pembuatan Flowcart
Mulai Mulai
1 1
Read N
Baca data Tampilkan hasil Print
Total, Rata
Total &
Rata-rata
Read X
Hitung
Selesai
TOTAL
Selesai
Total=
Total + X
Data sudah
habis?
Tidak
Ya I =
I + 1
1
Y T
1 I = N
22
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 21 / 25
Contoh Flowcart (2/3)
23
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 22 / 25
24
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 23 / 25
Flowcart vs Pascal
Mulai Begin
Total= 0
Var
I = 0 Total:integer 1
I:integer
Read N WRITELN('Nilai=')
READLN(N) Rata =
Total / N
Read X
Print WRITELN('Total =')
Total, Rata
WRITELN('Rata2 =')
Total=
Total + X Total:=Total+X Selesai End
I = I + 1
Y T
1 I = N
25
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 24 / 25
Contoh-contoh
Kelulusan Mahasiswa
Luas lingkaran:
Mulai
Mulai
Baca
Nama, Nilai Input R
Ya
Nilai >= 56 Keterangan =
“Lulus” Phi=3.14
Tidak
Keterangan =
L ← 3.14*R*R
“Tidak Lulus
Tulis
Tulis L
Nama, Keterangan
Selesai Selesai
26
Hand-out: Algoritma Pemrograman IS1313 - 01 Hal. 25 / 25
Selesai
27