ALGORITMA PSEUDOCODE

Download Report

Transcript ALGORITMA PSEUDOCODE

Pertemuan Ke-2
Presentation by
Meilia Nur Indah Susanti,
ST.,MKom
 Pseu
: menyerupai, code : kode
 Merupakan kode yang menyerupai kode
program yang sesungguhnya
 Tidak ada aturan standar penulisan
pseudocode
 Ditujukan untuk dibaca manusia, bukan
dibaca mesin(komputer)
Pseudo Code adalah urutan baris
algoritma seperti kode pemrograman
dan tidak memiliki sintak yang baku.
 Pseudo Code lebih umum digunakan
oleh programmer yang berpengalaman.
 Akan tetapi, flowchart lebih mudah
dimengerti oleh programmer pemula.
 Pseudo code sangat mudah
diimplementasikan ke dalam kode
program dibandingkan dengan
flowchart.

 Kita
bisa bebas menulis pseudo code
selama itu mudah dimengerti bagi orang
lain.
 Tetapi disarankan untuk menggunakan
keyword yang umum digunakan seperti :
if, then, else, while, do, repeat, for, dan
lainnya.
 Perhatikan kode dibawah ini :
•
•
•
Masukkan sebuah angka
Masukkan sebuah angka dan tampilkan
Ambil angka yang sebelumnya dan
tampilkan
 Walaupun
pseudo code diatas masih bisa
dimengerti tetapi ada beberapa statemen yang
ambigu.
 Dari baris kedua, kita tidak tahu kemana
angka tersebut disimpan dan kita juga tidak
tahu angka yang mana yang dimaksud untuk
“angka yang sebelumnya”. Apakah angka yang
pertama atau yang kedua.
 Pseudo Code diatas dapat dimodifikasi
menjadi seperti berikut :
1.
2.
3.
4.
Input A
Input B
Write B
Write A
 Pseudo
Code diatas lebih baik
dibandingkan sebelumnya.
 Kita bisa dengan jelas melihat dimana
angka disimpan dan angka yang mana
yang ditampilkan.
KONSEP PSEUDOCODE
1. PSEUDOCODE VARIABEL PE-UBAH
Adalah Variabel yang nilainya BUKAN konstanta (selalu
berubah – sesuai dengan kondisi Variabel terKINI)
Sintaks
:
P=Q
Algoritma :
PQ
Arti
:
Bahwa Nilai P diberi harga Nilai Q
Nilai P akan SAMA DENGAN nilai Q, & Nilai Q TETAP
2. PSEUDOCODE PERTUKARAN
Berfungsi mempertukarkan masing-masing isi Variabel
sedemikian sehingga Nilai dari tiap Variabel akan
berubah/bertukar
Proses Pertukaran Nilai A dan Nilai B
9
A
6
C
B
9
6
A
C
B
6
9
A
C
6
A
A B
B
9
C
C A
B
BC
ATURAN PENULISAN TEKS
ALGORITMA / PSEUDOCODE
1. KEPALA ALGORITMA
Kepala algoritma adalah bagian yang terdiri atas nama
algoritma dan penjelasan (spesifikasi) tentang algoritma
tersebut.
2. DEKLARASI
bagian untuk mendefinisikan semua nama yang dipakai
didalam algoritma.
3. DESKRIPSI
Bagian ini berisi uraian langkah-langkah penyelesaian
masalah.
TAHAPAN ANALISA ALGORITMA
1. Bagaimana merencanakan suatu algoritma.
2. Bagaimana menyatakan suatu algoritma
Dengan bahasa semu (pseudocode),
Contoh :
Hitung konversi jam
Deklarasi
jam, mnt, dtk, jum_dtk;
Deskripsi
1. input jam, mnt, dtk
2. Jum_dtk  (jam * 3600) + (mnt * 60) + dtk
3. Cetak jum_dtk
Dengan diagram alur atau flowchart,
Contoh :
start
input
Jam,mnt,dtk
Jum_dtk =(jam * 3600) +(mnt*
60) + detik
write
jum_dtk
end
Dengan Statement program / penggalan Program
scanf ( “%d %d %d”,&jam, &mnt, &dtk);
Jum_dtk := (jam* 3600) +(mnt * 60) + dtk
Printf (“%d”, jum_dtk)
3.
Bagaimana validitas suatu algoritma.
4.
Bagaimana Menganalisa suatu Algoritma.
5.
Bagaimana Menguji Program dari suatu Algoritma.
Tahap Proses uji Program :
1.
Fase Debugging,
2.
Fase Running,
Analisis Suatu Algoritma
(Untuk melihat faktor efesiensi & efektifitas dari algoritma
tersebut), Dapat dilakukan terhadap suatu algoritma dengan
melihat pada :

