Anda di halaman 1dari 32

Algoritma dan Pemrograman

PERTEMUAN 1
Pemebahasan
Definisi Algoritma
flowchart
Konsep Dasar Pemrograman
Model Komputasi
Istilah algoritma berasal dari nama seorang
pengarang/matematikawan berkebangsaan Arab bernama
Abu Ja'far Muhammad ibn Musa al-Khowarizmi (tahun
790 – 840), yang sangat terkenal sebagai “Bapak Aljabar”
Sebagai contoh sederhana, Anda diminta untuk menghitung keliling persegi
panjang dengan menggunakan komputer.
Pada masalah ini Anda dapat menentukan keluaran/ouput berupa keliling dan
masukan/input berupa panjang dan lebar.
Setelah itu Anda harus menentukan bagaimana keliling persegi panjang
dihitung
berdasarkan data panjang dan lebar.
Dengan logika sederhana, Anda dapat menghitung keliling persegi panjang
seperti berikut:

Gambar 1.6 Persegi panjang dan keliling

Keliling = panjang + lebar + panjang + lebar


atau
Keliling = 2 x (panjang + lebar)
Anda dapat menuangkan algoritma seperti berikut:
1. Peroleh nilai panjang dan lebar persegi panjang.
2. Hitung keliling persegi panjang dengan menggunakan
rumus 2 x (panjang + lebar).
3. Tampilkan nilai keliling persegi panjang.
Algoritma tidak selamanya dinyatakan dalam bahasa
manusia seperti yang dicontohkan di depan. Kadang-kadang
dinyatakan dalam bentuk pseudokode (pseudocode) atau
flowchart,
Pseudokode yaitu suatu bentuk algoritma yang
menggunakan berbagai notasi yang dimaksudkan untuk
menyederhanakan bentuk kalimat manusia.

Sebagai contoh, kalimat seperti “Hitung keliling persegi


pangjang dengan menggunakan rumus 2 x (panjang + lebar)”
dapat disederhanakan menjadi
Keliling ← 2 x (panjang + lebar)
Pseudokode seringkali mengarah ke bahasa pemrograman
tertentu.
Sebagai contoh:
1. I ← 1
2. jum ← 0
3. while i < 10
a. jum ← jum + I
b. i ← 1
4. write(i)

Merupakan psedokode yang berorientasi pada bahasa C,


Pascal atau Algol. Algoritma di atas digunakan untuk
melakukan perhitungan 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9.
flowchart adalah Bagan-bagan yang mempunyai arus yang
menggambarkan langkah-langkah penyelesaian suatu
masalah. Flowchart merupakan cara penyajian dari suatu
algoritma

Tujuan Membuat Flowchat:


 Menggambarkan suatu tahapan penyelesaian masalah
 Secara sederhana, terurai, rapi dan jelas
 Menggunakan simbol-simbol standar
Daftarsimbol-simbol standar yang digunakan
dalam Flowchart
Dua jenis metode penggambaran
program flowchart
Conceptual flowchart , menggambarkan
alur pemecahan masalahsecara global2)
Detail flowchart , menggambarkan alur
pemecahan masalah secararinci
ALGORITMA
adalah langkah-langkah
yang diambil dalam Langkah-langkah harus
tersusun secara LOGIS
menyelesaikan suatu pekerjaan agar dapat menyelesaikan
Direncanakan, pekerjaan dengan benar.
yang menyelesaikan pekerjaan tersebut
adalah Komputer memang
KOMPUER
dirancang untuk dapat
mengerjakan perintah
ALGORITMA
merupakan gabungan antara yang diberikan
SENI dan TEKNIK kepadanya
TEKNIK,
SENI, Karena Algoritma adalah suatu
karena Algoritma penuh dengan pekerjaan yang bersifat rancang
kreativitas dan imajinasi yang jenius bangun

ALGORITMA
ditulis dalam suatu bahasa
Contoh Bahasa Pemrograman :
yang disebut Bahasa BASIC
Pemrograman Pascal
C
C++
ALGORITMA Java
yang ditulis dalam suatu
Bahasa Pemrograman
disebut PROGRAM
Algoritma adalah sekumpulan instruksi, yang apabila dijalankan,
akan menyelesaikan suatu tugas tertentu. Sebagai tammbahan, setiap
algoritma harus memenuhi kriteria sebagai berikut

