Anda di halaman 1dari 54

MODUL KULIAH

TEKNOLOGI INFORMASI KESEHATAN 3


Algoritma dan Pemrograman

Disusun Oleh :
Amroni. M.Kom

POLITEKNIK KESEHATAN TASIKMALAYA


PRODI PIKES
2014

Pertemuan 1
Konsep Algoritma dan pemrograman
1.1.

Sejarah Algoritma
Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah yang

aneh. Orang hanya menemukan kata Algorism yang berarti proses menghitung dengan angka
arab. Anda dikatakan Algorist jika anda menghitung menggunakan Angka Arab. Para ahli bahasa
berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli
sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang
terkenal yaitu Abu Jafar Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang
barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar WalMuqabala yang artinya Buku pemugaran dan pengurangan (The book of restoration and
reduction).
Dari judul buku itu kita juga memperoleh akar kata Aljabar (Algebra). Perubahan kata
dari Algorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan
Arithmetic, sehingga akhiran sm berubah menjadi thm. Karena perhitungan dengan angka Arab
sudah menjadi hal yang biasa. Maka lambat laun kata Algorithm berangsur-angsur dipakai
sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.
Dalam Bahasa Indonesia, kata Algorithm diserap menjadi Algoritma.

1.2. Konsep Algoritma dan Program


Algoritma adalah urutan langkah-langkah logis pemecahan masalah yang disusun secara
sistematis dan logis. Logis merupakan kata kunci yang berarti kata-kata yang ditulis harus
mempunyai nilai kebenaran yang dapat digunakan untuk menentukan keputusan benar (true) atau
keputusan salah (false).
Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan
pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah
benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan
yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah,
pastilah algoritma tersebut bukanlah algoritma yang baik.
Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui
seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma
untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa
pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan
nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu
efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling
mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya,
algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat.
Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah
algoritma tersebut.
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk
menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma,
tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma yang
paling efisien dan cepat.
Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan
sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa
pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa
pemrograman.
Beberapa pakar memberi formula bahwa:
Program = Algoritma + Bahasa (Struktur Data)
Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program.
Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi
kurang baik, demikian juga sebaliknya.
Pembuatan algoritma mempunyai banyak keuntungan di antaranya:
1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun,
artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang
melaksanakannya.
2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya
sama.
Beberapa hal yang perlu diperhatikan dalam membuat algoritma:
1. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut
dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.
2. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa
pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.
3. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini
dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi
algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka
sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman
secara umum.
4. Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi
algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer,
pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi
bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat
terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya.
5. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu
permasalahan ke dalam bahasa pemrograman.
6. Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer,
algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang
harus diperhatikan pada translasi tersebut, yaitu:
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

a. Pendeklarasian variabel
Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa
pemrograman apabila tidak semua bahasa pemrograman membutuhkannya.
b. Pemilihan tipe data
Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian
variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data.
c. Pemakaian instruksi-instruksi
Beberapa instruksi mempunyai kegunaan yang sama tetapi masingmasing memiliki
kelebihan dan kekurangan yang berbeda.
d. Aturan sintaksis
Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa
pemrograman yang akan digunakan.
e. Tampilan hasil
Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan.
Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program.
f. Cara pengoperasian compiler atau interpreter.
Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau
interpreter.
1.3. Algoritma Merupakan Jantung Ilmu Informatika
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer
yang mengarah ke dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu
identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun banyak terdapat proses
yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan
dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan
langkah-langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan
masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per
satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara
umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut
dapat berupa manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan
suatu proses dengan melaksanakan atau mengeksekusi algoritma yang menjabarkan proses
tersebut.
Algoritma adalah deskripsi dari suatu pola tingkah laku yang dinyatakan secara primitif
yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi nama, dan diasumsikan sebelumnya
bahwa aksi-aksi tersebut dapat kerjakan sehingga dapat menyebabkan kejadian. Melaksanakan
algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut. Pemroses
mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya. Juru masak membuat
kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan papan not
balok. Karena itu suatu algoritma harus dinyatakan dalam bentuk yang
dapat dimengerti oleh pemroses. Jadi suatu pemroses harus:
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

1. Mengerti setiap langkah dalam algoritma.


2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
Contoh Algoritma membuat secangkir kopi dalam bahasa natural :
1. Siapkan Gelas, Kopi, Gula, sendok dan Air Panas
2. Masukan kopi, gula kedalam gelas
3. Tuangkan Air Panas kedalam gelas
4. Aduk kopi, gula, dan air panas dengan sendok sampai larut
5. Secangkir kopi sudah jadi.

