alpro 02 [teks algoritma] - ifa's | my lecturing weblog · s1 teknik informatika-unijoyo 3...

25
S1 Teknik Informatika-Unijoyo 1 Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Noor Ifada [email protected]

Upload: phamnga

Post on 05-May-2018

223 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 1

Algoritma Pemrograman

Pertemuan Ke-2(Teks Algoritma)Noor [email protected]

Page 2: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 2

Sub Pokok Bahasan

PendahuluanJudul AlgoritmaDeklarasiDeskripsiTranslasi Teks Algoritma ke dalam Teks Program Bahasa PascalTabel Translasi

Page 3: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 3

Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani keragaman dan kompleksitas bahasa sehingga dapat dilakukan “abstraksi”Teks ini lebih berorientasi kepada detail design dibandingkan coding (merupakan rancangan secara prosedural yang selanjutnya dengan mudah dapat ditranslasi menjadi salah satu program dalam bahasa tertentu)Contoh bahasa pemrograman yang digunakan adalah Bahasa Pascal. Jadi dalam pembahasan berikutnya, translasi teks Algoritma adalah ke dalam teks program Bahasa Pascal.

Pendahuluan

Page 4: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 4

Bagian-bagian (blok) dalam teks algoritma: JUDUL (header) algoritma DEKLARASI algoritma DESKRIPSI algoritma

Algoritma NAMA_ALGORITMA{ Penjelasan mengenai algoritma, yang berisi uraian singkat

mengenai apa yang dilakukan oleh algoritma }

DEKLARASI{ Semua nama yang dipakai, meliputi nama tipe, nama tetapan, nama

peubah, nama prosedur dan nama fungsi didefinisikan di sini }

DESKRIPSI :{ Semua langkah atau aksi algoritma dituliskan di sini }

Pendahuluan - contd

Keterangan: Pasangan tanda kurung kurawal (‘{‘ dan ‘}’) digunakan untuk memberikan komentar (untuk memperjelas maksud teks yang dituliskan).

Page 5: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 5

• Terdiri dari nama dan penjelasan (spesifikasi) algoritma.

• Nama yang digunakan sebaiknya singkat (namun cukup informatif).

• Biasanya di bawah nama diberi spesifikasi algoritma. Algoritma yang akan ditulis nantinya harus sesuai dengan spesifikasi yang didefinisikan.Algoritma LUAS_PERSEGI_PANJANG{ Menghitung luas persegi panjang dengan masukan ukuran

panjang dan ukuran lebar, lalu mencetak hasil luas persegi panjang ke piranti keluaran }

Judul Algoritma

Page 6: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 6

• Merupakan tempat untuk mendefinisikan berbagai macam nama, yaitu: nama tipe nama konstanta nama peubah (nama variabel) nama fungsi, sekaligus spesifikasinya nama prosedur, sekaligus spesifikasinya

• Semua nama tersebut baru dapat digunakan jika telah didefinisikan di dalam DEKLARASI. Penulisan sekumpulan nama dalam DEKLARASI sebaiknya dikelompokkan menurut jenis nama tersebut.

• Ketentuan-ketentuan dalam pendefinisian nama-nama: nama peubah belum terdefinisi harganya ketika didefinisikan. Pendefinisian konstanta sekaligus juga memberikan harganya. Pendefinisian nama fungsi sekaligus juga dengan domain dan

range serta spesifikasinya. Pendefinisian nama prosedur sekaligus juga dengan pendefinisian

parameter (jika ada) dan spesifikasi prosedur (kondisi awal, kondisi akhir dan proses yang dilakukan).

Deklarasi

Page 7: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 7

DEKLARASI{ Nama tipe, hanya untuk tipe yang bukan tipe dasar }type Titik : <X:real,Y:real> { koordinat pada sumbu kartesian }

{ Nama konstanta, harus menyebutkan nilai }const phi = 3.14

{ Nama peubah (variabel), menyebutkan tipe }P : Titik { Titik dalam derajat kartesian }jmlh : integer { Jumlah suatu elemen }ketemu : boolean { Keadaan hasil pencarian }

{ Spesifikasi Fungsi, menyebutkan nama fungsi, domain dan range }function Konversi_Real_Ke_Integer(input i:real)→integer{ Mengkonversi harga i yang bertipe real menjadi harga ekivalen yang

bertipe integer }

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

