Anda di halaman 1dari 8

DIKTAT KULIAH

LOGIKA & ALGORITMA


PEMROGRAMAN

Disusun :

Rachmat Hidayat, A.Md.Kom

AKADEMI MANAJEMEN INFORMATIKA DAN KOMPUTER IBRAHIMY


AMIKI SITUBONDO
2006
Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

BAB I
ALGORITMA DAN PEMROGRAMAN

Target :
Mengetahui Algoritma dan memahami algoritma dapat memecahkan masalah
dalam kehidupan sehari-hari atau beberapa kasus sehari-hari, mampu memahami flow
chart, logika dan mengetahui variable serta penggunaanya.

Materi :
• Sejarah Algoritma
• Penulisan Algoritma
• Teks Algoritma (Model Structured English)
• Sequence / Urutan
• Flow Chart
• Penggunaan Logika
• Operator Aritmatika
• Operator Relasi
• Variabel dan Tipe Data

1.1 Sejarah Algoritma


Apa itu Algoritma ?
Apa Itu Algoritma ? Kata algoritma, mungkin bukan sesuatu yang asing bagi kita.
Penemunya adalah seorang ahli matematika dari uzbekistan yang bernama Abu
Abdullah Muhammad Ibn Musa al-Khwarizmi (770-840).
Di dunia barat beliau lebih terkenal dengan sebutan Algorizm. Karena lidah luar
negeri sulit mengucapkan lafal Al-Khwarizmi sehingga di panggilan dengan Algorizm
yang kemudian dipakai untuk menyebut konsep algorithm yang ditemukannya. Dalam
bahasa Indonesia kita kemudian menyebutkannya sebagai algoritma. Algoritma adalah
kunci dari bidang ilmu komputer, karena banyak bidang di bawah ilmu komputer yang
lahir berdasarkan konsep algoritma ini. Pada hakekatnya algoritma juga adalah kunci
dari kehidupan kita.
Cara kehidupan kita sehari-hari juga merupakan algoritma seperti kegiatan mandi.
Maka yang perlu dipersiapkan kita harus menyiapkan handuk, pakaian ganti, peralatan
mandi. Lalu pergi ke kamar mandi, urutan-urutan tersebut dalam kehidupan kita
sehari-hari merupakan langkah tersistematis dan salah satu bagian dari algoritma.
Contoh algoritma mau mandi :
0. Mulai
1. Menyiapkan pakaian ganti
2. membawa handuk
3. apakah sudah ada sabun, sikat gigi ?
4. jika belum maka langkah 5
5. menyiapkan sabun, sikat gigi
6. jika sudah ada langkah ke 7
7. Pergi ke kamar mandi
8. Menyiapkan air mandi
9. membuka pakaian
10. apakah mandi dulu atau sikat gigi ?
11. jika pilih sikat gigi dulu maka langkah 12
12. ambil sikat gigi dan odol jika tidak langkah ke 14
13. jika selesai sikat gigi lalu kerjakan langkah ke 14
14. menyirami badan dengan air
15. menggosok badan
16. menyirami sampai bersih
17. membersihkan pakai handuk
18. memakai baju ganti
19. selesai
Tentunya urutan langkah-langkah di atas sudah dianggap biasa dalam kehidupan
sehari-hari namun secara tidak langsung merupakan algoritma, begitu juga kegiatan
kita sehari-hari yang lain, contoh mau makan, mau pergi ke sekolah, mau tidur, mau
bekerja dan sederetan aktivitas sehari-hari kita semuanya adalah algoritma.
Definisi Algoritma
Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang
digunakan untuk memecahkan suatu permasalahan.
Menurut Kamus besar bahasa Indonesia (Balai Pustaka 1988) secara formal Adalah

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 1


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

“Algoritma adalah urutan logis pengambilan putusan untuk pemecahan


masalah.“
Penulisan Algoritma dalam dunia komputer dilambangkan dengan langkah-langkah
yang dituliskan dalam bentuk kata-kata : Dalam sehari-hari secara tidak langsung
banyak yang sudah dilakukan menggunakan algoritma membeli barang, uang
kembalian uang yang harus dibayar semua menggunakan algoritma. Semenjak di kelas
1 SD menghitung penjumlahan berarti sebenarnya sudah menggunakan algoritma.