1.4. Mekanisme Pelaksanaan Algoritma oleh Pemroses


Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer,
algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi
program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa
pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Kata algoritma dan
program seringkali dipertukarkan dalam penggunaannya. Misalnya ada orang yang berkata
seperti ini: program pengurutan data menggunakan algoritma selection sort. Atau pertanyaan
seperti ini: bagaimana algoritma dan program menggambarkan grafik
tersebut?. Jika Anda sudah memahami pengertian algoritma yang sudah disebutkan sebelum ini,
Anda dapat membedakan arti kata algoritma dan program. Algoritma adalah langkah-langkah
penyelesaikan masalah, sedangkan program adalah realisasi algoritma dalam bahasa
pemrograman.
Program ditulis dalam salah satu bahasa pemrograman dan kegiatan membuat program
disebut pemrograman (programming). Orang yang menulis program disebut pemrogram
(programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi,
program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasioperasi
yang bersesuaian dengan instruksi tersebut dikerjakan komputer.
Secara garis besar komputer tersusun atas empat komponen utama yaitu, piranti masukan,
piranti keluaran, unit pemroses utama, dan memori. Unit pemroses utama (Central Processing
Unit CPU) adalah otak komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti
operasi perbandingan, operasi perhitungan, operasi membaca, dan operasi menulis. Memori
adalah komponen yang berfungsi menyimpan atau mengingatingat. Yang disimpan di dalam
memori adalah program (berisi operasioperasi yang akan dikerjakan oleh CPU) dan data atau
informasi (sesuatu yang diolah oleh operasi-operasi). Piranti masukan dan keluaran (I/O devices)
adalah alat yang memasukkan data atau program ke dalam memori, dan alat yang digunakan
komputer untuk mengkomunikasikan hasil-hasil
aktivitasnya. Contoh piranti masukan antara lain, papan kunci (keyboard), pemindai (scanner),
dan cakram (disk). Contoh piranti keluaran adalah, layar peraga (monitor), pencetak (printer),
dan cakram.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

Mekanisme kerja keempat komponen di atas dapat dijelaskan sebagai berikut. Mula-mula
program dimasukkan ke dalam memori komputer. Ketika program dilaksanakan (execute), setiap
instruksi yang telah tersimpan di dalam memori dikirim ke CPU. CPU mengerjakan operasi
operasi yang bersesuaian dengan instruksi tersebut. Bila suatu operasi memerlukan data, data
dibaca dari piranti masukan, disimpan di dalam memori lalu dikirim ke CPU untuk operasi yang
memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke
dalam memori, lalu memori menuliskan keluaran tadi ke piranti keluaran (misalnya dengan
menampilkannya di layar monitor).
1.5. Pengantar Borland Delphi 7
Delphi adalah perangkat pengembangan aplikasi yang berjalan di sistem operasi
Windows. Delphi merupakan kelanjutan dari Turbo Pascal yang merupakan produk
Borland, sekarang telah berganti menjadi Inprise Corporation. Delphi diluncurkan pertama
kali pada tahun 1995.
Borland menyatakan bahwa Delphi merupakan alat yang dapat digunakan untuk Rapid
Application Development (RAD),

yang

hingga

kini

tetap

terbukti

menjadi

bahasa

pemrograman yang paling baik. Dengan keberhasilan ini maka Borland (sebelum menjadi
Inprise), mengembangkan produk lain yang mirip yakni C++Builder, Jbuilder (Java Language).
Dengan demikian jika kita telah menguasai Delphi dengan mudah kita dapat berpindah
menggunakan bahasa lainnya yaitu C++Builder atau Jbuilder. Kedua produk ini sengaja dibuat
memiliki IDE yang sama dengan Delphi.
Selain sebagai aplikasi biasa dengan mudah Delphi membuat aplikasi untuk internet.
Seperti Win-CGI (Windows Common

Gateway

Interface),

ISAPI

(Internet

Service

Application Program Interface) . Bahkan Borland menyatakan sebagai satu langkah menuju
ActiveX. Seperti dengan mudah membuat sebuah aplikasi ActiveForm yang dapat berjalan pada
Internet Explorer sebagai suatu aplikasi biasa. Selain itu Delphi dapat membuat aplikasi
MIDAS, pada aplikasi ini kita harus membuat dua lapis, lapis pertama adalah aplikasi Server
yang melayani permintaan aplikasi kedua yaitu Client.
Delphi dapat mengakses database Paradox, xBase, MS-Access juga dengan menggunakan
ODBC Delphi dapat mengakses database lain seperti Oracle, Sybase, Interbase, DB2, MS-SQL,
MySQL. Sehingga kita dapat berpindah dari satu database ke database lain tanpa perlu mengubah
aplikasi secara keseluruhan.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

1.6. Prosedur instalasi software Borland Delphi 7


Tahapan prosedur dalam menginstalasi software Borland Delphi 7 adalah :
1. Double

klik

file

Delphi.7.SecondEdition.v7.2

yang

terdapat

dalam

folder

delphi7.secondedition.
2. Perhatikan Gambar dibawah ini, klik tombol Next :

3. Perhatikan Gambar dibawah ini, klik tombol Next, klik tombol install :

4. Tunggu proses sampai selesai, kemudian klik tombol Finish Seperti Gambar dibawah ini:

5. Copy file delphi32.dro (yang terdapat dalam folder delphi32.dro) ke folder hasil
6.

installasi, di folder C: Program Files , Delphi, di dalam folder Bin . .. Paste (replace, ok)

7. Program Delphi siap untuk digunakan dalam membuat program.

1.7. Kontrol dan Kontainer


Kontrol dan Kontainer adalah object yang digunakan dalam Delphi yang terdapat pada
Visual Component Library(VCL). Kontainer adalah object atau kontrol yang dapat menampung
object atau kontrol yang lain.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

1. Kontrol Text
Kontrol Text digunakan untuk memberikan input atau masukan berupa kotak isian.
2. Kontrol Radio
Kontrol Radio digunakan untuk menampilkan salah satu pilihan dari satu kumpulan/grup pilihan.
3. Kontrol CheckBox
Kontrol CheckBox digunakan untuk memilih beberapa pilihan dari pilihan yang tersedia.
Penggunaannya hampir sama dengan kontrol radio, perbedannya terletak pada pilihan yang
dimungkinkan lebih dari satu.
4. Kontrol Button
Kontrol button digunakan untuk mengontrol suatu aksi atau menjalankan sebuah prosedur / event.

Perhatikan gambar dibawah ini :

Object Control
1.8. Menjalankan dan Membuat Program Delphi
Menggunakan menu bar
a. Klik Start
b. Klik All Programs
c. Klik Group Delphi 7 Second Edition v.7.2
d. Klik Delphi 7 Second Edition v.7.2
Menggunakan menu tool bar yang terdapat dalam dekstop double klik icon Delphi 7 Second
Edition v.7.2.
Setelah program dibuka maka telah terbentuk secara otomatis Project dengan nama project1 dan
Unit dengan nama unit1.
Buatlah tampilan visual (User Interface) seperti gambar di bawah ini :

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

Pemberian nama komponen dari control dalam form dapat diatur sendiri, boleh juga
menggunakan penamaan bawaan dari Delphinya.
Seting Properti
Kontrol
Label 1
Label2
Edit1
RadioGroup1
RadioButton1
RadioButton2
Label3
ComboBox1

GroupBox1
CheckBox1
CheckBox2
CheckBox3
Button1

Properti
Caption
Caption
Name
Text
Caption
Caption
Caption
Caption
Text
Items

Caption
Caption
Caption
Caption
Caption

Value
Contoh Container dan Control
Nama
T1
Hapus Text nya (Kosongkan)
Jenis Kelamin
Laki-Laki
Perempuan
Jurusan
Hapus ComboBox1
Keperawatan
Kebidanan
Gizi
Pikes
Extra Kurikuler
Futsal
Senam
Rohani Islam
Keluar

Simpanlah unit dan project yang telah saudara buat melalui menu File Save All berilah nama
unitnya dengan nama : contoh1 dan projectnya dengan nama : project1
Listing Kode Program
unit contoh1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
T1: TEdit;
RadioGroup1: TRadioGroup;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
ComboBox1: TComboBox;
Label3: TLabel;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate;
end;
end.
Setelah program selesai dibuat lakukan kompilasi terhadap program dengan cara :
Klik menu project dan klik kompile project
Apabila terdapat eror maka perbaiki program dan kompilasi ulang.
Setelah itu program dapat di run menggunakan menu tool bar run atau dari menu Run Run atau
Tekan tombol F9.
Output Tampilan Program setelah di Run

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom #

Pertemuan 2
Konsep tipe data dan operator

2.1. Struktur Penulisan Algoritma


Struktur dasar penulisan algoritma terdiri dari tiga bagian yaitu :
1. Judul
Digunakan untuk menulis komentar mengenai algoritma seperti : cara kerja program kondisi
awal dan kondisi akhir algoritma.
2. Kamus
Digunakan untuk mendefinisikan nama konstanta, nama type, nama variable, nama prosedur
dan nama fungsi yang digunakan dalam algoritma.
3. Algoritma
Digunakan untuk menuliskan algoritma dalam menyelesaikan masalah secara terstruktur.

Ketiga bagian algoritma diatas dapat dituliskan dengan struktur :


Algoritma_Name NamaIdentifier
Kamus/Deklarasi
[ Const
NamaKonstatnta = Nilai ]
[ Type
NamaType = Type Baru
.
.
End]
[ Var
Namavariabel : Typedata]
[ Procedure/Function NamaModul [(Parameter)]
[var
Namavar : Type]
Begin
.
.
Endprocedure/function ]
Algoritma :
. Input
. Proses
. Output
2.2. Constanta, Variabel dan Type Data
Constanta adalah data yang nilainya tidak dapat berubah walaupun ada operasi selama
proses eksekusi.
Variabel adalah data yang nilainya dapat berubah karena ada operasi selama proses eksekusi.
Aturan penamaan variabel dan constanta :
-

Diawali dengan huruf

Diikuti huruf, angka

Diantara character tidak dapat menggunakanx Spesial character kecuali under score (_)

Contoh :
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 10

A, A1, A2b, A_B, Pi


Type Data digunakan untuk menentukan nilai data yang terkandung dalam variabel.
Seperti : Char, string, Numerik, date, time, boolean
Char : huruf, angka, tanda baca dan simbol.
String : gabungan dua atau lebih character.
Numerik : digit angka 0-9 untuk bilangan desimal data numeric dibagi dua :
Numerik bulat : byte, integer, word, longint
Numerik pecahan : real, single, double
Date : data tanggal dd/mm/yyyy
Time : data waktu hh:mm:ss
Boolean : data logika true dan false
Tabel 2.1. Type Data Numerik Bulat

Tabel 2.2. Type Data Numerik Pecahan

2.3. Statement Input Output


Statement Input Output digunakan untuk menerima data masukan dan menampilkan
hasil ke media keluaran.
Statement Input :
Read|Input(Namavar)
Contoh : Read(A) atau Input(A)
Statement Output :
Write|Output|Print([Literal,] Namavar)
Literal dapat berbentuk keterangan yang penulisannya diapit tanda petik tunggal atau petik ganda.
Contoh :
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 11

Write(A)
Write(Nilai A = , A)
atau
Print(A)
Print(Nilai A = , A)
atau
Output(A)
Output(Nilai A = , A)

2.4. Proses dan Operasi


Proses digunakan untuk melakukan pengolahan data dengan menggunakan notasi
asignment ( ).
Contoh : A B+C
Operasi digunakan untuk melakukan proses pengoperasian data terdiri dari :
Operasi Aritmatika :
^, *, /, \, +, -, mod
Operasi Relasional :
<, >, =, <=, >=, <>
Operasi Logika :
And, Or, Not, Xor
1 : True
0 : False
Tabel 2.3. Tabel kebenaran Operasi Logika :
Input

Output

AND

OR

XOR

Tabel 2.4. Tabel kebenaran Operasi Logika NOT :


INPUT 1

OUTPUT NOT

2.5. Tahapan Pembuatan Algoritma / Program


Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam pemrograman
dengan komputer adalah:
1. Definisikan Masalah
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 12

Berikut adalah hal-hal yang harus diketahui dalam analisis masalah supaya kita mengetahui
bagaimana permasalahan tersebut:
a. Kondisi awal, yaitu input yang tersedia.
b. Kondisi akhir, yaitu output yang diinginkan.
c. Data lain yang tersedia.
d. Operator yang tersedia.
e. Syarat atau kendala yang harus dipenuhi.
Contoh kasus:
Menghitung biaya percakapan telepon di wartel. Proses yang perlu diperhatikan adalah:
a. Input yang tersedia adalah jam mulai bicara dan jam selesai bicara.
b. Output yang diinginkan adalah biaya percakapan.
c. Data lain yang tersedia adalah besarnya pulsa yang digunakan dan biaya per pulsa.
d. Operator yang tersedia adalah pengurangan (-), penambahan (+), dan perkalian (*).
e. Syarat kendala yang harus dipenuhi adalah aturan jarak dan aturan waktu.
2. Buat Algoritma dan Struktur Cara Penyelesaian
Jika masalahnya kompleks, maka dibagi ke dalam modul-modul. Tahap penyusunan
algoritma seringkali dimulai dari langkah yang global terlebih dahulu. Langkah global ini
diperhalus sampai menjadi langkah yang lebih rinci atau detail. Cara pendekatan ini sangat
bermanfaat dalam pembuatan algoritma untuk masalah yang kompleks. Penghalusan langkah
dengan cara memecah langkah menjadi beberapa langkah. Setiap langkah diuraikan lagi
menjadi beberapa langkah yang lebih sederhana. Penghalusan langkah ini akan terus berlanjut
sampai setiap langkah sudah cukup rinci dan tepat untuk dilaksanakan oleh pemroses.
3. Menulis Program
Algoritma yang telah dibuat, diterjemahkan dalam bahasa komputer menjadi sebuah program.
Perlu diperhatikan bahwa pemilihan algoritma yang salah akan menyebabkan program
memiliki untuk kerja yang kurang baik. Program yang baik memiliki standar penilaian:
a. Standar teknik pemecahan masalah
- Teknik Top-Down
Teknik pemecahan masalah yang paling umum digunakan. Prinsipnya adalah suatu masalah
yang kompleks dibagi-bagi ke dalam beberapa kelompok masalah yang lebih kecil. Dari
masalah yang kecil tersebut dilakukan analisis. Jika dimungkinkan maka masalah tersebut
akan dipilah lagi menjadi subbagiansubbagian dan setelah itu mulai disusun langkah-langkah
penyelesaian yang lebih detail.
- Teknik Bottom-Up
Prinsip teknik bottom up adalah pemecahan masalah yang kompleks dilakukan dengan
menggabungkan prosedur-prosedur yang ada menjadi satu kesatuan program sebagai
penyelesaian masalah tersebut.
b. Standar penyusunan program
- Kebenaran logika dan penulisan.
- Waktu minimum untuk penulisan program.
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 13

- Kecepatan maksimum eksekusi program.


- Ekspresi penggunaan memori.
- Kemudahan merawat dan mengembangkan program.
- User Friendly.
- Portability.
- Pemrograman modular.
4. Mencari Kesalahan
a. Kesalahan sintaks (penulisan program).
b. Kesalahan pelaksanaan: semantik, logika, dan ketelitian.
5. Uji dan Verifikasi Program
Pertama kali harus diuji apakah program dapat dijalankan. Apabila program tidak dapat
dijalankan maka perlu diperbaiki penulisan sintaksisnya tetapi bila program dapat dijalankan,
maka harus diuji dengan menggunakan data-data yang biasa yaitu data yang diharapkan oleh
sistem. Contoh data ekstrem, misalnya, program menghendaki masukan jumlah data tetapi
user mengisikan bilangan negatif. Program sebaiknya diuji menggunakan data yang relatif
banyak.
6. Dokumentasi Program
Dokumentasi program ada dua macam yaitu dokumentasi internal dan dokumentasi eksternal.
Dokumentasi internal adalah dokumentasi yang dibuat di dalam program yaitu setiap kita
menuliskan baris program sebaiknya diberi komentar atau keterangan supaya mempermudah
kita untuk mengingat logika yang terdapat di dalam instruksi tersebut, hal ini sangat
bermanfaat ketika suatu saat program tersebut akan dikembangkan. Dokumentasi eksternal
adalah dokumentasi yang dilakukan dari luar program yaitu membuat user guide atau buku
petunjuk aturan atau cara menjalankan program tersebut.
7. Pemeliharaan Program
a. Memperbaiki kekurangan yang ditemukan kemudian.
b. Memodifikasi, karena perubahan spesifikasi.
Buatlah project dengan nama : project2 dan Unit dengan nama : unit2 dengan layout seperti
gambar dibawah ini:

unit unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 14

Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
p: TEdit;
l: TEdit;
luas: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
luas.Text:= inttostr(strtoint(p.Text)+strtoint(l.Text));
end;
end.

Tambahkan Unit : unit21 dalam project tersebut dengan layout :

unit unit21;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label3: TLabel;
r: TEdit;
luas: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
const pi=3.14;
begin
luas.Text:= floattostr(pi*strtoint(r.Text)*strtoint(r.Text));
end;
end.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 15

Pertemuan 3
Macam-macam/bentuk-bentuk algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut
dapat berupa runtunan aksi (sequence), pemilihan aksi (selection), pengulangan aksi (iteration)
atau kombinasi dari ketiganya. Jadi struktur dasar pembangunan algoritma ada tiga, yaitu:
1. Struktur Runtunan
Digunakan untuk program yang pernyataannya sequential atau urutan.
2. Struktur Pemilihan
Digunakan untuk program yang menggunakan pemilihan atau penyeleksian kondisi.
3. Struktur Perulangan
Digunakan untuk program yang pernyataannya akan dieksekusi berulang-ulang.
Buatlah project dengan nama : project3 dan Unit dengan nama : unit3 dengan layout seperti
gambar dibawah ini:

unit unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
A: TEdit;
B: TEdit;
H: TEdit;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 16

procedure Button6Click(Sender: TObject);


private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) < strtoint(B.Text));
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) > strtoint(B.Text));
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) = strtoint(B.Text));
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) <= strtoint(B.Text));
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) >= strtoint(B.Text));
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
H.Text := booltostr(strtoint(A.Text) <> strtoint(B.Text));
end;
end.
Tambahkan Unit : unit31 dalam project tersebut dengan layout :

