Anda di halaman 1dari 32

ALGORITMA PEMROGRAMAN 2C

(IT-045202:S10-TI) 1
Pertemuan 1
AHMAD HIDAYAT
Games Logika 2

Ada 3 buah wadah terdiri dari wadah A, wadah B dan wadah C. wadah A sudah
menampung 8 liter air dan masing-masing wadah mempunyai ukuran sbb:

wadah A mempunyai kapasitas menampung 8 liter air


wadah B mempunyai kapasitas menampung 5 liter air
Wadah C mempunyai kapasitas menampung 3 liter air

Pertanyaan :

Bagaimana langkah dan berapa cara yang dibutuhkan agar wadah B terisi 4 liter air
dengan alat ukurnya hanya wadah A, B dan C ?
Jawaban 3
•8 5 3

A B C
•8 0 0
•0 5 3
•3 5 0
•3 2 3
•6 2 0
•1 5 2
•1 4 3
Games Logika 2 4

Ayah Mary punya lima anak: 1. Nana, 2. Nene,


3. Nini, 4. Nono. Siapa nama anak kelima?

• Jawaban:?
• Apa anda menjawab Nunu?
• BUKAN! Tentu saja bukan. Anak kelima namanya Mary.
• Gak Percaya? Baca lagi pertanyaan nya!
Apa Itu? 5

Komputer Algoritma Program Komputer


Fokus utama program Komputer secara umum 6
Menyusun sebuah program 7
Untuk menyusun sebuah program yang besar dan kompleks,
pemrogram membutuhkan tahapan penyusunan yang sistematis dan
terpadu, yaitu:
1. Definisi Masalah
2. Analisis Kebutuhan
3. Penyusunan Algoritma
4. Pengkodean/Pemrograman
5. Testing dan Debugging
6. Pemeliharaan
7. Dokumentasi
Algoritma 8
• Algoritma adalah kunci dari bidang ilmu komputer, dan pada dasarnya
setiap hari kita melakukan aktivitas algoritma. Kata algoritma berasal dari
sebutan Algorizm. (Abu Abdullah Muhammad Ibn Musa Al Khwarizmi, ahli
matematika Uzbekistan)

• Algoritma adalah urutan langkah-langkah berhingga untuk memecahkan


masalah logika atau matematika
• Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang
digunakan untuk memecahkan suatu permasalahan.
• Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang
disusun secara sistematis dan logis.
• Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan
masalah.
Pembuatan algoritma harus selalu dikaitkan dengan
9

• Kebenaran algoritma
• Kompleksitas (lama dan jumlah waktu proses dan
penggunaan memori)
Kriteria Algoritma yang baik 10

1. Tepat, benar, sederhana, sesuai standar


2. Logis, Terstruktur dan sistematis
Rangkaian proses yang berisi langkah-langkah dari suatu algoritma
yang akan diproses harus ditetapkan dengan pasti, tidak berbelit-
belit
3. Semua operasi terdefinisi
Batasan dari input dan output Input harus sesuai dengan jenis
algoritma yang bersangkutan dan harus menghasilkan output yang
pasti.
4. Semua proses harus berakhir setelah sejumlah langkah dilakukan
5. Efektivitas & efisien
Algoritma yang baik 11

• “Suatu algoritma harus menghasilkan output yang tepat


guna (efektif) dalam waktu yang relatif singkat dan
penggunaan memori yang relatif sedikit (efisien) dengan
langkah yang berhingga dan prosesnya berakhir baik
dalam keadaaan diperoleh suatu solusi ataupun tidak
adanya solusi”
Proses Penyelesaian Masalah 12
13

Proses Penyelesaian
Masalah
Teknik Pemecahan Masalah 14

1. Teknik Top-Down
2. Teknik Bottom-Up
Teknik Pemecahan Masalah 15
1. Teknik Top-Down
• Masalah yang kompleks dibagi-bagi ke dalam beberapa kelompok masalah
yang lebih kecil.
• Dari kelompok masalah yang kecil tersebut di analisis. Apabila
dimungkinkan maka masalah tersebut akan dipilah lagi menjadi sub
bagian dan setelah itu mulai disusun langkah-langkah untuk
menyelesaikan secara detail.
• Layer Aplikasi ke layer hardware

Contoh :
• Program aplikasi error karena harus update
• Program aplikasi error karena, kehilangan runtime-program
• Sistem operasi tidak berjalan normal, karena kehilangan file Registri
Teknik Pemecahan Masalah 16
2. Teknik Bottom-Up
• Pada teknik ini, bila ada masalah kompleks, maka pemecahan masalah
dilakukan dengan menggabungkan prosedur-prosedur yang ada menjadi
satu kesatuan program guna menyelesaikan masalah tersebut.
• Merupakan teknik pemecahan masalah yang mulai ditinggalkan, karena
sulit untuk melakukan standarisasi proses dari prosedur-prosedur yang
sudah terbentuk yang akan digabungkan.
• Layer Fisik hingga Layer Aplikasi, metode ini cocok untuk permasalahan
komputer yang berkaitan dengan hardware.