procedure Tukar(input/output A:integer, input/output B:integer){ Kondisi awal : A dan B terdefinisi, A=a dan B=b }{ Kondisi akhir : A=b dan B=a }{ Proses : Mempertukarkan nilai A dan B }

Deklarasi - contd

Page 8: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 8

• Merupakan bagian inti dari algoritma. • Komponen di dalam teks algoritma dapat berupa:

– Instruksi dasar seperti input/output, assignment– Urutan (sequence)– Pemilihan– Pengulangan

DESKRIPSI:read(a)b←a mod 2if b = 0 then

write(‘bilangan genap’)elsewrite(‘bilangan ganjil’)

endif

Deskripsi

Page 9: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 9

Struktur program Pascal juga terdiri dari tiga bagian:• Judul Program sifatnya opsional dan tidak signifikan. Dapat

digunakan untuk memberi nama program dan sifatnya sebagai dokumentasi saja. Judul program dituliskan pada awal program dan diakhiri dengan titik koma (‘;’).

• Bagian Deklarasi digunakan bila di dalam program menggunakan pengenal (identifier). Identifier dapat berupa label, konstanta, tipe, peubah, prosedur dan fungsi. Jika suatu program menggunakan identifier, Bahasa Pascal menuntut supaya identifier tersebut dikenalkan/dideklarasikan terlebih dahulu sebelum digunakan.

• Bagian Deskripsi menunjukkan suatu tindakan yang dikerjakan oleh program. Tindakan yang dilakukan oleh program tergantung pada instruksi-instruksi yang diberikan. Instruksi-instruksi yang akan diberikan untuk dikerjakan ditulis di antara kata cadangan Begin dan End. Akhir penulisan dari End diakhiri dengan tanda baca titik (‘.’). Setiap instruksi per barisnya diakhiri dengan tanda baca titik koma (‘;’).

Translasi Teks Algoritma ke dalam Teks Program Bahasa Pascal

Page 10: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 10

Algoritma NAMA_ALGORITMA{Penjelasan mengenai

algoritma, yang berisi uraian singkat mengenai apa yang dilakukan oleh algoritma}

DEKLARASI{Semua nama yang dipakai,

meliputi nama tipe, nama tetapan, nama peubah, nama prosedur dan nama fungsi didefinisikan di sini}

DESKRIPSI :{Semua langkah atau aksi

algoritma dituliskan di sini}

program NAMA_PROGRAM;{Penjelasan mengenai program, yang berisi

uraian singkat mengenai apa yang dilakukan oleh program}

(* DEKLARASI *)[const]{semua nama tetapan dan harga tetapannya

didefinisikan di sini}[type]{semua nama tipe bentukan didefinisikan di

sini}[var]{semua nama peubah global didefinisikan di

sini}{deklarasi prosedur dan fungsi didefinisikan

di sini}(* DESKRIPSI *)begin{semua instruksi program dituliskan di sini}end.

ALGORITMA PASCAL

Translasi… - contd

Page 11: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 11

• Contoh translasi dari teks algoritma ke teks bahasa pemrograman Pascal untuk mendapatkan hasil sebagai berikut:

012345

• Untuk mendapatkan hasil seperti di atas, pada bagian Deskripsi digunakan instruksi dengan struktur pengulangan While-Do

Translasi… - contd

Page 12: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 12

Algoritma PENAMBAHAN_SATU{ Menampilkan penambahan satu dari

suatu bilangan bulat, dimulai dari 0 sampai dengan 5 }

DEKLARASII : integer { peubah data bilangan

bulat }DESKRIPSI:I ← 0while I ≤ 5 do

write(I)I←I + 1

endwhile{ I > 5 }

program PENAMBAHAN_SATU;{ Menampilkan penambahan satu dari

suatu bilangan bulat, dimulai dari 0 sampai dengan 5 }

(* DEKLARASI *)[var]I : integer { peubah data bilangan

bulat }(* DESKRIPSI *)begin I := 0; while I <= 5 do begin writeln(I); I := I + 1; end;end.

ALGORITMA PASCAL

Translasi… - contd

Page 13: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 13

Beberapa hal penting tentang bahasa Pascal:• Bahasa Pascal tidak membedakan nama yang ditulis dalam

huruf besar ataupun huruf kecil (tidak bersifat case sensitive). Misal: I sama saja dengan i penambahan_satu sama saja dengan PENAMBAHAN_SATU

