ALGORITMA & STRUKTUR DATA 1 BAB I
MODUL
MATA KULIAH
ALGORITMA
& STRUKTUR DATA 1
(
Menggunakan
Bahasa Pemrograman C++
)
Oleh
:
T.
Bayu Sasongko, S.Kom., M.Eng
PROGRAM
STUDI D-IV TEKNIK INFORMATIKA
POLITEKNIK
HARAPAN BERSAMA KOTA TEGAL
DAFTAR
ISI
DAFTAR
ISI ………………………………………………………………………………….
BAB
0 - Pendahuluan Algoritma & Struktur Data …………………………………………….
BAB
I - Pendahuluan C dan C++ ……………………………………………………………..
BAB
II - Program Pertama C dan C++ ……………………………………………………….
BAB
III - Tipe Data, Variabel, dan Operasi Perhitungan …………………………………….
BAB
IV - Input dan Output Data …………………………………………………………….
BAB
V – Percabangan ………………………………………………………………………..
BAB
VI – Pengulangan ………………………………………………………………………
BAB
VII – Function …………………………………………………………………………
BAB
VIII – Array ……………………………………………………………………………
BAB
IX – Struct ……………………………………………………………………………..
BAB
X - String dan Manipulasinya ………………………………………………………….
BAB
XI – Pointer ……………………………………………………………………………
DAFTAR
PUSTAKA ……………………………………………………………………….
PENDAHULUAN
ALGORITMA & STRUKTUR DATA
Algoritma
berasal dari kata algoris
dan ritmis
yang
pertama kali diungkapkan oleh Abu Ja’far Mohammad Ibn Musa Al
Khowarizmi (825M) dalam buku Al-Jabr Wa-al Muqobla.
Algoritma
dapat didefinisikan sebagai urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis untuk mencapai tujuan
tertentu. Kata logis berarti bahwa nilai kebenarannya harus dapat
ditentukan, benar
atau
salah.
Langkah-langkah yang tidak benar dapat memberikan hasil yang salah.
Contoh
:
Misalkan
terdapat dua buah gelas, gelas
A dan
gelas
B.
Gelas A berisi air berwarna merah dan gelas B berisi air berwarna
biru, kita ingin menukarkan isi air kedua gelas tersebut, sehingga
gelas A berisi air berwarna biru dan gelas B berisi air berwarna
merah.
Algoritma
diatas tidak menghasilkan pertukaran yang benar, langkah-langkahnya
tidak logis, karena yang terjadi bukan pertukaran tetapi percampuran
antara air di gelas A dengan air di gelas B. Sehingga algoritma Tukar
Isi Gelas diatas Salah.
Dari
permasalahan diatas algoritma yang benar adalah bahwa untuk
menukarkan isi air pada gelas A dengan isi air pada gelas B maka
dibutuhkan sebuah gelas bantuan yang dipakai untuk menampung salah
satu air dalam gelas tersebut misalkan gelas
C.
Algoritma
: Rangkaian langkah-langkah/alur pikiran untuk menyelesaikan suatu
masalah yang sifatnya logis dan sistimatis
Sifat-sifat
Algoritma :
- Definiteness (jelas) : Mudah dibaca/jelas maksudnya (tiap langkah jelas uraiannya) dan tidak ambigu
- Finiteness: Berawal dan berakhir
- Input : Tidak harus ada data masukan yang dimasukkan dari luar
- Output : Paling tidak harus ada satu keluaran
- Effectiveness: Tiap instruksi harus efektif (tepat dan efisien)
Bahasa
pemrograman :
Bahasa
komputer yang digunakan dalam penulisan program
Pemrogram/Programmer
:
Orang
yang membuat program komputer
Pemrograman
:
Kegiatan
merancang atau menulis program computer
KELOMPOK
BAHASA PEMROGRAMAN
- Bahasa Tingkat Rendah (Low Level Language), bahasa yang berorientasi pada mesin. Pemrogram dengan bahasa ini harus berpikir berdasarkan logika mesin berpikir, sehingga bahasa ini kurang fleksibel dan sulit dipahami. Contoh : Bahasa mesin, Bahasa rakitan (assembly).
- Bahasa Tingkat Menengah (Middle Level Language), bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar yang mudah dipahami manusia serta memiliki instruksi-instruksi tertentu yang langsung bisa diakses oleh komputer.
- Bahasa Tingkat Tinggi (Hight Level Language), bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar bahasa yang langsung dapat dipahami oleh manusia. Contoh : Pascal, C/C++, Delphi, Visual Basic
Interpreter
dan Compiller
Agar
komputer memahami program yang disusun dengan bahasa pemrograman,
maka dibutuhkan suatu penerjemah yaitu Interpreter
dan Compiller.
- Interpreter merupakan penerjemah bahasa pemrograman yang menerjemahkan instruksi demi instruksi pada saat eksekusi program. Pada saat penerjemahan interpreter akan memeriksa sintaksis (sintak program), semantik (arti perintah), dan kebenaran logika. Jika ditemukan kesalahan sintaksis (syntak error) maka interpreter akan menampilkan pesan kesalahan dan eksekusi program langsung terhenti.
- Compiler merupakan penerjemah bahasa pemrograman yang menerjemahkan instruksi-instruksi dalam satu kesatuan modul ke dalam bahasa mesin (objek program), kemudian objek program akan mengalami linking yang berfungsi untuk menggabungkan modul-modul tersebut dengan modul-modul lain yang berkaitan seperti data tentang karakteristik mesin, file-file pustaka atau objek program lainnya yang berkaitan dengan objek lainnya menghasilkan file Executable program yang akan dieksekusi oleh komputer.
Langkah
Pemecahan Masalah
(1)
Inisiasi solusi secara umum:
- Deskripsi masalah,
- Merancang algoritma-algoritma untuk memecahkan masalah (bisa lebih dari satu solusi untuk satu permasalahan) dan
- Menekankan pada ketepatan solusi
(2)
Analisa algoritma :
- Menekankan pada efisiensi seperti efisiensi waktu dan efisiensi ruang
- Melakukan analisa algoritma dari solusi-solusi yang dirancang
- Memilih metode struktur data yang tepat
Contoh:
analisis kompleksitas algoritma (Asymptotic Analysis) untuk
membandingkan dua metode sorting, yakni insertion sort dan merge sort
(akan dijelaskan di pertemuan berikutnya)
(3)
Implementasi solusi
- Menggambar flowchart dan atau menulis pseudocode
- Menerjemahkan ke dalam bahasa pemrograman tertentu
- Melakukan pengujian (debugging) dan perbaikan program
Standar
Program yang Baik
1.
Standar Penyusunan Program
- Kebenaran logika
- Waktu untuk penulisan program
- Kecepatan maksimum eksekusi program
- Ekspresi penggunaan memori
- User friendly (bisa dikembangkan programmer developer lain)
- Portability (instalasi dan inisiasi mudah)
- Pemrograman Modular (memudahkan perawatan)
2.
Standar Perawatan Program
- Dokumentasi pemakaian untuk pengguna
- Dokumentasi pengembangan untuk programmer (biasanya berbentuk komentar- komentar pada source code program)
- Konvensi penulisan instruksi (memudahkan pengerjaan program oleh programmer lain)
STRUKTUR
DASAR ALGORITMA
Algoritma
berupa langkah-langkah penyelesaian suatu masalah. Langkah-langkah
tersebut yaitu :
- Sequence Structure (struktur runtunan)
Digunakan
untuk program yang instruksinya sequential/urutan.
- Selection Structure (struktur percabangan)
Digunakan
untuk program yang menggunakan pilihan/penyeleksian kondisi .
Komentar
Posting Komentar