unit unit31;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
Tp3 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 17

Label3: TLabel;
n1: TEdit;
n2: TEdit;
H: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
p3: Tp3;
implementation
{$R *.dfm}
procedure Tp3.Button1Click(Sender: TObject);
begin
H.Text:=booltostr( (strtoint(n1.Text)<strtoint(n2.text)) and (strtoint(n1.Text)<=strtoint(n2.text)));
end;
procedure Tp3.Button2Click(Sender: TObject);
begin
H.Text:=booltostr( (strtoint(n1.Text)<strtoint(n2.text)) or (strtoint(n1.Text)<=strtoint(n2.text)));
end;
procedure Tp3.Button3Click(Sender: TObject);
begin
H.Text:=booltostr(
(strtoint(n1.Text)<strtoint(n2.text))
xor
(strtoint(n1.Text)<=strtoint(n2.text)));
end;
procedure Tp3.Button4Click(Sender: TObject);
begin
H.Text:=booltostr(Not (strtoint(n1.Text)<strtoint(n2.text)));
end;
end.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 18

Pertemuan 4
Algoritma dalam bentuk Flowchart
Program Flowchat
Adalah urutan logis pengambilan kepututusan untuk pemecahan masalah menggunakan
simbol.

Contoh : Buat Algoritma untuk menghitung luas persegi panjang :