1.2 Penulisan Algoritma


Penulisan algoritma secara umum masih belum adanya ketentuan-ketentuan
standar penulisan yang berlaku namun penulis mencoba untuk mengusulkan bentuk
standarisasi penulisan algoritma sehingga dapat diterima oleh semua dan tidak
membingungkan oleh karena itu algoritma sebaliknya memenuhi penulisan sebagai
berikut :
1. Penulisan algoritma ditulis dengan kata-kata dan kalimat tidak mengandung
salah satu bahasa pemrograman apapun.
2. Dengan penomoran harus urut menunjukkan tersistematis(tidak mengandung
kelipatan).
3. diawali dengan mulai dengan angka 0
4. diakhir dengan selesai
5. algoritma mengandung adanya input/masukan, ada unsur proses dan output/
keluaran.
6. kata-kata ditulis dalam bentuk singkat simple dan padat.
Kesimpulannya teks algoritma dapat ditulis dalam notasi apapun, asalkan mudah
dipahami dan dimengerti. Sekali lagi tidak ada aturan baku tentang penulisan teks
algoritma.

Contoh 1.2.1 Algoritma untuk menghitung 3 tambah 4


0. Mulai
1. angka pertama adalah 3
2. angka kedua adalah 4
3. hitung 3 + 4
4. hasil hitungan sama dengan 7
5. selesai

Contoh 1.2.2 Algoritma penukaran data


0. Mulai
1. Inputkan variabel A dan B
2. Isikan C dengan nilai A
3. Isikan A dengan nilai B
4. Isikan B dengan nilai C
5. Selesai

Atau:
1. A B 4. A B

C
2.
A B

3. A B 5. A B

C C

Atau:
Algoritma Tukar_nilai
Deklarasi a,b,c as integer
Deskripsi : Input a
Input b
c a
a b
b c

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 2


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

Atau :
Program Penukaran_Nilai
{Program untuk menukar dua nilai}
Deklarasi
A, B, C : integer
Deskripsi
{tentukan nilai A dan B}
A = 10
B = 23
Write (‘Nilai A sebelum ditukar’, A)
Write (‘Nilai B sebelum ditukar’, B)
{tukar nilai A dan B}
C=A
A=B
B=C
Write (‘Nilai A setelah ditukar’, A)
Write (‘Nilai B setelah ditukar’, B)
EndProg.

1.3 Teks Algoritma (Model Structured English)


Teks Algoritma (Model Structured English) terdiri dari :
Algoritma Nama_Algoritma
{ Penjelasan tentang Algoritma, yang berisi uraian singkat mengenai apa yang
dilakukan oleh Algoritma }
Deklarasi
{ Semua nama yang dipakai, meliputi nama tipe, nama tetapan, variabel }
Deskripsi
{ Semua langkah Algoritma dituliskan disini }

Contoh 1.3 Algoritma menghitung luas lingkaran


Algoritma Luas_Lingkaran
{Menghitung luas lingkaran, Algoritma menerima masukan jari-jari lingkaran,
menghitung luas, lalu mencetak luas lingkaran ke layar}
Deskripsi
Const
phi = 3,14 {nilai ∏}
{Nama variabel}
r : integer
L : integer
Deskripsi
Read r
L phi*r^2 {L = ∏*r²}
Write (L)

1.4 Sequence / Urutan


Algoritma Runtunan_1
{Contoh urutan dan pengaruhnya dalam program}
Deklarasi
A, B : integer
Deskripsi
A = 10
A = 5*10
B=A
Write (B)
{Nilai tercetak=50}

Algoritma Runtunan_2
{Contoh runtunan_2}
Deklarasi
A, B : integer
Deskripsi
A = 10
B=A
A = 5*A
Write (B)
{Nilai tercetak=10}

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 3


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

