TRANSPARANSI KULIAH
LA102
LOGIKA DAN ALGORITMA
TANGGALREVISI
TANGGAL BERLAKU
KODE DOKUMEN
:
:
:
09 September 2006
09 September 2006
DM-RHJ-005-005-008
Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai
sejarah oleh para ahli sejarah matematika menemukan asal kata
tersebut yang berasal dari nama penulis buku arab yang terkenal
yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al- Khuwarizmi
dibaca orang barat menjadi Algorism.
Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar
Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The
book of restoration andreduction). Dari judul buku itu kita juga
memperoleh akar kata “Aljabar” (Algebra).
Algoritma dan ilmu informatika
Algoritma adalah jantung ilmu komputer atau informatika. Banyak
cabang ilmu komputer yang diacu dalam terminologi algoritma.
Jadi ??
· Karena itu suatu Algoritma harus dinyatakan dalam bentuk yang
dapat dimengerti oleh pemroses.
· Jadi suatu pemroses harus :
1. Mengerti setiap langkah dalam Algoritma
2. Mengerjakan operasi yang bersesuaian
dengan langkah tersebut.
Contoh Algoritma :
1. Algoritma Rebus Telor
1. Ambil panci
2. Apakah panci bersih, bila kotor cuci lebih dulu
3. Taruh air dalam panci
4. Nyalakan kompor
5. Letakkan panci diatas kompor
6. Tunggu hingga air mendidih
7. Masukkan telur
8. Tunggu sampai tiga menit
9. Angkat panci dari kompor
10. Matikan kompor
11. Angkat telur dari panci
2. Algoritma Menghitung Luas
Persegi Panjang.
1. Masukan panjang persegi panjang
2. Masukan lebar persegi panjang
3. Hitung luas persegi panjang = panjang x lebar
4. Tulis luas persegi panjang
TUGAS :
Buatlah algoritma dalam kehidupan sehari-hari lainnya ! (minimal
2)
Beda Algoritma dan Program
PENYAJIAN ALGORITMA
Algoritma dapat disajikan dalam dua bentuk, yaitu : tulisan dan
gambar/simbol.
1. Panyajian dalam bentuk gambar biasanya
menggunakan metode Flowchart,
2. Penyajian algoritma dalam bentuk tulisan
biasanya menggunakan metode Pseudocode.
Contoh :
1. Flowchart untuk merebus telor
1. Flowchart untuk menghitung luas dan keliling
lingkaran.
Contoh :
Algoritma Pseudocode untuk menghitung luas dan keliling
lingkaran.
Sistematika Penulisan Program
Pengenalan Bahasa Pemrograman PASCAL
· Pascal adalah bahasa pemrograman yang pertama kali di buat
oleh Profesor Niklaus Wirth, seorang anggota International
Federation of Information Processing (IFIP) pada tahun 1971. Dengan
mengambil nama dari matematikawan Perancis, Blaise Pascal, yang
pertama kali menciptakan mesin penghitung, Profesor Niklaus Wirth
membuat bahasa Pascal ini sebagai alat bantu untuk mengajarkan
konsep pemrograman komputer kepada mahasiswanya. Selain itu,
Profesor Niklaus Wirth membuat Pascal juga untuk melengkapi
kekurangan-kekurangan bahasa pemrograman yang ada pada saat
itu.
· Salah satu compiler Bahasa Pascal adalah Turbo Pascal
CONTOH :
Pengenalan Instruksi/Statement Pascal
1. Menghapus layar :
clrscr;
2. Menulis/mencetak teks/data kelayar :
a. write(’Silahkan ketik nama Anda : ’);
Dilayar akan tampil : Silahkan ketik nama Anda
b. writeLn('Hello ', Name)
Dilayar akan tampil : Hello Agus
( Apabila Name diisi Agus )
c. writeLn;
Dilayar akan tampil kosong, tetapi kursor pindah ke baris
berikutnya.
3. Membaca data dari keyboard :
a. readLn(Name);
Komputer sedang menunggu Anda, untuk mengetik data, di posisi
kursor saat itu.
b. readLn;
Komputer sedang menunggu Anda, untuk menekan Enter, di posisi
kursor saat itu.
Membuat Direktory / Folder / Lemari di Harddisk
1. Sebelum memulai latihan membuat program, buatlah dahulu
folder atau tempat penyimpanan file-2 latihan Anda.
2. Cara membuat folder adalah sbb :
· Pilih ikon MyDocuments dengan cara double klick (klik 2x)
mouse.
· Pilih menu File, pilih New, lalu pilih Folder, maka tersedia
folder baru dengan nama New Folder, rubahlah dengan nama Anda,
misal Agus.
· Maka sekarang Anda sudah memiliki folder dengan nama Agus,
selanjutnya simpanlah file-2 latihan Anda di folder Anda.
Cara Mengaktifkan Turbo Pascal 7.0
· Sekarang aktifkan compiler Turbo Pascal 7.0 dengan cara sbb
:
· Klik Start pada pojok kiri bawah windows
· Pilih All Program
· Pilih Turbo Pascal 7.0
· Setelah Turbo Pascal 7.0 tampil, maksimalkan tampilan window
Turbo Pascal 7.0 tekan tombol ALT dan ENTER secara bersamaan.
Program Latihan Pertama
Ketiklah program dibawah ini sebagai latihan Anda :
Latihan 1 :
program SampleCode;
uses crt;
begin
clrscr; { fungsinya untuk menghapus layar }
writeLn('Hello World');
readln;
end.
Jika sudah selesai mengetik program diatas, lakukan langkah sbb
:
1.Menyimpan program kedalam file pertama kali :
Pilih menu File, pilih menu Save As, arahkan/ganti Save in ke
folder Anda yang tadi telah Anda siapkan, misal Agus, jika sudah
berada didalam folder Anda, ketik nama filenya, misal : Hello
2. Langkah berikutnya adalah Menguji Program (lihat langkah-2
pemecahan masalah), yaitu dengan cara melakukan Running program
Anda, dengan mengklik menu Run, atau langsung tekan CTRL dan
F9.
3. Jika ada kesalahan (error), perbaiki program Anda, lalu
ulangi lagi Running program.
4. Jika sudah tidak ada error, simpan program terakhir Anda
tersebut, dengan cara memilih menu File, lalu pilih menu Save.
Ketiklah program dibawah ini sebagai latihan Anda :
Latihan 2 :
program WriteName;
uses Crt;
var Name: string;
begin
clrscr;
write(‘Silahkan ketik nama Anda : ');
readLn(Name);
writeLn;
writeLn('Hello ', Name)
readln;
end.
Jika sudah selesai mengetik program diatas, lakukan langkah
seperti sebelumnya.
TUGAS :
Buatlah program untuk membaca Nim, Nama, Alamat, kemudian cetak
Nim, Nama, Alamat tersebut ke screen.
Keuntungan Algoritma
· Penulisan algortima tidak tergantung pada bahasa pemrograman
manapun, artinya penulisan algortima adalah independent dari bahasa
pemrograman dan komputer yang melaksanakannya.
· Notasi algortimik dapat diterjemah-kan ke dalam berbagai
bahasa pemrograman.
· Apapun bahasa pemrograman yang akan dipakai, output yang
dihasilkan sama dengan berdasarkan algortima yang sama.
Algortima Yang Baik ?
· Tingkat kepercayaannya tinggi (realibility)
Hasil yang diperoleh dari proses harus berakurasi
tinggi dan benar.
· Pemrosesan yang efisien (cost rendah)
Proses harus diselesaikan secepat mungkin dan frekuensi
kalkulasi yang sependek mungkin.
· Sifatnya general
Bukan sesuatu yang hanya untuk menyelesaikan satu kasus saja,
tapi juga untuk kasus lain yang lebih general.
· Bisa Dikembangkan (expandable)
Haruslah sesuatu yang dapat kita kembangkan lebih jauh
berdasarkan perubahan requirement yang ada.
· Mudah dimengerti
Siapapun yang melihat, dia akan bisa memahami algoritma anda.
Susah dimengertinya suatu program akan membuat susah di maintenance
(kelola).
· Portabilitas yang tinggi (Portability)
Bisa dengan mudah diimplementasikan di berbagai platform
komputer.
Langkah-langkah Pemecahan Masalah untuk Membuat Program
INTERPRETER & COMPILER
Testing dan debuging
Merawat Program
To be continue . . . . . . . .
Apa itu Algoritma ?
Algoritma adalah urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis.
Kata Logis merupakan kata kunci dalam Algoritma.
Langkah-langkah dalam Algoritma harus logis dan
harus dapat ditentukan bernilai salah atau benar.
Kamus besar bahasa Indonesia (Balai Pustaka 1988)
secara formal mendefinisikan algoritma sebagai:
Algoritma adalah urutan logis pengambilan putusan
untuk pemecahan masalah.
Dalam kehidupan sehari-hari banyak terdapat
proses yang dinyatakan dalam suatu algoritma
sesuai dengan definisinya.
Sebagai contoh bagaimana membuat telor dadar,
atau membuat resep makanan tentunya harus ada
langkah-langkah dalam menyelesaikan.
program = struktur data + algoritma
Metode dan tahapan sistematis dalam program adalah algoritma
Program adalah kompulan instruksi komputer
Program ini ditulis dengan menggunakan bahasa
pemrograman.
Jadi bisa kita sebut bahwa program adalah suatu
implementasi dari bahasa pemrograman.
Interpreter
Interpreter berasal dari kata to interpret yang berarti
menerjemahkan atau mengartikan.
Interpreter merupakan penterjemah bahasa pemrograman yang
menerjemahkan instruksi demi instruksi pada saat eksekusi
program.
Pada saat menerjemahkan, jika ditemukan kesalahan maka
interpreter akan menampilkan pesan kesalahan dan proses eksekusi
program akan langsung terhenti pada saat itu juga. Contoh
interpreter : BASIC (QuickBasic, TurboBasic)
Merawat Program
8
Membuat Dokumentasi
7
Definisi Masalah
Menentukan Input, Proses, Output
2
Membuat Rancangan
Dapat disajikan dalam Diagram HIPO atau Structure Chart
Membuat Algoritma
Dapat disajikan dalam bentuk kata-kata
(english structure – Indonesia),
Flowchart dan Pseudocode
3
4
Menguji Algoritma
6
Menguji Program
Testing dan Debugging
5
Menulis Program
Dengan salah satu bahasa pemrograman
1
Algoritma Lingkaran
{menghitung luas dan keliling lingkaran }
{ Inisialisasi Deklarasi }
var Jari, Keliling, Luas : real
const phi = 3.14
{ Deskripsi }
{ Input }
Input (Jari)
{ Proses }
Keliling = 2 * phi * jari
Luas = phi * jari * jari
{ Output }
Print (Keliling, Luas)
SELESAI
Print Keliling, Luas
Luas = phi * jari * jari
Keliling = 2 * phi * jari
Ada 3 parameter :
1. Inisialisasi
(tidak selalu harus ada)
2. Input
3. Proses
4. Output
Secara umum, sistematika pokok penulisan program terdiri dari
inisialisasi, input, proses dan output.
1. Inisialisasi
Pada beberapa bahasa pemrograman tersturktur seperti Pascal, C
dan lain-lain.
Proses inisialisasi merupakan suatu keharusan. Pada tahap ini
pemrogram harus menuliskan nama program, piranti yang akan
digunakan, konstanta, variabel, fungsi dan prosedur yang akan
digunakan.
2. Input
Pada tahap ini pemrogram menuliskan perintah-perintah untuk
memasukkan data yang akan diproses dengan suatu prosedur.
3. Proses
Pada tahap ketiga ini pemrogram menuliskan proses-proses
pengolahan data, baik berupa rumus matematika, statistik
maupun logika dan lain-lain.
4. Output
Pada tahap terakhir ini pemrogram menuliskan perintah-perintah
untuk menampilkan hasil pengolah-an data dalam bentuk format
tertentu, seperti tabel, grafik dan lain-lain.
STRUKTUR PENULISAN PROGRAM DENGAN BAHASA PASCAL
program nama_program;
uses nama_unit;
{ Inisialisasi / deklarasi }
var variabel;
const konstanta;
function fungsi;
procedure prosedur;
{ deskripsi }
begin
isi algoritma atau program
end.
program WriteName;
uses crt;
{ Inisialisasi / deklarasi }
var Name: string; { Menyiapkan sebuah variable
Name sbg string }
{ deskripsi }
begin
{ Input }
clrscr;
write(‘Silahkan ketik nama Anda : ');
readLn(Name);
{ Tidak Ada Proses }
{ Output }
writeLn;
writeLn('Hello ', Name)
readln;
end.
Definisi
phi = 3.14
Input Jari
MULAI
Contoh :
Program Konversi_Suhu;
{ Menghitung Fahrenheit dan Reamur }
uses Crt;
{ Inisialisasi / Deklarasi }
var Celsius, Fahrenheit, Reamur : real;
{ Algoritma }
begin
{ Input }
Clrscr;
Write(‘Harga Celsius : ');
Readln(Celsius);
{ Proses }
Fahrenheit = 5/9 * (Celsius +32);
Reamur = 4/5 * (Celsius +32);
{ Output }
WriteLn('Harga Celsius : ', Celsius);
WriteLn('Harga Fahrenheit : ', Fahrenheit);
WriteLn('Harga Reamur : ', Reamur);
Readln;
end.
Compiler
compiler dari kata to compile yang berarti menyusun,
mengumpulkan atau menghimpun.
Compiler merupakan penerjemah bahasa pemrograman
yang menerjemahkan instruksi-instruksi dalam satu
kesatuan modul ke dalam bahasa mesin (obyek program).
Dan mengalami proses linking yang berfungsi untuk
menggabungkan modulmodul tersebut dengan modul lain
yang berkaitan, sehingga akan dihasilkan suatu file
executable yang akan dieksekusi oleh komputer.
Contoh compiler : Pascal, C/C++, Fortran,
Program ditulis dengan suatu bahasa pemrograman, maka dibutuhkan
suatu penterjemah, yaitu interpreter atau compiler.
Source
Program
Testing dan debuging mempunyai tujuan untuk menghasilkan program
yang benar.
Testing adalah proses mengeksekusi program secara intensif untuk
menemukan kesalahan.
Debuging adalah saat menemukan kesalahan sampai kesalahan itu
diperbaiki sehingga tidak ada kesalahan lagi.
Running / Testing
Object
Program
Executeable
Program
1. Pada setiap baris program atau setiap beberapa baris
program, ditambahkan komentar yang menjelaskan dari
suatu pernyataan.
2. Membuat buku manual.
Langkah ini dilakukan setelah program selesai dibuat dan sudah
digunakan oleh pengguna (user). Hal yang paling sering terjadi
disini adalah munculnya bug yang sebelumnya tidak terdeteksi.
Atau mungkin pengguna ingin tambahan suatu fasilitas baru.
Jadi pemeliharaan program berarti melakukan koreksi, adaptasi
dan melengkapi fasilitas guna mengantisipasi kebutuhan masa
depan.
MULAI
Ambil panci
Panci bersih ?
Cuci panci
Masukan air ke panci
Nyalakan kompor
Letakkan panci diatas kompor
Tunggu hingga air mendidih
Tunggu sampai tiga menit
1
Angkat panci dari kompor
Matikan kompor
Angkat telur dari panci
SELESAI
1
Tdk
Ya
LOGIKA & ALGORTIMA
PAGE
1
Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja08/ 1 -
28
Get The Better Future By Computer Science