Algoritma_Name Hitungluas
Var
p,l,luas : numerik
Begin
Read(p,l)
atau
p 10
l 5
luas p*l
writeln(luas persegi panjang , luas)
End
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 19

Mulai

Var
P,L,Luas : Numerik

Read (P,L)

Luas Pp*L

Write (Luas)

Selesai

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 20

Struktur Program Delphi:


Unit Namaunit;
Interface
Uses daftarunit; {misal wincrt}
[ Const
NamaKonstatnta = Nilai; ]
[ Type
NamaType = Type Baru;
.
.
End;]
[ Var
Namavariabel : Typedata;]
[ Procedure/Function NamaModul [(Parameter)] [:type hasil];
[var
Namavar : Type;]
Begin
.statement;
.
End; ]
Begin
. Input;
. Proses;
. Output;
End.
Contoh buatlah flowchart untuk memasukan sebuah bilangan dan tentukan apakah bilangan itu
positif atau negative !
Mulai

Bil : Numerik
Kep : String

Read(Bil)

Bil < 0

True

Kep=Negatif

False

Kep=Positif

Write(Kep)

Selesai

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 21

Apabila flowchart tersebut diterapkan kedalam program maka tampilan programnya adalah :

unit contoh4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm4 = class(TForm)
Label1: TLabel;
Label2: TLabel;
bil: TEdit;
kep: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
{$R *.dfm}
procedure TForm4.Button1Click(Sender: TObject);
begin
if strtoint(bil.Text) < 0 then
kep.Text:='Negatif'
else
kep.Text:=' Positif '
end;
end.
Latihan :
buatlah flowchart, algoritma dan program untuk memasukan sebuah bilangan dan tentukan
apakah bilangan itu :
Ganjil atau Genap !
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 22

Pertemuan 5
Konsep Struktur Dasar Runtunan
Struktur dasar runtunan atau sequent adalah algoritma yang dapat digunakan untuk
mencari solusi suatu permasalahan secara berurutan. Hampir semua permasalahan yang dihadapi
akan kita selesaikan dengan mengacu kepada algoritma runtunan.
Solusi penyelesaian masalah mengikuti tahapan input process output. Contoh Kuliah
adalah penererapan algoritma sequent yaitu semester 1,2,3,4,5 dan 6.

Contoh algoritma Sequent :


Untuk mendapatkan nilai akhir satu mata kuliah maka mahasiswa Pikes harus mengumpulkan
nilai-nilai berikut ini :
a. Nilai Absen
b. Nilai Tugas
c. Nilai Quiz
d. Nilai Uts dan
e. Nilai Uas
Nilai akhir dihitung berdasarkan : 10% Nilai Absen + 10% Nilai Tugas + 10% Nilai Quiz + 30%
Nilai Uts + 40% Nilai Uas.

Apabila diseselesaikan dalam algoritma, maka dapat dituliskan solusi masalahnya sebagai berikut
Algoritma strutuktur_runtunan
Var
Na,Nt,Nq,Nuts,Nuas : Integer
Nak

: Real

Begin
Read(Na,Nt,Nq,Nuts,Nuas)
Nak 0.1*Na+0.1*Nt+0.1*Nq+0.3*Nuts+0.5*Nuas
Write(Nak)
End

Apabila algoritma diatas diterapkan kedalam program, maka dapat diimplementasikan seperti
gambar dibawah ini :

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 23

unit Unit5;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Na: TEdit;
Nt: TEdit;
Nq: TEdit;
Nuts: TEdit;
Nuas: TEdit;
Nak: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 24

{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);


begin

Nak.Text:=floattostr(strtoint(na.Text)*0.1+strtoint(nt.Text)*0.1+strtoint(nq.Text)*0.1+strtoint(nu
ts.Text)*0.3+strtoint(nuas.Text)*0.4);
end;

end.

Latihan :
Buatlah Algoritma, Flowchart dan Program secara sequent untuk mencatat data rekam medik
pasien pada sebuah klinik atau puskesmas !

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 25

Pertemuan 6
Algoritma pengambilan keputusan (tunggal)
Digunakan untuk melakukan penyeleksian kondisi tunggal yang dapat menghasilkan dua
keputuasn, keputusan kondisi benar dan keputusan kondisi salah.
Syntak penulisan algoritma If kondisi tunggal :
If (kondisi) then
Statement1
Else
Statement2
Endif
Keterangan :
Apabila kondisi benar maka statement1 dikerjakan dan apabila kondisi salah maka statement 2
dikerjakan. Apabila digambarkan dalam program flowchart maka struktur kondisi dapat
digambarkan :

Kondisi

True

Statement1

False

Statement2

Contoh :
Buatlah algoritma untuk memasukan data dua bilangan a dan b dan tentukan apakah a>b atau
sebaliknya.
Syntak penulisan algoritma If kondisi tunggal :

Algoritma_Name iftunggal
var
a,b:numerik
ket : string
Begin
Read(a,b)
if a>b then
ket a lebih besar b
else
ket a lebih kecil b
endif
writeln(ket)
End

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 26

Algoritma diatas dapat diimplementasikan dalam struktur program flowchart :


Mulai

A,b : numerik
Ket : string

Read(a,b)

True

a>b

Ket

a lebih besar b

False

Ket

a lebih kecil b

Writeln(ket)

Selesai

Apabila Algoritma dan Flowchart diatas diterapkan dalam program dapat dilihat dalam gambar
dibawah ini.

