• Tidak ada hasil yang ditemukan

Kasus Penerapan Algoritma pada Turbo Pas

N/A
N/A
Protected

Academic year: 2018

Membagikan "Kasus Penerapan Algoritma pada Turbo Pas"

Copied!
45
0
0

Teks penuh

(1)

Mata Kuliah: Logika Informatika dan Algoritma

Nama Mahasiswa : Zaenal Abidin

NIM

: 131510031

Kode Kelas

: 131-IS01T-M1

Dosen

: M. Rasid Ridho S.Kom., M.SI.

UNIVERSITAS PUTERA BATAM

2014

(2)

sistematis dan logis. Suatu algoritma dapat dibuktikan kebenarannya melalui komputer setelah algoritma tersebut ditranslasikan kedalam bahasa pemrograman. Bahasa pemrograman yang digunakan dimakalah ini menggunakan Turbo Pascal 1.5 yang berjalan di system operasi windows.

Makalah ini membahas secara ringkas tentang algoritma dan pascal sebagai dasar bagi pemula yang mempelajari pemrograman komputer.

Akhir kata, penulis mengucapkan puji syukur Alhamdulillah makalah ini bisa diselesaikan dengan baik, walaupun masih banyak kekurangan disana-sini yang masih diperlukan perbaikan. Oleh karena itu penulis menerima masukan dari dosen pengajar mata kuliah algoritma maupun dari teman-teman mahasiswa yang membeca makalah ini. Mudah-mudahan makalah ini dapat bermanfaat bagi penulis sendiri maupun bagi yang membacanya.

Wassalam

Batam, Januari,2014

Penulis

(3)

BAB I... 1

PENDAHULUAN...1

BAB II... 3

PEMBAHASAN...3

II.1. PENGERTIAN LOGIKA DAN ALGORITMA...3

II.2. BAHASA PASCAL...6

BAB III... 14

STRUKTUR PROGRAM...14

III.1. PEMILIHAN...14

III.2. PROSEDUR...23

III. 3. LARIK...29

III. 4. PENCARIAN...31

III.5. REKURSIF...35

BAB IV... 39

KESIMPULAN...39

DAFTAR PUSTAKA...40

(4)

I.1. Pengertian Bahasa pemrograman

Bahasa pemrograman adalah bahasa formal yang dirancang untuk mengkomunikasiakan instruksi dengan sebuah mesin, terutama komputer. Bahasa pemrograman dapat digunakan untuk membuat program yang dapat mengendalikan perilaku mesin dan untuk mengekspresikan algoritma secara tepat.

Bahasa pemrograman mendahului menemuan komputer, dan digunakan untuk mengarahkan perilaku mesin seperti halnya mesin tenun dan pemutar piano. Ribuan bahasa pemrograman yang berbeda telah dibuat, terutama dibidang komputer. Banyak bahasa pemrograman membutuhkan perhitungan yang akan ditentukan dalam bentuk imperatif (yaitu sebagai urutan operasi dalam melaksanakan perintah), sedangkan bahasa yang lain menggunakan bentuk lain dari spesifikasi program sebagai bentuk deklaratif (yaitu menentukan hasil yang diinginkan , bukan bagaimana cara mencapainya).

Pemrograman dalam pengertian luas meliputi seluruh kegiatan yang tercakup dalam pembuatan program, termasuk analisis kebutuhan (requirement's analysis) dan keseluruhan tahapan dalam perencanaan (planning), perancangan (design) dan pewujudannya (implementation).

Dalam pengertian yang lebih sempit, pemrograman merupakan pengkodean (coding atau program writing/penulisan program) dan pengujiannya (testing) berdasrkan rancangan tertentu. Pemahaman yang lebih sempit ini sering digunakan dalam pembuatan program-program terapan komersial yang membedakan antara system analyst yang bertanggung jawab dalam menganalisa kebutuhan, perencanaan dan perancangan program dengan programer yang bertugas membuat kode program dan mengujinya.

(5)

Deskripsi bahasa pemrograman biasanya dibagi menjadi dua komponen syntax (bentuk) dan semantic (makna). Beberapa bahasa yang didefinisikan oleh dokumen spesifikasi (misalnya, pada bahasa c dan pascal ditentukan oleh standar ISO), sedangkan bahasa yang lain, seperti Perl5, mamiliki implementasi dominan yang digunakan sebagai referensi.

I.2. Pembahasan

Adapun bahasan pada makalah ini adalah sebagai berikut ;

a) Menjelaskan apa itu Algoritma.