• Komentar ditulis di antara tanda “{“ dan “}” atau di antara “(*” dan “*)”

• Program Pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh dituliskan mulai kolom ke berapapun. Penulisan instruksi-instruksi yang menjorok masuk beberapa kolom tidak memiliki pengaruh apapun di dalam proses. Hal ini hanya dimaksudkan untuk mempermudah pembacaan atau dokumentasi program, sehingga akan lebih terlihat bagian-bagiannya.

Translasi - contd

Page 14: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 14

• Notasi Algoritma ke dalam Notasi Bahasa Pascal• Notasi Algoritma Pengisian Nilai, Pembacaan dan

Penulisan ke dalam Notasi Bahasa Pascal• Notasi Algoritma Struktur Penyeleksian ke dalam

Notasi Bahasa Pascal• Notasi Algoritma Struktur Pengulangan ke dalam

Notasi Bahasa Pascal• Notasi Algoritma Prosedur ke dalam Notasi Bahasa

Pascal• Notasi Algoritma Fungsi ke dalam Notasi Bahasa

Pascal

Tabel Translasi

Page 15: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 15

Notasi Algoritma ke dalam Notasi Bahasa Pascal [1]

recordfield1: type;field2: type; . . .fieldN: type;end;

record<field1: type,field2: type, . . .fieldN: type>

StringString[n]

string

Charchar

realdoubleextended

real

1 byte1 byte2 byte2 byte4 byte

byteshortintwordintegerlongint

integer

booleanboolean1. Tipe Dasar

Ket.PascalAlgoritmikKelompok

Page 16: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 16

Ket.PascalAlgoritmikKelompok

consttypetruefalse

consttypetruefalse

4. Lain-lain

{ komentar }(* komentar *)

{ komentar }3. Komentar

notandorxor

notandorxor

c. Logika

<<=>>==<>

<≤>≥=≠

b. Perbandingan

+−*/divmod

+−*/divmod

a. Aritmatika

2. Operator

Notasi Algoritma ke dalam Notasi Bahasa Pascal [2]

Page 17: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 17

Notasi Algoritma Pengisian Nilai, Pembacaan dan Penulisan ke dalam Notasi Bahasa Pascal

writewriteln

write3. Penulisan

readreadln

read2. Pembacaan

:=←1. Penugasan

PascalAlgoritmikKelompok

Menulis keluaran ke layar, lalu kursor pindah ke baris berikutnya:writeln

Menulis keluaran ke layar, kursor tetap di baris yang sama:write

Membaca masukan dari keyboard, lalu kursor pindah ke baris berikutnya:readln

Membaca masukan dari keyboard, kursor tetap di baris yang sama:read

Page 18: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 18

Notasi Algoritma Struktur Pemilihan ke dalam Notasi Bahasa Pascal

Cara 1:case nama of nilai1 : aksi1; nilai2 : aksi1; . . nilaiN : aksiN;[else aksiX]end;Cara 2:if kond1 then aksi1elseif kond2 then aksi2else ...

case nama <kond1> : aksi1 <kond1> : aksi1 . . <kondN> : aksiN[otherwise aksiX]endcase

3. CASE

if <kondisi> then aksi1else aksi2;(*endif*)

if <kondisi> thenaksi1

elseaksi2

endif

2. IF-THEN-ELSE

if <kondisi> thenbegin aksi1; aksi2; . . aksiNend; (*if*)

if <kondisi> thenaksi

endif

1. IF-THEN

PascalAlgoritmikStruktur

Page 19: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 19

Notasi Algoritma Struktur Pengulangan ke dalam Notasi Bahasa Pascal

repeat aksi;until kondisi;

repeataksi

until kondisi

3. REPEAT

while kondisi dobegin aksi1; aksi2; . .

aksiN;end; (*while*)

while kondisi doaksi

endwhile

2. WHILE

For menurun:for pencacah:=b dowmto a dobegin aksi1; aksi2; . .

aksiN;end; (*for*)

For menurun:for pencacah←b downto a do

aksiendfor

For menaik:for pencacah:=a to b dobegin aksi1; aksi2; . .

aksiN;end; (*for*)

For menaik:for pencacah←a to b do

aksiendfor

1. FOR

PascalAlgoritmikStruktur

Page 20: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 20