unit flowcart;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 27

Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
A: TEdit;
B: TEdit;
K: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if strtoint(A.Text) > strtoint(B.Text) then
k.Text:='A Lebih Besar B'
else
k.Text:='A Lebih Kecil B'
end;
end.
Masih banyak kasus-kasus yang terdapat dalam aktifitas kita yang dapat diselesaikan dengan
kondisi tunggal menghasilkan dua buah keputusan. Carilah kasus tersebut dan implementasikan
dengan algoritma, flowchart dan program.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 28

Pertemuan 8
Algoritma Pengambilan Keputusan (Majemuk)
8.1. Struktur If Majemuk
Digunakan untuk melakukan penyeleksian terhadap N kondisi dengan keputusan
sebanyak N+1.
Syntak penulisan algoritma If kondisi majemuk :
If (kondisi1) then
Statement1
Else
If (kondisi2) then
Statement2
Else
If (kondisiN) then
StatementN
Else
Statement N+1
Endif
Endif
Endif
Apabila kondisi1 benar maka statement1 dikerjakan, apabila kondisi2 benar maka statement 2
dikerjakan dan seterusnya.
Contoh:
Buatlah algoritma untuk menentukan nama hari berdasarrkan nomor hari dengan ketentuan
sebagai berikut :
No. hari

Nama Hari

Senin

Selasa

Rabu

Kamis

Jumat

Sabtu

Minggu

Algoritma_Name Seleksihari
Var
nh:numerik
nmh:string
Begin
Read(nh)
if nh=1 then
nmh Senin
else
if nh=2 then
nmh Selasa
else
if nh=3 then
nmh Rabu
else
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 29

if nh=4 then
nmh Kamis
else
if nh=5 then
nmh Jumat
else
if nh=6 then
nmh Sabtu
else
nmh Minggu
Endif
Endif
Endif
Endif
Endif
Endif
Write(nama hari : ,nmh)
End
8.2. Struktur Case Of
Struktur control ini digunakan untuk menyeleksi expresi (ungkapan yang akan diseleksi)
yang mempunyai nilai expresi majemuk. Expresi dapat berbentuk data numurik bulat atau
character yang dapat mempunyai nilai tunggal atau pun nilai range.
Syntax penulisan case of
case expression of
Nexp1 : statement1
...
NexpN: statementN
else
statementN+1
endcase
Apabila Nexp1 sama dengan Expression maka stattemen1 dikerjakan
Apabila Nexp2 sama dengan Expression maka stattemen2 dikerjakan dan seterusnya sampai
NexpN. Jika tidak ada yang benar maka statementN+1 dikerjakan.
Contoh :
Buat Algoritma untuk menentukan keterangan dari karakter yang dimasukan dari keyboard.

Algoritma_Name ContohCase
Var
Ch : char
Begin
Read(Ch)
case Ch of
'A'..'Z', 'a'..'z : WriteLn('Letter')
'0'..'9
: WriteLn('Digit')
'+', '-', '*', '/ : WriteLn('Operator')
else
WriteLn('Special character');
endcase
End

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 30

Buatlah algoritma untuk membaca data nilai mahasiswa dengan data : Nama Mahasiswa, Mata
Kuliah, Sks dan Nilai serta menentukan nilai mutu yang diperoleh mahasiswa berdasarkan nilai
yang diperolah dengan ketentuan :
Nilai
Mutu
0-49
0
50-59
1
60-69
2
70-84
3
85-100
4
Total Nilai = Sks * Mutu
Ip = Total Nilai / Sks
Algoritma_Name ContohCase1
Var
Ns, Mtk : String
Sks, Nilai, Mutu, Tn, Ip : Numerik
Begin
Read(Ns, Mtk, Sks, Nilai)
Case Nilai Of
85 to 100 : Mutu = 4
70 to 84 : Mutu = 3
60 to 69 : Mutu = 2
50 to 59 : Mutu = 1
Else
Mutu = 0
EndCase
Tn = Sks * Mutu
Ip = Tn / Sks
Write (Ns, Mtk, Sks, Nilai, Mutu, IP)
End
Apabila algoritma diatas diimplementasikan dengan program flowchart, maka program
flowchartnya adalah sebagai berikut :
Mulai

Var
Ns, Mtk : String
Sks,
Mulai
Nilai, Mutu, Tn, Ip: Single

Input (Ns, Mtk,


Sks, Nilai)

Nilai
85-100

Mutu = 4

T
Nilai
70 - 84

Mutu = 3

T
Nilai
60 - 69

Mutu = 2

T
Nilai
50-59

Mutu = 1

T
Mutu = 0

Tn = Sks*Mutu

Ip = Tn / Sks

Print (Ns, Mtk, Sks,


Nilai, Mutu, Ip)

Selesai

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 31

Pertemuan 9
Algoritma Pengulangan
Struktur pengulangan digunakan untuk mengurangi penulisan algoritma/program yang
sama agar tidak dituliskan sebanyak proses yang akan terjadi dengan tujuan untuk efisiensi
struktur penulisan agar hemat dalam pemakaian memori komputer.
Terdapat 3 struktur iterasi yang dapat digunakan dalam algoritma yaitu :
1. While Do
2. Repeat Until
3. For Do

9.1. Struktur While do


Adalah struktur pengulangan yang dapat digunakan untuk mengulang statement apabila
kondisi pengulangan bernilai benar dan dihentikan apabila struktur pengulangan bernilai salah.
Syntax penulisan while adalah :
While (Kondisi) do
- Statement
EndWhile
Digunakan untuk pengulangan data numerik dan Non Numerik.
Syarat Pengulangan While Do
1. Variabel yang akan dijadikan kondisi pengu-langan harus diinisialisasi
2. Pengulangan dilakukan selama kondisi bernilai benar dan dihentikan jika kondisi bernilai
salah.
3. Perlu ada operasi untuk merubah kondisi
4. Pengulangan dapat dilaksanakan minimal Nol kali.

Contoh :
Buatlah algoritma dan program untuk menghitung total harga bayar dari 5 macam barang yang
dibeli oleh seorang pembeli, data pembeli : Nama Barang, Jumlah barang dan Harga Barang.
Harga Bayar = Jumlah barang * Harga Barang !
Algoritma_Name Loop1
Var
NB : String
E,JB,HB,HBY,THB : Numerik
E1
1
THB 0
While E <= 5 do
2
Read (NB,JB,HB)
HBY JB * HB
THB THB + HBY
Write (HBY)
EE+1
3
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 32

EndWhile
Write(THB)
End
Contoh Lain :
Buatlah algoritma dan program untuk menampilkan 10 bilangan asli dan hitung berapa jumlah
total 10 bilangan tersebut !
Output :
1
2
3
.
.
.
10
Total 10 Bilangan = .
Penyelesaian dengan Algoritma :
Algoritma_Name Loop2
Var
Bil, Totol : Numerik
Begin
Bil 1
1
Total 0
While Bil <= 10 do
2
Write(Bil)
Total Total +Bil
Bil Bil + 1
Endwhile
Write(Total)
End

9.2. Struktur Repeat Until


Adalah struktur pengulangan yang dapat digunakan untuk mengulang statement apabila
kondisi pengulangan bernilai salah dan dihentikan apabila struktur pengulangan bernilai benar.
Syntax penulisan Repeat Until adalah :