b) Menjelaskan bahasa pemrograman Pascal. c) Membahas struktur dasar Pemilihan d) Membahas struktur Prosedur

e) Membahas struktur Larik f) Membahas struktur Pencarian g) Membahas struktur Rekursi

I.3. Tujuan

Adapun tujuan pembuatan makalah ini adalah untuk :

(6)

II.1. PENGERTIAN LOGIKA DAN ALGORITMA

Logika berasal dari bahasa Yunani yaitu logos yang berarti ilmu. Logika dapat diartikan ilmu yang mengajarkan cara berfikir untuk melakukan aksi dengan tujuan tertentu.

Algoritma berasal dari nama seorang ilmuan Arab yang bernama Abu Ja’far Muhammad Ibnu Musa Alkhuwarizmi penulis buku Al Jabar Wal Muqabala ( buku pemugaran dan pengurangan ). Kata Alkhuwarizmi dibaca orang barat menjadi algorism yang kemudian lambat laun menjadi Algorithm diserap kedalam bahasa Indonesia menjadi Algoritma. Algoritma dapat diartikan urutan langkah-langkah ( instruksi-instruksi / aksi-aksi ) terbatas untuk menyelesaikan suatu masalah.

Dari pengertian diatas maka dapat diartikan Logika dan Algoritma adalah ilmu yang mempelajari cara penyelesaian masalah berdasarkan langkah-langkah terbatas yang logis dan sistematis dengan tujuan tertentu.

Contoh Algoritma:

Permasalahan:

Diberiakan dua gelas (A dan B), gelas A berisi kopi dan gelas B berisi susu. Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A yang semula berisi kopi menjadi susu, dan gelas B semula berisi susu menjadi berisi kopi.

Penyelesaian:

Untuk mempertukarkan isi gelas dengan benar, maka diperlukan gelas tambahan yang kita namakan gelas C sebagai penampungan sementara. Berikut Algoritmanya:

(7)
(8)

Algoritma_Tukar_Isi _Gelas

Ada dua gelas (gelas A dan B), gelas A berisi kopi dan gelas B berisi susu. Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi kopi menjadi berisi susu dan gelas B sebaliknya.

Deskripsi:

1. Tuangkan gelas A ke dalam gelas C 2. Tuangakn gelas B ke dalam gelas A 3. Tuangakn gelas C ke dalam gelas B

Hasil akhir dari Algoritma pertukaran gelas menjadi:

A : berisi susu B : berisi kopi

A. Syarat-Syarat Algoritma

Syarat-syarat Algoritma menurut Donald E.Knuth, yaitu : 1. Finiteness (Keterbatasan)

Algoritma harus berakhir setelah melakukan rangkaian proses. 2. Defiteness (Kepastian)

Setiap langkah Algoritma harus didefiniskan dengan tepat dan tidak menimbulkan makna ganda.

3. Input (Masukan)

Sebuah Algoritma memiliki nol atau lebih masukan (input) yang diberikan kepada Algoritma sebelum dijalankan.

4. Output (Keluaran)

Setiap Algoritma memberikan satu atau beberapa hasil keluaran. 5. Effectiveness (Efektifitas)

Langkah-langkah Algoritma dikerjakan dalam waktu yang “wajar”.

B. Struktur Dasar Algoritma

(9)

1. Runtunan