1). Tidak harus ada data masukan yang dimasukkan dari luar.

2). Paling tidak ada satu buah keluaran

3) Setiap instruksi jelas maksudnya dan tidak meragukan

4). Algoritma baik secara keseluruhan maupun sub algoritma bila


ditelusuri harus ada titik berhentinya.

5). Setiap instruksi selain jelas juga harus dapat dilaksanakan, dan juga
efektif dalam arti harus menghasilkan sesuatu. Sebagai contoh A
= A + 0 atau A = A*1, adalah termasuk instruksi yang tidak efektif.

Horowitz,Eliis and Sahni, Sartaj;


FUNDAMENTAL OF DATA STRUCTUTES;
Computer Science Press, Inc.; Rocville,
Maryland; 1983
Niklaus Wirth
Eidgenossische Technische Hochschule
Zurich, Switzerland
Pengertian Program
Program adalah kumpulan instruksi yang digunakan untuk mengatur
komputer agar melakukan suatu tindakan tertentu.
Tanpa program, komputer sesungguhnya tidak dapat berbuat apa-apa.
Itulah sebabnya sering dikatakan bahwa komputer mencakup tiga
aspek penting, berupa perangkat keras (hardware), perangkat lunak
(software) yang dalam hal ini berupa program, dan perangkat akal
(brainware) atau orang yang berperan dalam operasi komputer
maupun pengembangan perangkat lunak.
Sedangkan Orang yang membuat program, biasa disebut
pemrogram (programmer). Adapun aktivitas yang berhubungan
dengan
pembuatan program dinamakan pemrograman (programming).

Suatu program ditulis dengan mengikuti kaidah bahasa


pemrograman tertentu. Bahasa pemrograman dapat
dianalogikan dengan bahasa yang digunakan manusia
(bahasa manusia).

Sebagaimana diketahui, ada bermacam-macam bahasa


manusia, seperti bahasa Inggris, bahasa Indonesia, atau pun
bahasa Batak.
Kumpulan instruksi dalam bahasa manusia yang berupa sejumlah
kalimat dapat Anda analogikan dengan suatu program. Manusia
dapat mengerjakan suatu instruksi berdasarkan kalimat-kalimat dan
komputer dapat menjalankan suatu instruksi menurut program.

Dalam konteks pemrograman, terdapat sejumlah bahasa


pemrograman seperti, Pascal, C, C++, Basic, Delphi, Visual Basic,
PHP, Java, C#, ASP, dll.

Secara garis besar, bahasa-bahasa pemrograman dapat


dikelompokkan menjadi:

1.Bahasa beraras-tinggi (high-level languange),


2.Bahasa beraras-rendah (low-level language)
Bahasa beraras-tinggi adalah bahasa pemrograman yang
berorientasi kepada bahasa manusia. Program dibuat
dengan menggunakan bahasa pemrograman yang mudah
dipahami oleh manusia, biasanya menggunakan kata-kata
bahasa Inggris; misalnya if untuk menyatakan “jika” dan
and untuk menyatakan “dan”.
Yang termasuk dalam kelompok bahasa ini adalah bahasa
C, C++, Java, Pascal, Basic.
Bahasa beraras-rendah adalah bahasa pemrograman yang
berorientasi kepada mesin. Bahasa ini menggunakan kode
biner (yang hanya mengenal kode 0 dan 1) atau suatu kode
sederhana untuk menggantikan kode-kode tertentu dalam
sistem biner.
Yang tergolong dalam kelompok bahasa ini adalah bahasa
mesin dan bahasa rakitan.
Model Komputasi
Suatu program adalah kumpulan definisi fungsi sedangkan
suatu komputasi adalah aplikasi fungsi.

Terdapat 3 model komputasi yaitu:


 Model fungsional,
 Model logika, dan
 Model imperatif
Model Fungsional

Model ini terdiri dari satu set nilai, fungsi, dan operasi
aplikasi fungsi dan komposisi fungsi. Fungsi ini dapat
mengambil fungsi lain sebagai argumentasi dan
mengembalikan fungsi tersebut sebagai hasil (higher-order
function).

Contoh model fungsional :