Repeat
- Statement
Until (Kondisi)
Digunakan untuk pengulangan data numerik dan Non Numerik.
Syarat Pengulangan Repeat Until
1. Variabel yang akan dijadikan kondisi pengu-langan tidak harus diinisialisasi
2. Pengulangan dilakukan selama kondisi bernilai salah dan dihentikan jika kondisi bernilai
benar.
3. Perlu ada operasi untuk merubah kondisi.
4. Pengulangan dapat dilaksanakan minimal satu kali.
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 33

Contoh :
Buatlah algoritma untuk menampilkan 10 bilangan asli dan hitung berapa jumlah total 10
bilangan tersebut !
Output :
1
2
3
.
.
.
10
Total 10 Bilangan = .
Algoritma_Name Loop3
Var
Bil, Total : Numerik
Begin
Bil 1
1
Total 0
Repeat
Write(Bil)
Total Total +Bil
Bil Bil + 1
Until Bil > 10
2
Write(Total)
End

9.3. Struktur For do


Adalah struktur pengulangan Numerik yang dapat digunakan untuk mengulang statement
dari N Sampai N1.
Syntax penulisan For do adalah :
For varcounter = N To/DownTo N1 [Step N] Do
- Statement
EndFor
Digunakan untuk pengulangan data numerik .
Syarat Pengulangan For do
1. Inisialisasi varcounter dapat langsung ditentukan pada N dan N1 (dapat naik atau turun)
2. Pengulangan dilakukan dari N sampai dengan N1.
3. Tidak perlu ada operasi untuk merubah kondisi karena setiap terjadi pengulangan nilai
varcounter otomatis bertambah atau berkurang 1 atau step.
Contoh :
Buatlah algoritma untuk menampilkan 10 bilangan asli dan hitung berapa jumlah total 10
bilangan tersebut !
Output :
1
2
3
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 34

.
.
.
10
Total 10 Bilangan = .
AlgoritmaName Loop5
Var
Bil, Total : Numerik
Begin
Total 0
For Bil = 1 to 10 do
Write(Bil)
Total Total + Bil
Endfor
Writeln(Total 10 Bilangan = ,Total)
End
9.4. Struktur Pengulangan Bersarang (Nesteed Loop)
Struktur ini digunakan untuk melakukan pengulangan bersarang atau loop dalam loop.
Untuk menyelesaikan masalah yang tidak dapat diselesaikan dalam loop tunggal. Pengulangan
bersarang ini dapat dua, tiga atau lebih disesuaikan dengan solusi penyelesaian masalah algoritma
yang akan digunakan. Penerapan struktur ini dapat seragam atau digabung dengan sintak
penulisan sebagai berikut :
Struktur 1 :
While (Kondisi 1)
While (Kondisi 2)
- Statement
endwhile
Endwhile
Struktur 2 :
Repeat
Repeat
-Statement
Until (Kondisi2)
Until (Kondisi1)
Struktur 3 :
For varcounter1 = N To/DownTo N1 [Step N] Do
For varcounter2 = N To/DownTo N1 [Step N] Do
- Statement
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 35

EndFor
EndFor
Menentukan Loop dalam dan Loop luar
Ditentukan berdasarkan pergerakan :
Loop bergerak pertama adalah loop dalam
Loop bergerak berikutnya adalah loop luar
Contoh :
k
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
b
Loop bergerak pertama adalah k, dan loop bergerak kedua adalah b. maka k adalah loop dalam
dan b adalah loop luar. Apabila diimplementasikan ke algoritma adalah :

Algoritma_Name NLoop
Var
b,k: Integer
Begin
B=1
While b <=4 do
For k = 1 to 5 do
write( k)
endfor
writeln;
b=b+1
Endwhile
End
Exercise:
Buat Algoritma untuk menampilkan deret dibawah ini :
1
12
123
1 2 3 4 dan

12345
1234
123
12
1

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 36

Pertemuan 10
Algoritma Procedure, Function dan ARRAY/LARIK
10.1. Modul Program
Modul digunakan untuk membagi algoritma/program yang besar menjadi potongan
program yang lebih kecil sehingga program yang besar dapat diselesaikan oleh beberapa orang
secara terpisah ( team work ) dengan tujuan untuk mempercepat pembuatan algoritma/program.
Modul dibagi dua yaitu :
1. Procedure
Adalah modul program yang dapat digunakan untuk membawa suatu nilai yang dapat
dipakai untuk modul itu sendiri, modul yang lain atau program utama.

Syntax penulisan Procedure :


Procedure Nama_Proc [(Parameter : Type Data)]
Var Nama_var : Type Data
Begin
- Statement
End
Memanggil Modul Procedure :
Nama_Procedure[(Daftar Argument)]

Contoh :
AlgoritmaName ContohModul
Var
A,B : Numerik
Procedure BacaData
Begin
Read(A)
Read(B)
End
Procedure CetakData
Begin
Write(Nilai A : ,A)
Write(Nilai B : ,B)
End
Begin
BacaData
CetakData
End
2. Function
Modul program yang dapat digunakan untuk menghitung dan mengembalikan suatu nilai
yang dapat digunakan untuk modul itu sendiri, modul yang lain atau program utama.
Penulisan modul Function
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 37

Function Nama_Function [(Parameter : Type Data)] : Type Hasil


Var Nama_var : Type Data
Begin
- Statement
- Nama_Function = Operasi
End
3. Parameter dan Rekursif
Adalah variabel yang digunakan untuk mengirim nilai argumen untuk proses komunikasi
data didalam suatu algoritma/program.
Terdapat dua buah parameter dalam suatu program yaitu :
1. By Reference
Yaitu parameter yang dapat merubah nilai variabel global yang digunakan sebagai argumen.
Cirinya didepan deklarasi parameter terdapat statement var.
Contoh:
Procedure cetak(var A: integer)
2. By Value
Yaitu parameter yang tidak dapat merubah nilai variabel global yang digunakan sebagai
argumen. Cirinya didepan deklarasi parameter tidak terdapat statement var.
Contoh: Procedure cetak(A: integer)
AlgoritmaName Parameter
Var A,B : Numerik
Procedure CetakData(var C : integer, D : integer )
Begin
CC+100; DD+100
Write(Nilai C : ,C) //C=200
Write(Nilai D : ,D) //D=200
End
Begin
A 100
B 100
CetakData(A,B)
Write(Nilai A : ,A) //A=200
Write(Nilai B : ,B) // B=100
End
Modul Rekursif
Adalah modul yang memanggil dirinya sendiri. Modul ini banyak digunakan untuk proses
pemanggilan modul secara berulang. Misalnya untuk menghitung nilai sebuah bilangan yang
difaktorialkan maka dapat diselesaikan dengan system rekursif.
Contoh :
5! = 5*4!=4*3!=3*2!=2*1!=1*1
Algoritma_Name Rekursif
Var
A : Numerik
Function Faktorial (N:Numerik):Numerik
If N= 1 Then
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 38