Runtunan yaitu satu atau lebih instruksi yang dikerjakan secara berurutan penulisannya. Urutan dari instruksi menentukan hasil akhir dari suatu Algoritma. Bila urutan penulisan berubah mungkin juga hasil akhirnya berubah.

2. Pemilihan

Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Instruksi hanya dilaksanakan apabila kondidisi bernilai benar, sebaliknya apabila kondisi salah maka instruksi tidak dilaksanakan. Pernyataan kondisi menggunakan stattment IF (jika) dan THEN (maka).

3. Pengulangan

Pengulangan merpakan pengulangan sejumlah aksi yang sama sebanyak jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan.

Algoritma dapat ditulis dengan cara berikut : 1. Menggunakan bahasa Natural.

2. Menggunakan Kode Semu (pseudo code). Teknik penulisan yang mendekati bahasa pemrograman tertentu.

3. Menggunakan diagram alir (flow chart). Teknik penyajian dengan menggunakan symbol-simbol.

Dari ketiga cara diatas untuk mempermudah translasi teks Algoritma kedalam teks program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa pemrograman (pseudo code).

D. Teks Algoritma

(10)

2. Bagian Deklarasi 3. Bagian Deskripsi

Setiap bagian disertai dengan penjelasan tentang maksud penulisan Teks. Penjelasan ditulisdalam krung seperti ini { }.

Algoritma Nama_algoritma

{ penjelasan singkat uraian yang dilakukan oleh algoritma }

Deklarasi

{ semua nama yang digunakan, meliputi nama-nama : tipe, konstanta, variable, juga nama subprogram dinyatakan dibagian ini }.

Deskripsi

{ semua langkah penyelesaian dituliskan disini }

Contoh :

Algoritma Cetak_ucapan

{ mencetak ucapan “Selamat Belajar” dan di ikuti dengan nama orang } Deklarasi

(11)

dipelajari oleh pemula karena struktur yang jelas serta tidak bersifat case sensitive (tidak membedakan huruf besar dan kecil). TPW 1.5 merupakan bahasa pemrograman Pascal yang berjalan dibawah system operasi Windows.

B. PASCAL Sebagai Bahasa Terstrutur

Sebagai bahasa terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut :

1. Berurutan

Susunan dari kode-kode dalam teks Pascal harus ditulis secara urut dari atas, pernyataan-pernyataan yang ditulis lebih awal akan dieksekusi lebih dulu. Oleh karena itu, suatu pernyataan yang menyangkut suatu variable didalam program, maka variable itu harus terdefinisi dahulu sebelumnya. Hal ini terutama menyangkut pada pemanggilan subprogram oleh subprogram yang lain.

2. Blok dengan batas-batas yang jelas.

Pascal memberikan pembatas yang jelas pada tiap-tiap blok, seperti pada blok program utama, subprogram, struktur control (pengulangan / pemilihan), dll. Pemakaian kata kunci begin untuk mengawali operasi pada blok dan end untuk menutupnya memudahkan programer menyusun programnya dengan mudah. keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah output tapi suatu paket perintah yang dirangkai dengan begin…end.

(12)

Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa versi, diantaranya : USCD PASCAL, MS PASCAL,TURBO PASCAL dll. Dengan semakin berkembangnya dalam teknologi komputasi, Pascal dimanfaatkan untuk pengembangan DELPHI (berasal dari nama suatu kota di masa Yunani kuno), suatu bahasa pemrograman visual yang menojolakan pada efek grafis dan orientasi pada objek-objek yang siap dipakai, karena memiliki Visual Component Library (VCL).

D. Struktur Bahasa PASCAL Secara Umum

Pascal mempunyai struktur sebagai berikut :

1. Judul Program

e) Deklarasi sub-program ( PROCEDURE dan FUNCTION)

3. Bagian Program Utama Perintah-perintah