Contoh :
• Komputer tidak menyala saat tombol power ditekan
• Printer tidak menyala saat tombol power ditekan
• Hard Disk tidak menampilkan Booting saat Komputer dinyalakan
CONTOH Algoritma

Algoritma ketika ingin mengirimkan surat kepada teman,


yaitu :
1. Tulis surat pada secarik kertas surat
2. Ambil sampul surat
3. Masukkan surat ke dalam sampul
4. Tutup sampul surat menggunakan perekat
5. Tempel perangko pada surat
6. Bawa surat ke kantor pos untuk di kirimkan
CONTOH Algoritma

Contoh algoritma untuk menghitung luas lingkaran:


1. Masukan r (=jari-jari lingkaran)
2. Tentukan phi (=3.14)
3. L= Phi*r*r
4. Tulis L
Penyajian Algoritma 19

• Teknik tulisan
English Structure
Pseudocode

• Teknik Gambar
Metode structure chart,
Hierarchy plus input-process-output
Flowchart
Nassi Schneiderman chart
Penyajian Algoritma 20

English Structure:
• Menggunakan bahasa manusia (Inggris/Indonesia)
• Menggambarkan suatu algoritma yang akan
dikomunikasikan kepada pemakai sistem
Contoh :
• Hitung keliling persegi panjang dengan menggunaka
rumus 2 x (panjang + lebar)
Penyajian Algoritma 21

Pseudocode
• Pseudo= imitasi atau mirip / menyerupai
• Code=program
• Kode yang mirip dengan kode pemrograman yang sebenarnya
• Menggambarkan Algoritma yang akan dikomunikasikan kepada
programmer
• Lebih rinci dari English Structure (mis: dalam menyatakan tipe data
yang digunakan)

Contoh : keliling ← 2 x (panjang + lebar)


Penyajian Algoritma 22

Structure Chart (bagan terstruktur)


• Digunakan untuk mendefinisikan dan mengilustrasikan organisasi
dari system secara berjenjang
• Berbentuk modul dan submodul
• Menunjukkan hubungan elemen data dan elemen control serta
hubungan antar modul

Contoh : Flowchart
Aturan Penulisan Teks Algoritma 23

Setiap algoritma akan selalu terdiri dari :


• Judul (header)
• Deklarasi (kamus)
• Deskripsi Algoritma
Aturan Penulisan Teks Algoritma 24

JUDUL ALGORITMA  Algoritma NAMA ALGORITMA


• {Penjelasan tentang algoritma, berisi uraian singkat cara
kerja program, kondisi awal dan akhir dari program} 
spesifikasi algoritma
Aturan Penulisan Teks Algoritma 25

DEKLARASI
• Semua nama yang dipakai, meliputi nama file, nama variable,
nama konstanta, nama prosedur serta nama fungsi

DESKRIPSI
• Semua langkah/aksi algoritma
Contoh 26

• 1). Kepala algoritma: Algoritma Luas_Lingkaran


• { Menghitung luas lingkaran dengan ukuran jari-jari
tertentu .Algoritma menerima masukan jejari lingkaran,
menghitung luasnya, dan menyajikan hasilnya ke piranti
keluaran }
Contoh 27

2) Deklarasi algoritma:
• DEKLARASI { nama konstanta }
• const PHI = 3.14; { Nilai phi = 22/7 }
• { nama peubah } var R : real; { input jejari lingkaran bilangan riil }
l_Lingkaran : real; { luas lingkaran bilangan riil }
• { nama sub program } procedure TUKAR (input/output A:integer,
input/output B:integer)
• {Mempertukankan nilai A dan B.Parameter A dan B sudah terdefinisi
nilainya.Setelah pertukaran, A berisi nilai B dan B berisi nilai A }
Contoh 28

3) Deskripsi
• { Baca data jejari lingkaran R.Jika R <= 0 tulis pesan data
salah, selain itu hitung luas ingkaran. Tampilkan luas
lingkaran. }
baca(R);
jika R <= 0 then tulis ("Data salah !") selain itu
l_Lingkaran = PHI x R x R; tulis(l_Lingkaran); algoritma:
Bahasa Pemrograman 29

• Komputer mengerjakan transformasi data berdasarkan


kumpulan perintah - program yang telah dibuat oleh
pemrogram.
• Kumpulan perintah ini harus dimengerti oleh komputer,
berstruktur tertentu (syntax) dan bermakna.
• Bahasa pemrograman merupakan notasi untuk
memberikan secara tepat program komputer.
Generasi bahasa pemrograman 30

• Generasi I: machine language


• Generasi II: assembly language : Asssembler
• Generasi III: high-level programming language: C, PASCAL, dsb.
• Generasi IV: 4 GL (fourth-generation language): SQL
Jenis Bahasa Pemrograman 31
TERIMA KASIH 32

• Sekian

Anda mungkin juga menyukai