• Prosedur Tanpa Parameter • Prosedur dengan Parameter Masukan • Prosedur dengan Parameter Keluaran • Prosedur dengan Parameter

Masukan/Keluaran

Notasi Algoritma Prosedur ke dalam Notasi Bahasa Pascal

Page 21: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 21

Prosedur Tanpa Parameter

procedure NAMA_PROSEDUR{ Spesifikasi Prosedur,

menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

DEKLARASI{ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

DESKRIPSI :{ badan prosedur, berisi semua

langkah atau aksi algoritma }

procedure NAMA_PROSEDUR;{ Spesifikasi Prosedur, menyebutkan

nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

(* DEKLARASI *){ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

(* DESKRIPSI *)begin{ badan prosedur, berisi semua

langkah atau aksi }end;

Cara memanggil prosedur:NAMA_PROSEDUR;

ALGORITMA PASCAL

Page 22: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 22

Prosedur dengan Parameter Masukan

procedure NAMA_PROSEDUR (input parameter : tipe_param)

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

DEKLARASI{ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

DESKRIPSI :{ badan prosedur, berisi semua

langkah atau aksi algoritma }

procedure NAMA_PROSEDUR(parameter : tipe_param);

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

(* DEKLARASI *){ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

(* DESKRIPSI *)begin{ badan prosedur, berisi semua

langkah atau aksi }end;

Cara memanggil prosedur:NAMA_PROSEDUR(parameter_aktual);

ALGORITMA PASCAL

Page 23: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 23

Prosedur dengan Parameter Keluaran

procedure NAMA_PROSEDUR (output parameter : tipe_param)

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

DEKLARASI{ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

DESKRIPSI :{ badan prosedur, berisi semua

langkah atau aksi algoritma }

procedure NAMA_PROSEDUR(var parameter : tipe_param);

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

(* DEKLARASI *){ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

(* DESKRIPSI *)begin{ badan prosedur, berisi semua

langkah atau aksi }end;Cara memanggil prosedur:

NAMA_PROSEDUR(parameter_aktual);

ALGORITMA PASCAL

Page 24: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 24

Prosedur dengan Parameter Masukan/Keluaran

procedure NAMA_PROSEDUR (input/output parameter : tipe_param)

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

DEKLARASI{ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

DESKRIPSI :{ badan prosedur, berisi semua

langkah atau aksi algoritma }

procedure NAMA_PROSEDUR(var parameter : tipe_param);

{ Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses }

{ Kondisi awal : keadaan sebelum prosedur dilaksanakan }

{ Kondisi akhir : keadaan setelah prosedur dilaksanakan }

(* DEKLARASI *){ Semua nama yang dipakai prosedur

didefinisikan di sini dan hanya berlaku lokal }

(* DESKRIPSI *)begin{ badan prosedur, berisi semua

langkah atau aksi }end;

Cara memanggil prosedur:NAMA_PROSEDUR(parameter_aktual);

ALGORITMA PASCAL

Page 25: Alpro 02 [Teks Algoritma] - Ifa's | My lecturing weblog · S1 Teknik Informatika-Unijoyo 3 Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani

S1 Teknik Informatika-Unijoyo 25

Notasi Algoritma Fungsi ke dalam Notasi Bahasa Pascal

function NAMA_FUNGSI (input daftar parameter formal)→tipe_hasil

{ Spesifikasi Fungsi, menjelaskan apa yang dilakukan dan dikembalikan oleh fungsi }

DEKLARASI{ Semua nama yang dipakai fungsi

didefinisikan di sini dan hanya berlaku lokal }

DESKRIPSI :{ badan fungsi, berisi semua langkah

atau aksi algoritma untuk menghasilkan nilai yang akan dikembalikan }

return hasil { pengembalian nilai yang dihasilkan fungsi }

function NAMA_FUNGSI(daftar parameter formal) : tipe_hasil;

{ Spesifikasi Fungsi, menjelaskan apa yang dilakukan dan dikembalikan oleh fungsi }

(* DEKLARASI *){ Semua nama yang dipakai fungsi

didefinisikan di sini dan hanya berlaku lokal }

(* DESKRIPSI *)begin{ badan fungsi, berisi semua langkah

atau aksi algoritma untuk menghasilkan nilai yang akan dikembalikan }

NAMA_FUNGSI:=hasil; { pengembalian nilai yang dihasilkan fungsi }

end;

ALGORITMA PASCAL