Teks Pascal setidaknya memiliki bagia Judul Program, bagian Deklarasi, dan bagian Program Utama yang berupa perintah-perintah. Sedangkan untuk bagian deklarasi menyesuaikan dengan isi dari program itu sendiri. Sebagai contoh:

Program TAMBAH_00; {menjumalahkan dua buah bilangan yang nilainya diberikan dalam perintah}

Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat} BEGIN {program utama dimulai}

X:= 50; {perintah untuk memberi nilai 50 pada var X} Y:= 25; {perintah intuk memberi nilai 25 pada var Y}

Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya ke Z}

END. {akhir program utama}

Pada contoh ini nilai X dan Y tidak bisa sembarang, karena sudah didefinisikan sebelumnya dalam program. Agar nilai X dan Y bisa bebas ditentukan, nilai X dan Y dibaca dari default input.

(13)

Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat} BEGIN {program utama dimulai}

Read(X); {membaca nilai X dari keyboard} Read(Y); {membaca nilai Y dari keyboard}

Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya ke Z}

Write(Z); {menyajikan Z kelayar monitor} END. {akhir program utama}

E. Jenis Identifier

1. Identifier umum

Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram mempunyai kebebasan untuk menentukan identifiernya, dengan syarat nama tersebut tidak sama dengan identifier standard dan reserved word yang akan dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul akibat tumpang tindih identifier dalam program.

2. Identifier standar (Baku)

Merupakan identifier yang didefinisikan oleh pembuat compiler Pascal. Biasanya membuat compiler menyediakan suatu library yang sudah ada didalam compiler. Library berisi berbagai prosedur, fungsi atau unit yang siap pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh programer didalam menuliskan kode-kode programnya. Dinamai identifier standar karena suatu compiler tidak harus memilikinya, masing-masing compiler dimungkinkan mempunyai identifier berbeda untuk suatu tugas yang hampir sama. Misalnya Turbo Pascal versi DOS menggunakan crt untuk melakukan fungsi yang sama dengan wincrt (TPW 1.5).

Beberapa identifier standar yang dimiliki oleh compiler-kompiler pascal antara lain :

abs arctan Boolean char cos dispose eof eoln exp false input integer in maxint new odd ord output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunk write writeln

(14)

Yaitu yang sudah didefinisikan dan digunakan oleh bahasa Pascal sendiri (kita tidak bisa menamai identifier kita dengan kata ini).

and array begin case const div do downto else end file forward function goto if in label mod nil not of or packed procedure program record repeat set then to type until var while with

F. Tipe Data

Tipe data yang disedikan oleh Pascal terbagi menjadi dua meliputi :

 Tipe Data Sederhana

 Tipe Data Terstruktur 1. Tipe Data Sederhana

Merupakan data dasar yang seering dipakai oleh program,meliputi : integer, real, char, dan Boolean. Untuk data integer dan real masing-masing terbagi menjadi beberapa katagori.

a. Bilangan Integer

Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa katagori seperti terlihat dalam tabel 1 menunjukan jenis data ukuran dalam memori dan rentang nilainya.

Tipe Data Ukuran Tempat Rentang Nilai

Byte 1 Byte 0 s/d + 225

Shortint 1 Byte -28 s/d + 127 Integer 2 Bytes -32768 s/d 32767

Word 2 Bytes 0 s/d 65535

Longint 4 Bytes -2147483648 s/d 2147483647 Tabel 1. Tipe Data bilangan integer

b. Bilangan Real

Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat dituliskan secara biasa atau model scientific. Contoh bilangan Real : 23,435 -2,55 0,0 32,997E+11, dimana E merupakan symbol perpangkatan sepuluh. Jadi 452.13 mempunyai nilai sama dengan 4.5213E2.

Penggolongan tipe data real dapat dilihat pada tabel 2.

Tipe Data Ukuran Tempat Rentang Nilai

(15)

Double 8 Bytes 5.0 x 10 -324 s/d 1.7 x 10308 Extended 10 Bytes 3.4 x 10 -4932 s/d 1.1 x 104932 Comp 8 Bytes -9.2 x 1018 s/d 9.2 x 1018