Fungsi linier y = 3x + 2 dapat didefinisikan sebagai berikut
fx = 3*x + 2.
Model Logika

Model ini terdiri dari satu set nilai, definisi hubungan, dan
kesimpulan logis. Program terdiri dari definisi hubungan dan
suatu komputasi adalah suatu bukti (suatu urutan kesimpulan).

Contoh model logika :


Fungsi linier y = 3x + 2 dapat didefinisikan sebagai berikut
F(X,Y) if Y is 3*x + 2
Model Imperatif

Model ini terdiri dari satu set nilai yang mencakup suatu keadaan
dan operasi tugas untuk memodifikasi pernyataan. Pernyataan
adalah set pasangan nilai-nama dari konstanta dan variabel.
Program terdiri dari urutan tugas dan suatu komputasi terdiri dari
urutan pernyataan.

Contoh model imperatif :


Fungsi linier y = 2x + 3 dapat didefinisikan sebagai berikut y:=
2*x +3
Definisi Sintaks
Sintaks merupakan kumpulan aturan yang mendefinisikan suatu
bentuk bahasa. Sintaks mendefinisikan bagaimana suatu kalimat
dibentuk sebagai barisan/urutan dari pemilihan suatu kata dasar.
Kata bukan merupakan sesuatu yang mendasar.

Sebagai contoh, dalam keyword bahasa C (seperti while, do,if,


dan else), identifier, angka, operator, dan seterusnya, merupakan
kata dalam suatu bahasa.
Sintaks dalam bahasa C mengatur cara mengombinasikan kata-
kata tersebut ke dalam suatu statement dengan bentuk yang
benar sehingga dapat disusun suatu program yang dapat berjalan
dengan benar.
Sintaks tidak mengerti apapun tentang isi atau arti dari suatu
kalimat, aturan semantik yang bisa mengartikannya.
Dalam hubungannya dengan bahasa pemrograman, kita musti
memenuhi sintaks (baca: aturan struktur bahasa) agar program
dapat berjalan.
Sebagai contoh, dalam bahasa BASIC, untuk mengassign
sebuah variabel dengan sebuah nilai, kita memakai operand ‘=’,
tetapi kalau dalam Pascal, kita pakai ‘:=’. Contoh dalam
BASIC: a=1, tapi dalam bahasa Pascal, a:=1.
Semantik
Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.
Semantic mendefinisikan arti dari program yang benar secara sintak dari bahasa
tersebut. Semantic suatu bahasa membutuhkan semacam ekspresi untuk
mengirimkan suatu nilai kebenaran (TRUE, FALSE, NOT atau nilai integer).
Dalam banyak kasus, program hanya dapat dieksekusi jika benar, serta mengikuti
aturan sintak dan semantic. Sederhananya, semantik menjelaskan arti dari program.

Analoginya sebagai berikut. Apabila kita memakai sintaks [subyek] + [kata kerja]
+ [kata benda], kita bisa menghasilkan kalimat-kalimat.
Apabila kita mengasilkan kalimat Saya makan nasi, maka kalimat ini memenuhi
aturan sintaks. Tapi, apabila saya membuat kalimat Saya makan batu, secara
sintaks kalimat ini sudah benar. Namun, secara semantik, kalimat ini tidak
mengandung makna yang berarti.

Dalam hubungannya dengan bahasa pemrograman, kadang ada kalanya seorang


programmer tidak bisa mengaitkan sintaks dengan model komputasi. Kesalahan
logika bisa dengan mudah terjadi.
Sebagi contoh ada bahasa pemrograman sebagai berikut:

if(a=5) {
echo ‘Nilai a=5?;
}

Apabila program ini dijalankan, apa yang terjadi?


Apabila bahasa yang dipakai adalah bahasa C, maka output yang keluar selalu
Nilai a=5,

Tapi, apabila yang dimaksud adalah programmer ingin mengevaluasi nilai


variabel a, maka seharusnya memakai operator logika ‘==’. Jadi, program
yang sebenarnya menjadi

if(a==5){
echo ‘Nilai a=5?;
}
Pengenalan IDE (Integrated Development
Environment) C++

IDE adalah sebuah software aplikasi yang memberikan fasilitas


kepada programmer komputer ketika membuat program.
Pengenalan Struktur program C++

Anda mungkin juga menyukai