Algoritma Runtunan_3
{Contoh runtunan 3}
Deklarasi
A, B : integer
Deskripsi
A=0
B=3
A = A+B
B=7
A = A+B
Write (A) {Nilai A=10}
{Nilai tercetak=10}
A=6
A = A+A
Write (A) {Nilai A=12}

Algoritma Runtunan_4
{Contoh 4 tentang penghitungan gaji karyawan. Input=nama & gaji pokok. Gaji
bersih=gaji pokok+tunjangan-pajak. Tunjangan=20% x gaji pokok + tunjangan}
Deklarasi
nama_karyawan : string
gaji_pokok, tunjangan, pajak, gaji_bersih : longint
Deskripsi
Input (nama_karyawan, gaji_pokok)
tunjangan=20/100*gaji_pokok
pajak=5/100*(gaji_pokok+tunjangan)
gaji_bersih=gaji_pokok+tunjangan-pajak
Write (gaji_bersih)

1.5 Flow Chart


Pengertian Flow Chart
Flow chart adalah gambar-gambar yang menunjukkan alur yang berupa urutan
secara sistematis dalam suatu program. Jadi pada dasarnya flow chart berupa urutan
sistematis pemecahan masalah namun dalam bentuk gambar, sedangkan algoritma
urutan secara sistematis untuk memecahkan masalah berupa kata-kata dan kalimat.

Adapun makna flow chart sebagai berikut :

Gambar Makna

Penghubung Dapat diisi


Koneksi
huruf/angka/huruf dan angka.

Penghubung Diakhiri atau tidak


Menutup
terhubung lagi / akhir
Koneksi
penghubung.

Digunakan untuk mulai awal


Mulai
dan mengakhiri atau selesai.

Digunakan untuk memproses,


Atau Proses
hitungan dll.

Data input, Masukan / input dan keluaran /


output output.

Keputusan Kondisi penggunaan jika.

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 4


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

Persiapan
Penggunaan perulangan.
perulangan

Penggunaan untuk dokumen /


Dokumen
teks.

Penyimpanan
Untuk penyimpanan data / file.
data

Magnetic disk Penyimpanan permanen.

Panah
Menunjukkan alur data.
penghubung

Contoh 1.5 Penggunaan flow chart untuk menghitung luas segitiga

Flow chart hitung luas segitiga Algoritma hitung luas segitiga


1. mulai
Mulai 2. masukkan alas
3. masukkan tinggi
4. hitung dengan rumus, luas =
Isi alas, (alas x t) / 2
tinggi 5. tampilkan hasil luas / cetak
hasil luas
6. selesai
Hitung L=
(a x t)/2

Hasil

Selesai

Flow chart di atas dapat kita bandingkan dengan algoritma yang sebelah kanan
ternyata sama, yang membedakan adalah flow chart dalam bentuk gambar dan tidak
banyak tulisan sedangkan algoritma cenderung lebih banyak kata-kata. Dikarenakan
flow chart merupakan gambar maka tentu tidak banyak kata-katanya dibandingkan
dengan algoritma oleh karena flow chart yang baik adalah :
1. diawali dengan mulai
2. adanya input, proses dan output
3. terurut secara sistematis dalam urutan adanya panah yang jelas.
4. tidak banyak mengandung kata-kata lebih simple dalam penulisan kata-kata
dibandingkan dengan algoritma.
5. tidak menggunakan kata-kata dengan salah satu bahasa pemrograman apapun.
6. diakhiri dengan selesai

1.6 Penggunaan Logika


Logika didalam bahasa pemrograman merupakan salah satu hal yang mendasar
sehingga perlu pemahaman logika yang menyatakan suatu itu salah atau benar. Dalam
kehidupan sehari-hari kita dihadapkan pada suatu yang menuntut logika sesuatu itu
benar atau sesuatu itu salah.

A. logika dengan AND atau DAN


logika “And” menuntut benar itu keduanya harus memenuhi semua.

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 5


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

Tabel logika AND


AND (&) HASIL
B B B
B S S
S B S
S S S

B. logika dengan OR atau ATAU


logika “OR” menuntut benar, kecuali keduanya tidak terpenuhi.
Tabel logika AND
AND (&) HASIL
B B B
B S B
S B B
S S S