Tabel 2 Tipe Data Bilangan real

c. Char

Tipe data ini menyimpan karakter yang diketikan dari keyboard, memiliki 266 macam yang terdapat dalam tabel ASCII ( American Standard Code for Information Interchange). Contoh ; ‘a’ , ’B’ , ’+’, dsb. Yang perlu diingat bahwa dalam menuliskannya harus memakai tanda kutip tunggal. Jenis data ini memerlukan alokasi memori sebesar 1(satu) byte untuk masing-masing data.

d. Tipe Data Boolean

Merupakan tipe data logika, yang berisi dua kemungkinan nilai : TRUE (benar) dan FALSE (salah). TPW memiliki tiga jenis ini yaitu : Boolean, WordBool, dan LogBool. Tipe boolean memakai memori paling kecil, sedangkan WorBool dan LogBool dipakai untuk menulis program yang sesuai dengan lingkungan windows.

Tipe Data Ukuran Tempat

Boolean 1 Byte

WordBool 2 Bytes

IongBool 3 Bytes

Tabel 3. Tipe Data Boolean 2. Tipe Data Terstruktur

Tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis array, Karena string memiliki kekhasan tersendiri sebagai array dari karakter. a. Tipe Data String

Merupakan suatu data yang menyimpan array (larik), sebagai contoh ‘ABCDF’ merupakan sebuah konstanta string yang berisikan 6 byte karakter. Ukuran tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan jumlah elemen 1 s/d 225. String dideklarasikan dengan string [konstanta] atau string. Bila ukuran string tidak didefinisikan maka akan banyak memakan ruang, karena ukuran string menyesuaikan dengan defaultnya. Misalkan: var kata : string [20]; atau var kata : string. Karena string merupakan array dari karakter.

(16)

Sebuah set merupakan suatu himpunan yang berisi nilai (anggota). Set merupakan tipe data yang khusus untuk Pascal. Set dalam pemrograman sangat mirip dengan himpunan dalam ilmu matematika,

Contoh :

Beberapa operator yang disediakan oleh PASCAL : 1. Aritmatika

2. Boolean 3. Relasional 4. Set

Operator Operasi Tipe Operand Tipe Hasil Operasi

+ Penjumlahan Integer, Real Integer, Real - Pengurangan Integer, Real Integer, Real * Perkalian Integer, Real Integer, Real / Pembagian Integer, Real Integer, Real div Pembagian Integer, Integer Integer mod Sisa Pembagian Integer, Integer Integer

Tabel 4. Aritmetika Pascal

Operator Operasi Tipe Operand Tipe Hasil Operasi

Not Negasi Boolean Boolean

And Logika ‘and’ Boolean Boolean

Or Logika ‘or’ Boolean Boolean

Xor Logika ‘xor’ Boolean Boolean

(17)
(18)

III.1. PEMILIHAN

Didalam suatu program seringkali terdapat instruksi yang hanya bisa dikerjakan jika ia memenuhi suatu persyaratan tertentu. Oleh karena itu komputer tidak lagi mengerjakan instruksi secara sekuensial melainkan berdasarkan syarat tertentu yang dipenuhi. Struktur pemilihan memungkinkan kita melakukan aksi jika suatu syarat dipenuhi. Didalam makalah ini struktur pemilihan yang akan dibahas adalah IF-THEN, IF-THEN ELSE dan CASE-OF, sebagai berikut :

A.Pemilihan Dengan StrukturIF-THEN dikerjakan. Kata endif sengaja kita tambahkan untuk mempertegas awal dan akhir struktur IF-THEN. Aksi yang dikerjakan bisa satu, dua, atau lebih. Bagan alir pada gambarmembantu memperlihatkan visualisasi pemilihan dengan hanya satu kasus ini.

(19)

salah

benar

Bagan alir yang memperlihatkan pemilihan dengan hanya dengan satu kasus

