MODUL
ALGORITMA DAN PEMROGRAMAN
ATURAN
DASAR PENULISAN ALGORITMA
DI SUSUN
OLEH :
1.
VARINDYA DITTA ISWARI (461141409)
2.
FEROZA ROSALINA DEVI (4611414024)
3.
AFRIZAL RIZKI PRANATA (4611414038)
PRODI TEKNIK INFORMATIKA
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS NEGERI SEMARANG
TAHUN PELAJARAN 2014/2015
Notasi dan Aturan Penulisan
Algoritma
A. Notasi Algoritma
Seperti yang telah dibahas sebelumnya, bahwa algoritma adalah rangkaian langkah-langkah untuk memecahkan suatu masalah. Algoritma dituliskan dalam sebuah notasi yang disebut Notasi Algoritma. Notasi algoritma merupakan hal dasar yang harus diketahui oleh setiap orang yang ingin membuat suatu pogram, karena dalam notasi algoritma inilah terdapat kerangka-kerangka suatu program. Ciri notasi algoritma yang baik yaitu dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Hal yang penting mengenai notasi tersebut adalah mudah dibaca dan dimengerti. Meskipun demikian untuk menghindari kekeliriuan, ketaatan terhadap notasi perlu diperhatikan.
Di bawah ini ada 3 notasi yang digunakan dalam penulisan algoritma,yaitu :
1.Kalimat Deskriptif
2.Diagram Alir (Flowchart)
3.Pseudo-Code
1. Kalimat Deskriptif
Dengan notasi kalimat deskriptif ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas/gamblang. Notasi ini bagus untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efisien. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman relatif sulit.
contoh algoritma dengan kalimat deskriptif.
Algoritma menghitung luas persegi panjang:
luas persegi panjang = panjang*lebar.
1.mulai.
2.baca panjang
3.baca lebar
4.hitung luas = panjang*lebar
5.cetak luas
6.selesai.
2. Diagram Alur (Flowchart)
Dengan diagram alir, deskripsi setiap langkah dijelaskan dalam sebuah bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dalam suatu program. Notasi diagram alur lebih cocok digunakan untuk masalah yang kecil, untuk masalah yang besar tidak cocok digunakan karena membutuhkan berlembar halaman kertas. Selain itu, pengkonversian notasi algoritma ke bahasa pemrograman cenderung relatif sulit.
Seperti yang telah dibahas sebelumnya, bahwa algoritma adalah rangkaian langkah-langkah untuk memecahkan suatu masalah. Algoritma dituliskan dalam sebuah notasi yang disebut Notasi Algoritma. Notasi algoritma merupakan hal dasar yang harus diketahui oleh setiap orang yang ingin membuat suatu pogram, karena dalam notasi algoritma inilah terdapat kerangka-kerangka suatu program. Ciri notasi algoritma yang baik yaitu dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Hal yang penting mengenai notasi tersebut adalah mudah dibaca dan dimengerti. Meskipun demikian untuk menghindari kekeliriuan, ketaatan terhadap notasi perlu diperhatikan.
Di bawah ini ada 3 notasi yang digunakan dalam penulisan algoritma,yaitu :
1.Kalimat Deskriptif
2.Diagram Alir (Flowchart)
3.Pseudo-Code
1. Kalimat Deskriptif
Dengan notasi kalimat deskriptif ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas/gamblang. Notasi ini bagus untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efisien. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman relatif sulit.
contoh algoritma dengan kalimat deskriptif.
Algoritma menghitung luas persegi panjang:
luas persegi panjang = panjang*lebar.
1.mulai.
2.baca panjang
3.baca lebar
4.hitung luas = panjang*lebar
5.cetak luas
6.selesai.
2. Diagram Alur (Flowchart)
Dengan diagram alir, deskripsi setiap langkah dijelaskan dalam sebuah bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dalam suatu program. Notasi diagram alur lebih cocok digunakan untuk masalah yang kecil, untuk masalah yang besar tidak cocok digunakan karena membutuhkan berlembar halaman kertas. Selain itu, pengkonversian notasi algoritma ke bahasa pemrograman cenderung relatif sulit.
contoh algoritma dengan diagram alur.
Algoritma menghitung luas persegi panjang:
Tentukan luas persegi panjang. P= panjang, L=lebar, Luas=P*L.
3. Pseudo-code
Dengan notasi pseudocode, deskripsi setiap langkah dijelaskan dengan menggunakan vacabulary (baku) atau dalam arti lain seperti ini pseudocode merupakan deskripsi tingkat tinggi informal dan ringkas atas algoritma pemrograman komputer yang menggunakan konvensi struktural atas suatu bahasa pemrograman, dan ditujukan untuk dibaca oleh manusia dan bukan oleh mesin. Notasi pseudocode adalah yang paling umum di gunakan dalam penulisan algoritma karena pengkonversian ke bahasa pemograman relatif mudah.
Notasi pseudo-code terdiri dari :
• Head(Judul) : memberikan nama pada algoritma; umumnya nama sudah dapat memberi gambaran pada prosedur penyelesaian masalah atau masalah yang akan diselesaikan
• Deklarasi : menyatakan jenis dari setiap elemen data (variabel) yang akan digunakan dalam algoritma.
• Deskripsi : merupakan inti prosedur penyelesaian masalah; meliputi pernyataan/operasi, fungsi, penjelasan, dll.
contoh algoritma dengan pseudocode:
ALGORITMA HITUNG LUAS
menghitung luas persegi panjang.
DEKLARASI:
P=panjang
L=lebar
Luas=P*L
DESKRIPSI:
read (P,L)
while (Luas=P*L)
endwhile
write (Luas)
Kita bisa bebas menulis pseudocode
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.
B.
ATURAN PENULISAN ALGORITMA
1. Teks Algoritma
Teks algoritma berisi deskripsi
langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam
notasi apa pun, asalkan mudah dibaca dan mengerti. Tidak ada notasi yang baku
dalam penulisan teks algoritma sebagaimana pada notasi bahasa pemrograman. Tiap
orang dapat membuat aturan penulisan dan notasi algoritma sendiri. Hal ini
dapat dimengerti karena teks algoritma tidak sama dengan teks program. Program
adalah implementasi algoritma dalam notasi bahasa pemrograman tertentu. Namun,
agar notasi algoritma mudah ditranslasi ke dalam notasi bahasa pemrograman, maka sebaiknya notasi
algoritma tersebut berkoresponden dengan notasi bahasa pemrograman secara umum.
Sebagai contoh, perintah:
tulis nilai X dan Y
dalam notasi algoritma menjadi:
write(X, Y)
dalam notasi algoritma menjadi:
write(X, Y)
Notasi
write ini berarti nilai X dicetak ke peranti keluaran. Tidak penting apakah X
dan Y ditulis ke layar atau ke printer atau ke piranti keluaran yang lain.
Selain itu, di dalam algoritma tidak mempersoalkan format tampilan keluaran,
misalnya apakah hasil penulisan antara X dan Y dipisah dengan spasi atau dengan
koma, juga apakah X dan Y dicetak di dalam baris yang sama atau tidak, dan
lain-lain.
Hal-hal
teknis baru dipikirkan pada saat translasi algoritma menjadi program. Dengan
demikian, notasi algoritma benar-benar abstraksi dari notasi bahasa
pemrograman. Notasi “write” di dalam algoritma berkoresponden dengan write atau
writeln dalam bahasa Pascal, printf dalam bahasa C, WRITE dalam bahasa Basic,
atau write dalam bahasa Fortran. Selain itu, pada beberapa bahasa pemrograman
seperti Pascal dan C, antara setiap instruksi dipisahkan dengan tanda “;” (semicolon). Jadi,
translasi write(X) ke dalam masing-masing
bahasa tersebut adalah dengan anggapan piranti keluarannya adalah layar.
write(X, Y);
{ dalam bahasa PASCAL }
printf(“%d %d”, X,Y); /* dalam bahasa C */
WRITE X, Y ‘ dalam bahasa BASIC
Perhatikanlah
bahwa setiap bahasa mempunyai aturan sendiri dalam menggunakan perintah penulisan.
Bahasa C misalnya mengharuskan penulisan penentu format seperti “%d” yang berarti
nilai X dan Y yang akan dicetak bertipe bilangan bulat. Selain itu, setiap
instruksi pada bahasa Pascal dan C ditutup dengan tanda titik koma (;).
2. Susunan Teks
Algoritma
Susunan teks Algoritma terdiri
dari :
1.
Kepala Algoritma
2.
Deklarasi
3.
Deskripsi
1. Kepala Algoritma
Merupakan
bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang
algoritma tersebut. Nama algoritma sebaiknya singkat namun cukup menggambarkan
apa yang dilakukan oleh algoritma tersebut. Di bawah nama algoritma disertai dengan
penjelasan
singkat (intisari) tentang apa yang dilakukan oleh algoritma. Penjelasan dibawah
nama algoritma sering dinamakan juga spesifikasi algoritma. Algoritma harus
ditulis sesuai dengan spesifikasi yang didefinisikan.
Bahasa Algoritma : Algoritma
judul_program
a. Ex. Algoritma Pencari_Jarak
b. Ex. Algoritma PencariJarak
Contoh :
Algoritma PENCARI_JARAK
{Mencari jarak tempuh suatu
benda dengan masukkan Waktu dan kecepatannya}
Catatan :
Dalam menuliskan nama
algoritma dalam huruf besar dan menggunakan tanda “_” (underscore) untuk
memisahkan antar kata. Huruf besar dan tanda “_” bukan keharusan. Sebaiknya
tidak menggunakan spasi (“ “) untuk memisahkan antar kata di dalam nama
algoritma. Ini ada manfaatnya, terutama untuk judul program dalam bahasa
Pascal.
2. Deklarasi
Merupakan
bagian untuk mendefinisikan semua nama yang dipakai di dalam algoritma. Nama
tersebut dapat berupa nama tetapan, nama peubah, nama tipe, nama prosedur, dan
nama fungsi.
Merupakan bagian inti dari
suatu algoritma. Bagian ini berisi urutan langkah-langkah penyelesaian masalah.
Setiap langkah algoritma dibaca dari “atas” ke “bawah”. Urutan penulisan
menentukan urutan pelaksanaan perintah.
Komponen di dalam teks
algoritma dapat berupa: Instruksi dasar seperti input/output, assignment,
Urutan (sequence), Pemilihan, Pengulangan
Bahasa Algoritma :
nama_variabel : Tipe Data
a. Ex. Kecepatan : integer
b. Ex. Waktu : integer
Ketentuan-ketentuan dalam
pendefinisian nama-nama:
1. Nama peubah belum
terdefinisi harganya ketika didefinisikan.
2. Pendefinisian konstanta
sekaligus juga memberikan harganya.
3. Pendefinisian nama fungsi
sekaligus juga dengan domain dan range serta spesifikasinya.
4. Pendefinisian nama prosedur
sekaligus juga dengan pendefinisian parameter (jika ada) dan spesifikasi
prosedur (kondisi awal, kondisi akhir dan proses yang dilakukan).
DEKLARASI
{ Nama tipe, hanya untuk
tipe yang bukan tipe dasar }
Type linteger = array[1..100]
of integer
{ Nama konstanta, harus menyebutkan nilai }
const phi = 3.14
{ Nama peubah (variabel),
menyebutkan tipe }
P : Linteger
Jarak : Integer
ketemu : boolean { Keadaan
hasil pencarian }
{ Spesifikasi Fungsi,
menyebutkan nama fungsi, domain dan range }
Function PANGKATKAN(input a :
real,input n : integer) ß real
{mengembalikan harga
perpangkatan an, n bilangan bulat positif}
{ Spesifikasi Prosedur,
menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }
procedure bacagambar(var a
:linteger;n:integer)
{Kondisi Awal : a :linteger
dan n : integer}
{Kondisi Akhir : Gambar
bintang terinput}
{Proses : Untuk mengisi
bintang}
3. Deskripsi
Contoh :
Deskripsi
Read(kecepatan)
Read(waktu)
Jarak ß kecepatan*waktu
Write(‘Jarak tempuh : ‘ , Jarak)
Contoh Algoritma :
Algoritma PENCARI_JARAK
{Mencari jarak tempuh suatu
benda dengan masukkan Waktu dan kecepatannya}
Deklarasi
Jarak : Integer
Kecepatan : Integer
Waktu : Integer
Deskripsi
Read(kecepatan)
Read(waktu)
Jarak ß kecepatan*waktu
Write(‘Jarak tempuh : ‘ , Jarak)
Tidak ada komentar:
Posting Komentar