1.7 Operator Aritmatika


Penggunaan operator matematika digunakan untuk menyelesaikan permasalahan
yang berhubungan dengan hitungan–hitungan yang biasanya merupakan suatu proses.
Berikut operator aritmatika yang dikenali oleh bahasa BASIC :

Lambang Makna
^ Pangkat
* Perkalian
/ Pembagian pecahan
\ Pembagian bulat
MOD Sisa pembagian
+ Penjumlahan
- Pengurangan

Semua data aritmatika diatas digunakan hanya untuk data yang bertipe numerik.
Untuk data yang bertipe string (karakter) hanya mengenal operasi penggabungan
data, dengan menggunakan tanda operator +, contohnya “Kota” + ” Situbondo”
menghasilkan data baru “Kota Situbondo”.

1.8 Operator Relasi


Operator relasi digunakan untuk membandingkan dua buah data atau lebih yang
nantinya akan menghasilkan nilai kebenaran, yaitu benar dan salah, bentuk/macam-
macam operator relasinya adalah sama dengan operator relasi yang dikenal dalam
matematika pula, yaitu :

Lambang Makna
= Sama dengan
> Lebih dari
< Kurang dari
>= Lebih dari atau sama dengan
<= Kurang dari atau sama dengan
<> Tidak sama dengan

1.9 Variabel dan Tipe Data


Variabel di dalam bahasa pemrograman merupakan suatu elemen dasar yang
sangat penting dan mutlak sifatnya. Dalam variabel ini akan disimpan data-data yang
diperlukan secara sementara. Pengertian variabel didalam bahasa pemrograman BASIC
adalah sama dengan pengertian variabel dalam matematika, yaitu sebuah wadah
tempat menyimpan data secara sementara dan isinya atau data tersebut bisa berubah-
ubah isinya.
Didalam bahasa pemrograman BASIC variabel dibagi menjadi 2 (dua) macam, yaitu
variabel AlphaNumeric (variabel karakter) dan variabel Numeric (variabel angka).
Sedangkan variabel numeric dibagi lagi menjadi beberapa tipe sesuai dengan tipe
angka dan jangkauannya, misalkan untuk bilangan bulat dan bilangan pecahan
berbeda tipe variabelnya. Untuk konstanta juga sama dengan variabel dibagi menjadi 2
golongan besar, yaitu konstanta karakter dan konstanta angka. Pengertian konstanta
sendiri sebenarnya hampir sama dengan pengertian variabel, yaitu tempat
penyimpanan data sementara tetapi isi dari data untuk konstanta ini tidak bisa

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 6


Design Grafis, Web Programming, Software Provider :: tamhcar@telkom.net

berubah, misal suatu konstanta untuk Phi dalam perhitungan luas lingkaran selalu
bernilai 22/7.
Berikut ini beberapa jenis tipe data dan jangkauannya.

Jenis Tipe Data Deklarasi Jangkauan


Integer Jumlah% Bil. Bulat –32.768 s/d +32.767
Long Integer Nilai& Bil. Bulat –2.147.438.648 s/d +2.147.438.647
Single Precision Total!/Total Bil. Pecahan 0 s/d 1038
Double Precision Gaji# Bil. Pecahan 10-308 s/d 1,67 x10308
String Nama$

Syarat-syarat penulisan nama variabel :


1. tidak boleh diawali dengan angka
contoh : 3nama (salah) ; nama3 (betul)
2. variable yang terdiri dari dua suku kata harus dirangkai atau disambung dengan
tanda strip bawah ( _ )
contoh : nama singkat (salah) ; nama_singkat (betul)
3. variable tidak boleh menggunakan symbol-simbol seperti koma, titik koma, $, #, ^,
&, dll.
4. variable tidak boleh menggunakan kata kunci/ reserved word yang ada pada
bahasa pemrograman.
5. Variabel terdiri maksimal 40 karakter.

By RACHMAT HIDAYAT, A.Md.Kom : 081.336.111.211 Logika & Algoritma Pemrograman - 7

Anda mungkin juga menyukai