Contoh :

Berikut kita akan membuat program mencetak bilangan ganjil menggunakan statement if dengan bahasa Pascal.

kondisi

aksi

(20)

Setelah dijalankan maka hasil programnya akan terlihat seperti dibawah.

B. Pemilihan Dengan Struktur IF-THEN-ELSE

Konstruksi IF-THEN hanya menyediakan satu alternative aksi jika suatu persyaratan (kondisi) dipenuhi. Kadang-kadang kita perlu memilih melakukan aksi alternative jika suatu kondisi tidak memenuhi. Jadi, ada dua kasus, tetapi hanya salah satu dari keduanya yang harus dipilih satu untuk dikerjakan. Notasi algoritmik untuk masalah dengan dua buah kasus adalah dengan menggunakan konstruksi IF-THEN-ELSE( jika-maka-kalau tidak) :

if

kondisi then

aksi1

else

aksi2 endif

Pernyataan diatas berarti bahwa aksi1 dikerjakan jika kondisi bernilai benar,

(21)

Benar Salah

Bagan alir yang memperlihatkan pemilihan dengan dua kasus.

Contoh :

Berikut kita akan membuat program Password menggunakan statement if then else sebagai berikut.

kondisi

aksi2 aksi1

(22)

Jika password yang dimasukan “udin” maka akan menghasilka output sebagai berikut

Jika password yang dimasukan bukan “udin” maka hasilnya akan tampak seperti berikut.

C. Pemilihan Dengan Tiga Kasus Atau Lebih

Masalah yang mempunyai tiga buah kasus atau lebih dapat dianalisis dengan konstruksi IF-THEN-ELSE bertingkat-tingkat. Gambar dibawah memperlihatkan bagan alir untuk masalah dengan 3 kasus.

Tiga kasus :

(23)

else

Bagan alir yang memperlihatkan pemilihan dengan tiga kasus.

(24)

Berikut adalah contoh programnya mencetak tulisan Bilangan Positif atau Bilangan Negatif atau Nol:

(25)

Sedangkan apabila kita menginputkan angka -23 maka hasilnya akan seperti dibawah.

D. Pemilihan Dengan Struktur Case

Untuk masalah dengan dua kasus atau lebih, kontruksi CASE dapat menyederhanakan penulisan IF-THEN-ELSE yang bertingkat-tingkat sebagaimana telah kita bahas diatas. Berikut disajikan struktur CASE :

case ekspresi

nilai1 : aksi1

nilai2 : aksi2

nilai3 : aksi3 .

.

nilain : aksin

Otherwise : aksix endcase

Contoh :

(26)

Apabila kita menginputkan kode kelas 114 pada piranti masukannya maka hasilnya akan tampak seperti berikut.

(27)

III.2. PROSEDUR

Prosedur adalah program terpisah atau subprogram yang dibuat dengan tujuan untuk menyederhanakan program. Prosedur ditulis dalam satu blok program yang cukup ditulis satu kali tetapi dapat dipanggil berulang kali.

Didalam prosedur ada yang disebut Parameter yaitu nama-nama peubah yang dideklarasikan pada bagian header prosedur. Parameter terbagi dua menjadi

Parameter Aktual adalah parameter yang disertakan pada waktu pemanggilan prosedur, sedangkan Parameter Formal adalah parameter yang dideklarasikan didalam bagian header prosedur itu sendiri.

Setiap Prosedur program Pascal harus mengikuti struktur dasarnya. Berikut adalah sruktur dasar prosedur yang harus diikuit .

(28)

…tambah prosedur jika dibutuhkan… BEGIN

Blok program utama. Ini harus kecil dan semua pekerjaan harus diserahkan kepada prosedur. Disini sering berisi pengulangan dan pemanggilan prosedur yang bersesuain.

END.

Berikut contoh program menghitung luas segitiga dengan prosedur tanpa parameter.

(29)