Waktu Tempuh (Running Time) dr suatu Algortima.
Hal2 yg dpt mempengaruhi drpd waktu tempuh adalah :
1. Banyaknya langkah.
2. Besar dan jenis input data.
3. Jenis Operasi.
4. Komputer dan kompilator

Jumlah Memori Yang Digunakan.
Sifat - Sifat Algoritma
Banyaknya Langkah Instruksi Harus
Berhingga,
 Langkah atau Instruksi harus Jelas,
 Proses harus Jelas dan mempunyai
batasan,
 Input dan Output harus mempunyai
Batasan,
 Efektifitas,
 Adanya Batasan Ruang Lingkup,

STRUKTUR DASAR ALGORITMA
1. Runtunan (sequence)
Sebuah runtunan terdiri dari satu atau lebih instruksi , yang
berarti bahwa :
• Tiap instruksi dikerjakan satu per satu
• Tiap instruksi dilaksanakan tepat sekali
• Urutan instruksi yang dilaksanakan pemroses sama dengan
urutan aksi
• Akhir dari instruksi terakhir merupakan akhir algoritma
Runtunan 1
Runtunan 2
1. A  10
1. A  10
2. A  2 * A
2. B  A
3. B  A
3. A  2 * A
4. Output B
4. Output B
2.
Pemilihan (selection)
Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu
dipenuhi.
Menganalisis kasus dalam algoritma artinya mendefinisiakan :
• Kondisi, yaitu yang bernilai benar atau salah
• Aksi yang akan dilaksanakan jika kondisi yang sesuai dengan aksi
tersebut bernilai benar
Contoh : (satu kasus)
Contoh : dua kasus
1. input a, b
1. input a, b
2. if (a < b) then
2. if (a < b) then write a
write a
else write b
Contoh banyak kasus
Indeks nilai mahasiswa ditentukan berdasarkan nilai ujian yang
diraihnya (nilai ujian diinput). Ketentuan sebagai berikut :
nilai ujian  80
: grade A
70  nilai ujian < 80
: grade B
55  nilai ujian < 70
: grade C
40  nilai ujian < 55
: grade D
nilai ujian < 40
: grade E
Cetak grade nilai tersebut
Hitung Grade Nilai
Deklarasi
nilai, grade
Deskripsi
1.
input nilai
2.
if nilai  80 then write grade A, else
3.
if (nilai  70) and (nilai < 80) then write grade B, else
4.
if (nilai  55) and (nilai < 70) then write grade C, else
5.
if (nilai  40) and (nilai < 55) then write grade D, else
6.
Write Grade E
3. Pengulangan (repetition)
Struktur pengulangan terdiri dari dua bagian :
a. Kondisi pengulangan
b. Badan (body) pengulangan
Pengulangan biasanya disertai dengan bagian :
a. Inisialisasi
b. Terminasi
Mencetak kata halo sebanyak 10 kali
1.
2.
3.
4.
k1
while (k  10) do baris 3 dan 4
Write ( halo)
kk+1
1. For k = 1 to 10 do
2. Write (halo)
3. Next k
1. k  1
2. do baris 3 dan baris 4 while (k  10)
3. write halo
4. k  k + 1