Faktorial 1
Else
Faktorial N*(Faktorial(N-1)
Endif
End
Begin
A5
Write(Nilai Faktorial : ,Faktorial(A))
End
Memanggil Function
Nama_Function[(Argument)]
Contoh :
AlgoritmaName Fungsi
Var
A,B : Numerik
Function Hitung : Numerik
Begin
Hitung = A * B
End
Begin
Read(A)
Read(B)
Write(Nilai Fungsi Hitung :, Hitung)
End
10.2. Array
Adalah deretan data terstruktur yang terdiri sejumlah elemen data dimana setiap elemen
data mempunyai type data yang sama.
Array dapat kita amati disekeliling kita seperti : Kereta api, Antrian Tiket, Sepeda motor dan lain
lain.
Array dapat memiliki dimensi satu, dua, tiga dan seterusnya.
1. Array 1 dimensi
Adalah array yang hanya memiliki satu kelompok elemen data yang dapat digunakan.
Perhatikan Gambar array dibawah ini :

Untuk variabel array A tersebut kita dapat memberikan type data integer, karakter, string dan
type data yang lain.
Deklarasi variabel array 1 dimensi :
Var
Nama_var : Array[1..N] of typedata
Contoh : Var A : Array[1..5] of integer
Variabel array diatas dapat digunakan untuk :
Input : Read(NamaVar[Elemen])
Contoh : Read(A[1])
Proses : NamaVar[Elemen] Nilai Data
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 39

Contoh : A[1] 10
output : Write(NamaVar[Elemen])
Contoh : Write(A[1])

Perhatikan Contoh Algoritma dibawah ini :

Algoritma_Name Array1
Var
A : Array[1..5] of integer
E : integer
Procedure isiarrayA
Begin
For E = 1 to 5 d0
Read(A[E])
Endfor
End
Procedure cetakarrayA
Begin
For E = 1 to 5 d0
Write(A[E])
Endfor
End
Begin
isiarrayA
cetakarrayA
End
2. Array Dua Dimensi
Adalah array yang mempunyai dua kelompok elemen data yaitu baris dan kolom.
Perhatikan gambar dibawah ini :

Deklarasi variabel array dua dimensi :


Var
Nama_var : array[1..N,1..N1] of typedata
Contoh :
Var A : array[1..3,1..4) of integer
Algoritma_Name Array2d
Var
A : array[1..3,1..4] of integer
b,k : integer
Procedure isiarrayA
Begin
For b = 1 to 3 do
For k = 1 to 4 do
Read(A[b,k])
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 40

Endfor
Endfor
End
Procedure CetakArrayA
Begin
For b = 1 to 3 do
For k = 1 to 4 do
Write (A[b,k])
Endfor
Endfor
End
Begin
IsiArrayA
CetakArrayA
End
Studi kasus 1
Perhatikan Operasi penjumlahan matriks dibawah ini :

Buatlah algoritma dan program untuk membaca data array A,B dan menghitung operasi
penjumlahan array A dan B !
Studi Kasus 2
Perhatikan Operasi perkalian matriks dibawah ini :

Buatlah algoritma dan program untuk membaca data array A,B dan menghitung operasi perkalian
array A dan B !

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 41

Pertemuan 11
Algoritma Sorting
Sorting atau pengurutan data adalah proses yang sering harus dilakukan dalam
pengolahan data. Bahkan mesin otomatik yang pertama kali lahir adalah mesin pengurut, dan
masih dipakai sampai saat ini misalnya untuk menyortir surat berkode pos di kantor pos dengan
mesin terotomatisasi. Dibedakan dua macam pengurutan :
-

pengurutan internal, yaitu pengurutan terhadap sekumpulan data yang disimpan dalam
media internal komputer yang dapat diakses setiap elemennya secara langsung. Maka dapat
dikatakan sebagai pengurutan tabel.

pengurutan eksternal, yaitu pengurutan data yang disimpan dalam memori sekunder,
biasanya data bervolume besar sehingga tidak mampu untuk dimuat semuanya dalam
memori.
Algoritma pengurutan adalah salah satu contoh solusi algoritmik yang kaya : satu macam

persoalan (pengurutan), dapat dilakukan dengan puluhan macam algoritma.


Algoritma pengurutan internal yang utama antara lain :
- Counting Sort
- Maximum Sort
- Insertion Sort
- Bubble sort
- Shaker sort
- Heap Sort
- Shell sort
- Quick Sort
- Radix sort
Untuk semua persoalan sorting, dipakai kamus sebagai berikut :

dan persoalannya adalahDiberikan sebuah Tabel integer T [1..N] yang isinya sudah terdefinisi.
Tuliskan sebuah algoritma yang mengurutkan elemen tabel sehingga terurut membesar :
T1 T2 T3 ...... TN

11.1. Pengurutan Dengan Pencacahan

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 42

Pengurutan dengan pencacahan adalah pengurutan yang paling sederhana. Jika diketahui
bahwa data yang akan diurut mempunyai daerah jelajah (range) tertentu, dan merupakan bilangan
bulat, misalnya [Min..Max] maka cara paling sederhana untuk mengurut adalah :

1. Sediakan array TabCount [Min..Max] yang diinisialisasi dengan nol, dan pada akhir proses
TabCounti berisi banyaknya data pada tabel asal yang bernilai i.
2. Tabel dibentuk kembali dengan menuliskan kembali haraa-harga yang ada.

Catatan : TabCount Tii dituliskan untuk menunjukkan bahwa indeks T adalah i, dan Ti
merupakan indeks dari TabCount.

11.2. Pengurutan berdasarkan Seleksi


Contoh : maksimum suksesif:
Idenya adalah menghasilkan nilai maksimum tabel (untuk efisiensi, hanya indeks dimana
harga maksimum ditemukan yang dicatat), kemudian menukarnya dengan elemen terujung;
elemen terujung ini "diisolasi" dan tidak diikut sertakan pada proses berikutnya. proses diulang
untuk sisa tabel. Karena elemen terujung bernilai maksimum adalah indeks pertama tabel, maka
tabel terurut mengecil :
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 43

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 44

Cermati ulang kebenaran algoritma di atas, dan gantilah search dengan boolean Pencarian
dengan sentinel dapat dimanfaatkan pada Insertion Sort. Pada kasus ini, sentinel ditaruh pada T0
karena pada tahapan ke Pass, pencarian sekuensial dilakukan pada T [pass-1..1]. Berikut ini
adalah algoritma untuk Insertion sort dengan sentinel :

11.3. Pengurutan Berdasarkan Pertukaran Harga


Contoh : Bubble Sort
Idenya adalah gelembung air yang akan "mengapung" untuk tabel yang terurut membesar
: elemen bernilai kecil akan "diapungkan" (ke indeks terkecil), artinya diangkat ke atas (indeks
terkecil) melalui pertukaran. Proses dilakukan sebanyak N tahapan (yang dalam sorting disebut

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 45

sebagai "pass").Pada setiap Pass, tabel "terdiri dari" dua bagian : bagian yang sudah terurut yaitu
[1..Pass-1] dan ide dasarnya adalah mengapungkan elemen ke "pass" sampai pada tempatnya.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 46

Pertemuan 12
Algoritma Searching
Searching (pencarian) merupakan proses yang fundamental dalam pengolahan data.
Pencarian adalah menemukan nilai data tertentu didalam sekumpulan data yang bertipe sama
(baik bertipe dasar atau bertipe bentukan).
Pencarian data digunakan untuk :
-

Insert

Update

Delete dan

Report

Pembahasan Algoritma Searching meliputi :


-

SequentialSearch(pencarianberurutan)

Binary Search (pencarian bagi dua)


Masalah pencarian adalah menspesifi- kasikan data didalam larik sebagai berikut :

Diberikan larik L yang sudah terdefinisi elemen-elemennya, dan x adalah elemen yang bertipe
sama dengan elemen larik L, carilah x didalam larik L.
Hasil atau keluaran dari persoalan pencarian dapat bermacam-macambergantung pada pesifikaasi
rinci dari persoalan tersebut, misalnya :
a. Pencarian hanya untuk memeriksa keberadaan x, keluaran yang diinginkan misalnya pesan
bahwa x ditemukan atau tidak ditemukan didalam larik.
b. Hasil pencarian adalah indeks elemen larik. Jika x ditemukan maka indeks elemen larik
tempat x berada diisikan kedalam idx. Jika x tidak terdapat didalam larik L, maka idx diisi
dengan harga khusus , misalnya -1

c. Hasil pencarian adalah sebuah nilai boolean yang menyatakan status hasil pencarian. Jika x
ditemukan maka sebuah perubah bertipe boolean, misalnya ketemu diisi dengan nilai true,
sebaliknya diisi dengan nilai false. Hasil pencarian ini selanjutnya disimpulkan pada bagian
pemanggilan prosedur.
Contoh :
Perhatikan larik L diatas :
Misalkan x=68, maka ketemu=true, dan x=100, maka ketemu=false.
(1) If idx <> -1 then {x ditemukan}
L[idx] L[idx]+1 (manipulasi nilai x)
Endif

(2) If ketemu then {ketemu = true}


write(x, ditemukan)
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 47

else
write(x,tidak ditemukan)
endif
Untuk masing-masing algoritma, tipe larik yang digunakan didefinisikan dibagian deklarasi
global . Larik L bertipe larik integer.
Const
Nmax = 100 {jumlah maximum elemen larik}
Type
Larikint = array[1..Nmax] of integer
1. Algoritma pencarian Seguential
Adalah proses membandingkan setiap elemen larik satu persatu secara beruntun, mulai dari
elemen pertama sampai elemen yang dicari ditemukan, atau seluruh elemen sudah diperiksa.
Contoh perhatikan larik L dibawah ini dengan n=6 elemen

Terdapat dua versi algoritma pencarian sequential :


1. Aksi pembandingan dilakukan seba- gai kondisi pengulangan.
2. Aksi pembandingan dilakukan didala- lam pengulangan.
Setiap elemen larik L dibandingkan dengan x mulai dari elemen pertama L[1]. Aksi
pembandingan dilakukan selama indeks larik i belum melebihi n dan L[i] tidak sama dengan x.
aksi pembandingan dihentikan bila L[i] sama dengan x atau i = n. elemen terakhir L[n] diperiksa
secara khusus.
Keluaran yang dihasilkan oleh prosedur pencarian adalah sebuah perubah boolean (misal ketemu)
yang bernilai true jika x ditemukan, atau bernilai false jika x tidak ditemukan.
Procedure SeqSearch( L : Larikint, n: integer, x : integer, var ketemu : boolean)
Var
i : integer
Begin
i1
While (i < n) and (L[i] <> X) do
i i +1
endwhile
if L[i]=x then
ketemu true
else
ketemu false
endif
End
Function SeqSearch1( L : Larikint, n: integer, x : integer) boolean
Var
i : integer
Begin
i1
While (i < n) and (L[i] <> X) do
i i +1
endwhile
Modul TIK3 Pikes-Poltekes Tasik Malaya
Disusun Oleh : Amroni. M.Kom # 48

if L[i]=x then
return (true)
else
return (false)
endif
End
Procedure SeqSearch2( L : Larikint, n: integer, x : integer, idx : integer)
Var
i : integer
Begin
i1
While (i < n) and (L[i] <> X) do
i i +1
endwhile
if L[i]=x then
idx i
else
idx -1
endif
End
Function SeqSearch1( L : Larikint, n: integer, x : integer) integer
Var
i : integer
Begin
i1
While (i < n) and (L[i] <> X) do
i i +1
endwhile
if L[i]=x then
return (i)
else
return (-1)
endif
End
Procedure SeqSearch3( L : Larikint, n: integer, x : integer, ketemu : boolean)
Var
i : integer
Begin
i1
Ketemu false
While (i <= n) and (not ketemu) do
if L[i]=x then
ketemu true
else
ii+1
endif
endwhile
End
Function SeqSearch4( L : Larikint, n: integer, x : integer) boolean
Var
i : integer
Begin
i1
Ketemu false
While (i <= n) and (Not ketemu) do
Modul TIK3 Pikes-Poltekes Tasik Malaya
Disusun Oleh : Amroni. M.Kom # 49

if L[i]=x then
Ketemu true
return(ketemu)
else
ii+1
endif
i i +1
endwhile
End
2. Algoritma Binary Search
Algoritma yang digunakan untuk pencarian data dengan waktu yang cepat. Prinsip
pencarian dengan membagi data atas dua bagian. Data yang tersimpan dalam larik harus sudah
terurut. Misalkan indeks kiri adalah i dan indeks kanan adalah j. pada mulanya i diinisialisasi
dengan 1. dan j dengan n.
Langkah Pencarian :
1. Bagi dua elemen larik pada elemen tengah . Elemen tengah adalah elemen dengan indeks
k = (i+j) div
2. elemen tengah L[k] membagi larik menjadi dua bagian yaitu bagian kiri L[i..k] dan bagian
kanan L[k+1..j].Periksa apakah L[k]=x. jika L[k]=x, pencarian selesai sebab x sudah
ditemukan. Tetapi jika L[k]<>x harus ditentukan apakah pencarian akan dilakukan dilarik
bagian kiri atau dibagian kanan. Jika L[k] < x, maka pencarian dilakukan lagi pada larik
bagian kiri. Sebaliknya jika L[k] > x pencarian dilakukan lagi pada larik bagian kanan.
3. Ulangi langkah 1 hingga x ditemukan atau i > j (yaitu ukuran larik sudah nol).
Contoh : misalkan diberikan larik L dengan delapan buah elemen yang sudah terurut menurun :

Procedure BinarySearch( L : Larikint, n: integer, x : integer, idx : integer)


Var
i,j,k : integer
ketemu : boolean
Begin
i 1; j n; ketemu false
While (Not ketemu) and (I <=j) do
k (i +j) div 2 {bagi dua larik L
pada posisi k}
if L[k]=x then
ketemu true
else
if L[k] >x then
i K+1
else
jk1
endif
endif
endwhile
if ketemu then
idx k
else
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 50

idx -1
endif
end
Tugas :
Implementasikan algoritma diatas kedalam program dan amati kecepatan pencarian antara
sequential search dengan binary search.

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 51

Pertemuan 13
Implementasi algoritma dalam bidang RMIK
Proses rekam medik data pasien dapat diterapkan dengan memanfaatkan data terstruktur array
atau record. Data yang telah tersimpan kedalam data terstruktur tersebut dapat digunakan dalam
proses pengurutan atau pencarian data pasien. Penerapan kasus tersebut dapat diselesaikan
dengan disain form program seperti gambar dibawah ini :

Dengan mengacu pada tampilan gambar diatas maka buatlah :


-

Algoritmanya

Flwchartnya dan

Programnya !

Kembangkanlah data diatas dihubungkan dengan data penyakit, pemeriksaan medis dan
pemberian obat kepada pasien.
Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 52

Daftar Pustaka

1.

Sismoro, Heri. 2005. Pengantar Logika Informatika, Algoritma dan Pemrograman


Komputer. Yogyakarta : ANDI

2.

Pranata, A. 2005. Algoritma dan Pemrograman. Yogyakarta: Penerbit Graha Ilmu


Permasalahan (case study)

3. Rinaldi Munir, 2005, Algoritma dan Pemrograman dalam Bahasa Pascal dan C, Bandung :
Penerbit Informatika
4. Ebook/Internet

Modul TIK3 Pikes-Poltekes Tasik Malaya

Disusun Oleh : Amroni. M.Kom # 53

Anda mungkin juga menyukai