Didalam prosedur terdapat 3 parameter yaitu :

A. Prosedur dengan Parameter Masukan

Yaitu parameter yang nilainya berlaku sebagai masukan untuk prosedur. Pada parameter masukan, nilai parameter actual diisikan kedalam badan prosedur yang besangkutan.

(30)

Dan bila kita mengisikan nilai 3 pada “Banyaknya Lingkaran” dan mengisikan sembarang nilai pada jari-jarinya, maka hasilnya akan tampak sebagai berikut.

B. Prosedur dengan Perameter Keluaran

(31)

ditampung dalam parameter keluaran. Ketika prosedur yang mengandung parameter keluaran dipanggil, maka parameter actual menggantikan nama parameter formal yang bersesuaian didalam prosedur.

Berikut diberikan contoh program menghitung luas lingkaran dengan menggunakan prosedur parameter keluaran.

(32)

C. Prosedur dengan Parameter Masukan / Keluaran

Adalah parameter yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut.

(33)

Dengan mengisikan banyaknya mata pelajaran dan nilai tiap mata kuliah tersebut, maka hasil programnya seperti tampak dibawah ini.

III. 3. LARIK

Larik / Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang bertipe sama (homogen). Komponen-komponen tersebut disebut sebagai komponen tipe, larik mempunyai komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukan oleh suatu indeks, dimana tiap komponen di larik dapat diakses dengan menunjukan nilai indeksnya atau subscript. Larik dapat bertipe data sederhana seperti byte, word, integer, real, boolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen-komponennya mempunyai nilai dengan tipe data tersebut.

(34)
(35)

III. 4. PENCARIAN

Pencarian / Searching adalah menemukan nilai atau data tertentu didalam sekumpulan data yang bertipe sama baik tipe dasar maupun bertipe bentukan.

Untuk mengubah atau meng-update data tertentu langkah pertama yang harus dilakukan adalah mencari keberadaan data tersebut didalam kumpulanya.

Spesifikasi masalah pencarian

Bila kita akan mencari nilai x didalam larik L, maka hasil / keluaran dari pencarian dapat bermacam-macam:

1. Pencariannya hanya untuk memeriksa keberadaan x. Write (‘ditemukan’) atau

Write (‘tidak ditemukan’)

2. Hasil pencarian adalah indeks elemen larik.

L

1 2 3 4 5 6 7 8

Jika x = 10 maka indeks = 5, jika x = 4 maka indeks = -1

3. Hasil pencarian Boolean yang menyatakan status hasil pencarian. Jika x = 10 maka ketemu = true,

Jika x = 4 maka ketemu = false

Ada dua macam pencarian :

1. Algoritma pencarian beruntun ( sequential search ) 2. Algiritma pencarian bagi dua ( binary search )

A. Algoritma Pencarian Beruntun / Squential Search

(36)

Cara kerjanya adalah membandingkan setiap elemen larik satu persatu secara beruntun mulai dari elemen pertama sampai elemen ditemukan atau seluruh elemen sudah diperiksa.

Berikut ini contoh program prosedur pencarian dengan hasil Boolean, bernilai true jika ditemukan dan false jika tidak ditemukan.

(37)

B. Algoritma Pencarian Bagi Dua

Algoritma yang paling Efisien adalah algoritma bagi dua atau pencarian biner atau binary search. Algoritma ini digunakan untuk kebutuhan pencarian dengan waktu yang cepat.

Kanan Kiri

L

1 2 3 4 5 6 7 8

Berikut diberikan contoh kode program prosedur pencarian bagi dua.

(38)
(39)

III.5. REKURSIF

Menurut Niklaus Wirth definisi rekursif yaitu “ An object is said be recursive if it partially consist of is defines in terms of itself “.

Rekursif disusun oleh dua bagian :

1. Basis

Berisi kasus yang terdefinisi eksplsit, bagian ini yang menghentikan rekursif.

2. Rekurens

Mendefinisikan objek dalam terminology dirinya sendiri.

Contoh algoritma fungsi rekursif

(40)

Berikut contoh code program tentang factorial atau mencari factor terhadap suatu bilangan :

Apabila kita mengisikan nilai 5 untuk mencari pemfaktorannya maka hasil programnya sebagi berikut ;

Rekursif dengan list berkait

Link berkait/linked list adalah sekumpulan elemen (boleh kosong) yang setiap elemennya terdiri dari dua bagian :

(41)

Kapan tidak menggunakan rekursif

Ada dua alas an kita harus mengubah algoritma rekursif menjadi algoritma iterative. Diantaranya adalah :

1. Bahasa pemrograman tidak mendukung. FOTRAN tidak mendukung. 2. Dapat terjadi rekursif tidak mangkus, memiliki kerumitan yang tidak

perlu atau terlalu lambat.

Contoh Menara Hanoi

Berikut diberikan contoh program dengan memakai cara Menara Hanoi yaitu memindahkan sejumlah disk/piringan dari menara A ke B dengan menggunakan bantuan menara C.

(42)
(43)

Berdasarkan pembahasan yang telah kita ulas, bahasa pemrograman pascal merupakan bahasa pemrograman terstruktur yang mana blok-blok kode program tersusun sedemikian sehingga dapat membangun program yang efisien dan pascal juga termasuk kedalam bahasa pemrograman tinggkat tinggi yaitu kode-kode programnya menggunakan bahasa yang dimengerti oleh manusia.

Di era sekarang ini, bahasa pemrograman pascal sudah jarang digunakan dalam pembuatan program, karena sudah ada bahasa pemrograman yang lebih baru yaitu bahasa pemrograman yang berorientasi objek seperti, C++, Visual Basic, Java dan masih banyak lagi. Namun pascal sangat cocok bagi pemula yang ingin mempelajari pemrograman komputer.

(44)

www.EmeRer.com.

(45)

Gambar

Tabel 1. Tipe Data bilangan integer
Tabel 2 Tipe Data Bilangan real
Tabel 5. Operator Boolean Pascal

Referensi

Dokumen terkait

Karakteristik selanjutnya adalah kepemilikan dana, pada asuransi syariah dana investasi yang terkumpul dari peserta (premi) merupakan milik peserta seutuhnya, pada asuransi

untuk melakukan studi penilaian desa inovasi di Kecamatan Boja dan kecamatan Weleri Kabupaten Kendal dengan mengidentifikasi seluruh potensi dan masalah dari unsur-unsur

Tidak ada perbedaan kecenderungan burnout ditinjau dari usia dewasa dijelaskan oleh Anoraga (2005) menyatakan bahwa dalam meniti karier, perempuan dan laki

Studi epidemiologi pada pasien gangguan fungsi tiroid di Klinik Litbang GAKI pada tahun 2011 dan 2012 menunjukkan bahwa gangguan fungsi tiroid yang meliputi hipotiroid

635 SILOAM HOSPITALS LIPPO CIKARANG JL. THAMRIN, KAV.105, LIPPO CIKARANG CIKARANG JAWA BARAT 636 RSIA. VILA MUTIARA CIKARANG, RUKO PASADENA BLOK RA NO. HOSANA MEDICA LIPPO JL.

Terletak sekitar 6 km ke arah Barat Laut dari pusat Pemerintah Kota Yogyakarta, Kelurahan Kricak terdiri dari perkumpulan tiga Rukun Kampung (RK), yaitu Kampung

koding proses sistem dan hasil evaluasi sistem manajemen Apartement UNSRI Tingkat 3 MANAGER PROJECT, PROGRAMMER, DATABASE ADMINISTRATOR, NETWORK ENGINER, SYSTEM

Seni ornamen Melayu Riau merupakan salah satu hasil dari proses kebudayaan suku etnis yang sampai sekarang masih bertahan dan memiliki hubungan yang kuat dengan