Anda di halaman 1dari 39

TUGAS MANDIRI

Makalah Logika Informatika dan Algoritma


Mata Kuliah: Logika Informatika dan Algoritma

Nama Mahasiswa : Antoni


NIM

: 140210007

Kode Kelas

: 141-IS01T-N1

Dosen

: Cosmas Eko Suharyanto,


S.Kom.

UNIVERSITAS PUTERA BATAM


2014

Kata Pengantar

Puji dan syukur kehadirat Tuhan Yang Maha Kuasa yang telah
mencurahkan segala rahmat dan karunianya kepada kita semua.Karena hanya
dengan berkat rahmat dan hidayah-Nya jualah penulis dapat menyelesaikan tugas
pembuatan makalah Mata Kuliah Logika Informatika dan Algoritma ,sesuai dengan
waktu yang telah ditentukan.
Dengan selesainya makalah ini penyusun mengucapkan terima kasih kepada
Bapak Cosmas Eko Suharyanto, S.Kom.. selaku dosen mata kuliah Logika
Informatika dan Algoritma yang telah memberikan bimbingan kepada saya.
Semoga makalah ini dapat bermanfaat bagi para pembaca dan bagi
penyusun sendiri. Penyusun menyadari bahwa makalah ini masih terdapat beberapa
kekurangan, oleh karena itu kritik yang membangun untuk penulisan selanjutnya
sangat penulis harapkan.

Batam, Desember 2014


Penulis ,

Antoni
i|Page

Daftar Isi
Kata Pengantar

Dafttar Isi

ii

Bab 1 Pendahuluan

1.1 Latar Belakang

1.2 Tujuan

Bab 2 Pembahasan

2.1. Pengertian Algoritma Dan Pemograman

2.2. Definisi Algoritma

2.3. Aturan Penulisan Algoritma

2.4. Pengaplikasian Dalam Free Pascal

11

Bab 3 Penutup

36

3.1. Kesimpulan

36

3.2. Referensi

36

ii | P a g e

BAB 1
PENDAHULUAN
1.1. LATAR BELAKANG
Pesatnya teknologi, terutama teknologi komputer sudah tak bisa
dipungkiri lagi, bagi yang mengikuti perkembangannya, ia tidak akan
dipandang sebelah mata. Sebaliknya, bagi

yang tidak mengikuti

perkembangannya, bersiaplah untuk mundur secara suka rela dari panggung


kompetisi. Ibarat wabah, teknologi komputer sudah menyusupi hampir semua
bidang kehidupan manusia. Dari pemerintah pusat sampai tingkat pemerintah
desa, perusahaan-perusahaan, supermarket, minimarket, perguruan tinggi,
SLTA, SLTP, bahkan SD hampir semuanya mengenal komputer. Saat ini, yang
mempunyai lingkungan yang semakin luas dan banyak diminati, juga dapat
digunakan untuk menghasilkan uang adalah dunia pemrograman komputer.
Dalam dunia pemrograman komputer, dikenal algoritma dan banyak bahasa
pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain. Oleh karena
itulah, yang akan dibahas dalam makalah ini adalah Logika Informatika dan
Algoritma Pemograman.

1.2. TUJUAN
Makalah ini disusun dengan tujuan sebagai sarana untuk mengikuti
pesatnya perkembangan teknologi komputer di masa sekarang ini, salah
satunya di dunia pemrograman yang sekarang semakin banyak diminati.
Selain itu, tujuan disusunnya makalah ini adalah untuk memenuhi tugas
matakuliah Logika Informatika dan Algoritma, dikarenakan Penulis masih
berstatus sebagai mahasiswa Jurusan Teknik Informatika, Fakultas Teknik
dan Teknik Informatika ,Universitas Putera Batam.

1|Page

BAB 2
PEMBAHASAN
2.1. PENGERTIAN ALGORITMA DAN PEMROGRAMAN
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 AlKhuwarizmi.
Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi
menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala 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.
Bahasa Pemrograman merupakan notasi yang dipergunakan untuk
mendeskripsikan proses komputasi dalam format yang dapat dibaca oleh
komputer dan manusia. Proses komputasi umumnya didefinisikan secara
formal menggunakan konsep matematika dari Mesin Turing. Pada dasarnya
bahasa Pemrograman dirancang untuk memfasilitasi komunikasi antara
manusia dengan komputer.
Sebuah bahasa pemrograman disebut Turing Complete jika dapat
dipergunakan untuk mendeskripsikan semua komputasi yang dapat dilakukan
Mesin Turing, yaitu memiliki variable integer dan operator aritmatik,
2|Page

pernyataan penugasan, pernyataan sekuensial, pernyataan seleksi, dan


pernyataan iterasi.

2.2. DEFINISI ALGORITMA


Algoritma adalah urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis dan logis. Kata Logis merupakan
kata kunci dalam Algoritma. Langkah-langkah dalam Algoritmaharus logis
dan harus dapat ditentukan bernilai salah atau benar.

2.2.1. Algoritma Merupakan Jantung Ilmu Informatika


Algoritma adalah jantung ilmu komputer atau informatika. Banyak
cabang ilmu computer yang diacu dalam terminologi algoritma.
Namun, jangan beranggapan algoritma selalu identik dengan ilmu
komputer saja. Dalam kehidupan sehari-haripun 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-lankah 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 langkahlangkah 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.
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

3|Page

dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi


suatu pemroses harus :
1. Mengerti setiap langkah dalam Algoritma.
2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.

2.2.2. Mekanisme Pelaksanan Algoritma Oleh Pemroses


Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan
oleh komputer, algoritma hasrus ditulis dalam notasi bahasa
pemrograman sehingga dinamakan program. Jadi program adalah
prwujudan atau implementasi teknis Algoritma yang ditulis dalam
bahasa pemrogaman tertentu sehingga dapat dilaksanakan oleh
komputer.

2.2.3. Belajar Memprogram Dan Belajar Bahasa Pemrograman


Belajar

memprogram

pemrograman.

Belajar

tidak

sama

memprogram

dengan

belajar

bahasa

adalah

belajar

tentang

metodologi pemecahan masalah, kemudian menuangkannya dalam


suatu notasi tertentu yang mudah dibaca dan dipahami. Sedangakan
belajar bahasa pemrograman berarti belajar memakai suatu bahasa
aturan-aturan tata bahasanya, instruksi-instruksinya, tata cara
pengoperasian compiler-nya, dan memanfaatkan instruksi-instruksi
tersebut untuk membuat program yang ditulis hanya dalam bahasa itu
saja.
Sampai saat ini terdapat puluhan bahasa pemrogram. Yang dapat
dibedakan berdasarkan tujuan dan fungsinya. Diantaranya adalah :

4|Page

Programming
Language Paradigm

Declarative

Imperative

Prosedural C,
Pascal,
Fortran,
Basic

ObjOriented
Ada, Object
Pascal, C++,
Java,
Smalltalk,
Eiffel

Parallel
Processing :
Ada, Pascal S,
Occam,
CLinda

Logic :
PROLOG

Functional :
LISP, APL,
SCHEME

a. Belajar Memprogram
Belajar memprogram belajar bahasa pemrograman
Belajar memprogram : belajar tentang strategi pemecahan
masalah, metodologi dan sistematika pemecahan masalah
kemudian menuliskannya dalam notasi yang disepakati
bersama.
Belajar memprogram : bersifat pemahaman persoalan, analisis
dan sintesis.
Belajar memprogram, titik berat : designer program.

b. Belajar Bahasa Pemrograman


Belajar bahasa pemrograman : belajar memakai suatu bahasa
pemrograman, aturan sintaks, tatacara untuk memanfaatkan
instruksi yang spesifik untuk setiap bahasa.
Belajar bahasa pemrograman, titik berat : coder.

5|Page

Database :
SQL

c. Produk yang dihasilkan Pemrogram :


Program

dengan

rancangan

yang

baik

(metodologis,

sistematis).
Dapat dieksekusi oleh mesin.
Berfungsi dengan benar.
Sanggup melayani segala kemungkinan masukan.
Disertai dokumentasi.
Belajar memprogram, titik berat : designer program.

2.3. ATURAN PENULISAN ALGORITMA


Algoritma berisi langkah-langkah penyelesaian masalah. Langkah-langkah
tersebut dapat ditulis dalam notasi apapun, asalkan mudah dibaca dan
dimengerti, karena memang tidak ada notasi baku dalam penulisan algoritma.
Tiap orang dapat membuat aturan penulisan dan notasi algoritma sendiri.
Agar notasi algoritma mudah ditranslasi ke dalam notasi bahasa
pemrograman, maka sebaiknya notasi algoritma tersebut berkorespnden
dengan notasi bahasa pemrograman secara umum.
a.

Aturan Penulisan Algoritma


Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu :
Judul (Header)
Kamus
Algoritma
Pada setiap bagian tersebut apabila akan dituliskan komentar mengenai
setiap bagian tersebut dituliskan diantara tanda kurung kurawa contoh {
Komentar }. Notasi algoritmis yang dituliskan diantara tanda ini tidak
akan dieksekusi oleh program.
Contoh :
Judul
{ Komentar mengenai Algoritma seperti cara kerja program, Kondisi awal dan
kondisi akhir dari algoritma }
Kamus
{ Pada bagian ini, didefinifikan nama konstanta, nama variable, nama
prosedur dan nama fungsi }

6|Page

Algoritma
{ Pada bagian ini algoritma dituliskan. Semua teks yang dituliskan tidak
diantara tanda kurung kurawa akan dianggap sebagai notasi algoritma yang
akan berpengaruh terhadap kebenaran algoritma }

Judul (Header)
Judul adalah bagian teks algoritma yang digunakan sebagai tempat
mendefinisikan nama dengan menentukan apakah teks tersebut adalah
program, prosedur, fungsi. Setelah judul disarankan untuk menuliskan
spesifikasi singkat dari teks algoritma tersebut. Nama algoritma
sebaiknya singkat namun cukup menggambarkan apa yang akan
dilakukan oleh algoritma tersebut.
Contoh :
Program Luas_Kubus
{Judul Algoritma}
{ Menghitung luas kubus untuk ukuran sisi yang dibaca dari piranti masukan
lalu mencetak hasilnya kepiranti keluaran} {Spesifikasi Algoritma}
Catatan :
Untuk memisahkan antara kata dalam judul algoritma menggunakan
tanda _ bukanlah suatu keharusan. Anda dapat menuliskan
LuasLingkaran atau Luas_Lingkaran. Tetapi sebaiknya anda tidak
menggunakan spasi untuk memisahkan antara kata di dalam nama
algoritma.
Kamus (Deklarasi)
Kamus

adalah

bagian

mendefinisikan :
Nama type
Nama konstanta
Nama variable
Nama fungsi
Nama prosedur

7|Page

teks

algoritma

sebagai

tempat

untuk

Semua nama tersebut baru dapat dipakai di dalam algoritma jika telah
didefinisikan terlebih dahulu didalam kamus. Penulisan sekumpulan
nama dalam kamus sebaiknya dikelompokan menurut jenis nama
tersebut. Nama variabel belum terdefinisi nilainya ketika didefinisikan.
Pendefinisian nama konstanta sekaligus memberikan harga konstanta
tersebut, pendefinisian nama fungsi dilakukan sekaligus dengan domain
/ range serta spesifikasinya. Pendefinisian nama prosedur sekaligus
dengan pendefinisian parameter (jika ada) dan spesifikasi prosedur
(kondisi awal Initial State, Kondisi akhir Final State dan proses yang
dilakukan).

Contoh :
Kamus
{Nama type, hanya untuk type yang bukan type dasar}
type jam : <hh,mm,ss :integer> {Type jam terdiri dari 3 masukan yaitu
hh sebagai jam. mm sebagai menit dan ss sebagai detik}
{Nama konstanta, harus menyebutkan type dan nilai }
constant phi : real = 3,14159
constant nama : string = Alex
constant benar : boolean = true
{Nama Informasi, menyebutkan type}
x,y : integer {suatu nilai yang bertype bilangan bulat}
NMax : real {nilai maksimum yang bertype bilangan real}
Nama : string {suatu nilai yang merupakan kumpulan character}
P : point {suatu nilai pada bidang kartesian}
Cari : Boolean {suatu nilai logika}
Algoritma (Deskripsi)

8|Page

Algoritma adalah bagian inti dari suatu algoritma yang berisi instruksi
atau pemanggilan aksi yang telah didefinisikan. Komponen teks
algoritma dalam pemrograman procedural dapat berupa :
Instruksi dasar seperti input/output, assignment
Sequence (runtutan)
Analisa kasus
Perulangan
Setiap langkah algoritma dibaca dari atas ke bawah. Urutan deskripsi
penulisan menentuan urutan langkah pelaksanaan perintah.

Contoh :

Algoritma
input (c,d) {menerima masukan 2 bilangan c dan d}
if c < d then {operasi kondisional}
e a + b {e di assignment oleh nilai a dan b}
else
e a boutput (e) {hasil keluaran berupa bilangan e}

Catatan :
Untuk kata-kata input, output, if then else, output akan dipelajari lebih
mendalam dalam bab-bab selanjutnya.
Contoh Penyelesaian Masalah Oleh Algoritma
Mencetak String Selamat Belajar Algoritma dan Pemrograman ke
piranti Keluaran.
Program Cetak_string
{mencetak string Selamat Belajar Algoritma dan Pemrograman ke piranti
keluaran}
Kamus
{tidak ada}
Algoritma
Output (Selamat Belajar Algoritma dan Pemrograman)

9|Page

Menentukan nilai terbesar dari bilangan bulat yang dibaca dari piranti
masukan dan menuliskan hasilnya ke piranti keluaran.

Program Nilai_Maksimal
{Menentukan nilai tertinggi yang dibaca dari piranti masukan dan
hasilnya dicetak ke piranti keluaran}
Kamus
hasil,x,y : integer {hasil merupakan variabel untuk menampung nilai
keluaran}
{x,y adalah variabel untuk menampung nilai
masukan}
Algoritma
input (x,y)
if x < y then
hasil x

{membaca nilai x dan y dari piranti masukan}


{operasi kondisional}
{hasil di assignment oleh nila terbesar}

else
hasil y
output (hasil)

10 | P a g e

(nilai didalam variabel hasil dicetak ke piranti


keluaran}

2.4. Pengaplikasian Dalam Free Pascal


Berikut adalah daftar program yang telah diaplikasikan oleh penulis dan di post di
account pastebinnya (http://pastebin.com/u/Lhin).

2.4.1. Runtuhan
Runtuhan adalah struktur algoritma paling dasar yang berisi rangkaian instruksi
yang di proses secara sekuensial, satu per satu, mulai dari instruksi pertama sampai
instruksi terakhir.
Contoh Program :

11 | P a g e

Program Menentukan Bilangan Genap ( Runtuhan )

1. program genap;
2.
3. uses crt;
4. var
5. x : integer;
6.
7.
8. begin
9.
10. clrscr;
11. write('masukkan sembarang angka =');read (x);
12. if x mod 2=0 then
13. write('genap')
14. else
15. write('ganjil');
16. readkey;
17.
18. end.

12 | P a g e

Program Menentukan Gaji Bersih Karyawan ( Runtuhan )

1. program gaji_karyawan;
2.
3. uses crt;
4. Var
5. GP,TJ,PJK:Real;
6. Nama:String;
7. GB:comp;
8.
9. BEGIN
10.
11. clrscr;
12. writeln ('Program Menghitung Gaji Bersih');
13. write ('Nama Karyawan : ');Readln(Nama);
14. write ('Jumlah Gaji Pokok Anda : ');Readln(GP);
15.
16.

If GP <= 2000000 Then begin

17.

TJ:=0.15*GP;

18.

End

19.

else begin

20.

TJ:=0.1*GP;

21.

End;

22.
23.

If TJ >= 300000 Then Begin

24.

PJK:=0.1*(GP+TJ);

25.

End

26.

Else begin

27.

PJK:=0.2*(GP+TJ);

28.

End;

29.
30. GB:=GP+TJ-PJK;
31. writeln('Nama Anda : ',Nama);
32. writeln('Gaji Bersih Anda : ',GB);
33. readkey;
34.
35. END.

13 | P a g e

Program Konversi Suhu ( Runtuhan )


1. Program Konversi_Suhu;
2.
3. Uses Crt;
4. var f,c:real;
5.
6. begin
7.
8. clrscr;
9.

Writeln('Program Konversi Fareinheit Ke Celcius');

10. Writeln('======================================');
11. Writeln;
12. Write('Masukan Suhu dalam Farenheit: ');readln(f);
13. c:=5/9*(f-32);
14. Writeln;
15. Writeln('Jadi Suhu Dalam Celcius Adalah: ',c:4:2);
16. readkey;
17. end.

14 | P a g e

Program Konversi Waktu Ke Detik ( Runtuhan )

1. Program Konversi_Waktu;
2.
3. Uses crt;
4. Var j,m,d,h:integer;
5.
6. begin
7.
8. clrscr;
9.

Writeln('Program Konversi Waktu');

10. Writeln('======================');
11. Writeln;
12. Write('Masukkan Jumlah Jam : ');readln(j);
13. Write('Masukkan Jumlah Menit : ');readln(m);
14. Write('Masukkan Jumlah Detik : ');readln(d);
15. Writeln;
16. h:=(j*3600)+(m*60)+d;
17. Writeln('Jadi Hasil Konversi : ',h,' Detik');
18. readkey;
19.
20. end.

15 | P a g e

Program menghitung Rata-rata ( Runtuhan )

1. Program Menghitung_Rata_Rata;
2.
3. Uses crt;
4. Var n,x,i,tot:integer;
5.

rata:real;

6.
7. Begin
8.
9. clrscr;
10. Writeln('Program Menghitung Rata-Rata');
11. Writeln('============================');
12. Writeln;
13. Write('Masukkan Jumlah Bilangan: ');readln(n);
14. Writeln;
15. Writeln('Masukkan Bilangan: ');
16. tot:=0;
17. For i:= 1 to n do
18. Begin
19. Readln(x);
20. tot:=tot+x;
21. End;
22. rata:=tot/n;
23. Writeln;
24. Writeln('Total Bilangan: ',tot:6);
25. Writeln('Rata-Rata : ',rata:6:2);
26. readkey;
27.
28. End.

2.4.2. Pemilihan ( IF )
Program yang berisi runtunan instruksi biasanya terdapat pada masalah sederhana.
Seringkali suatu instruksi hanya bias dikerjakan jika ia memenuhi suatu persyaratan
tertentu. Oleh karena itu, computer tidak lagi mengerjakan instruksi secara
sekuensial seperti pada runtunan, tetapi berdasarkan syarat yang dipenuhi. Struktur
pemilihan memungkinkan kita melakukan aksi jika suatu syarat dipenuhi.

16 | P a g e

Contoh Program:
Program If

1. program If;
2.
3. uses crt;
4.
5. var
6. Pilihan:String;
7. BEGIN
8.
9. clrscr;
10.

writeln('kanan atau kiri ?');

11.

write('Jawaban :');Readln(Pilihan);

12.

If ((Pilihan) = 'kanan') Then Writeln('Kiri adalah pilihan yang lebih


baik !!!')

13.

Else If ((Pilihan) = 'kiri') Then writeln('Kanan adalah pilihan yang


lebih baik !!!')

14.

Else Writeln('Pilihannya cuman kiri atau kanan :p');

15. readkey;
16.
17. END.

17 | P a g e

Program Single Atau Couple ( If )


1. program IfThen;
2.
3. uses crt;
4.
5. var
6. Pilihan:String;
7. BEGIN
8. clrscr;
9.

writeln('Kamu Single atau Couple ?');

10.

write('Jawaban :');Readln(Pilihan);

11.

If ((Pilihan) = 'Single') Then Writeln('Hai Jones')

12.

Else If ((Pilihan) = 'Couple') Then writeln('Sudahlah , jangan


bohongin dirimu sendiri')

13.

Else Writeln('Yang betul dong jawabnya , "Single" atau "Couple" ?


*Huruf Kapital*');

14. Readkey;
15. END.
16.

18 | P a g e

Program Menentukan Grade ( If )


1. program menentukan_grade;
2. uses crt;
3.
4. var
5. nilai : integer;
6. grade : string;
7.
8. begin
9. clrscr;
10.
11. writeln('Program Menentukan Nilai Grade');
12. writeln('');
13. write('Masukkan Nilai Anda : ');
14. readln(nilai);
15. if nilai>100 then grade:='ERROR'
16. else if (nilai>=80) then grade :='A'
17. else if (nilai>=70) then grade :='B'
18. else if (nilai>=60) then grade :='C'
19. else if (nilai>=41) then grade :='D'
20. else if (nilai>=0) then grade :='E'
21. else if nilai<0 then grade :='ERROR';
22.
23. writeln('Grade anda adalah : ',grade);
24. readln;
25. readkey;
26.
27. end.

19 | P a g e

2.4.3. Pengulangan
Salah satu kelebihan kemoputer dibandingkan dengan manusia adalah
kemempuannya untuk melaksanakan suatu perintah berulangkali tanpa mengenal
lelah dan bosan. Di dalam algoritma, pengulangan atau kalang (repetition atau loop)
dapat dilakukan sejumlah kali, atau sampai kondisi berhenti pengulangan tercapai.
Contoh program :
Program Perulangan ( WHILE )

1. program Perulangan;
2.
3. uses crt;
4. var
5.

angka : integer;

6.
7. BEGIN
8.
9. clrscr;
10.

angka :=1;

11.

while (angka <=100) do

12.

Begin

13.

writeln (angka);

14.

angka := angka + 1;

15.

End;

16. readkey;
17.
18. END.

20 | P a g e

Program Konversi Desimal Ke Biner ( REPEAT )

1. program Konversi_Desimal_Ke_Biner;
2.
3. uses crt;
4. var
5.

Des,Desi:Integer;

6.

Bin:String;

7.

Ul:Char;

8.
9. BEGIN
10. Repeat
11.

Clrscr;

12.

Writeln('Program Konversi Desimal Menjadi Biner');

13.

Writeln('======================================');

14.

writeln;

15.

write('Masukkan Bilangan Desimal: ');Readln(Des);

16.

Desi:=Des;

17.

Bin:=' ';

18.

Repeat

19.

If(Des Mod 2 = 0) Then

20.

Bin:='0'+Bin

21.

Else

22.

Bin:='1'+Bin;

23.

Des:=Des Div 2;

24.

Until Des=0;

25.

Writeln;

26.

Writeln(Desi,' Desimal = ',Bin,' Biner');

27.

Writeln;

28.

Write('Mau Ulang Lagi? [Y/T]: ');Readln(Ul);

29.

Ul:=Upcase(Ul);

30.

Until (Ul<>'Y');

31. readkey;
32. END.

21 | P a g e

Program Konversi Detik Ke Hari, Jam, Menit, Detik ( REPEAT )

1. program konversi_detik_ke_Hari_Jam_Menit_dan_Detik;
2. uses crt;
3. const
4. satuhari = 60 * 60 * 24 ;
5. var
6. hr,jm,mn,dt,Detik : longint;
7. ulang : char

8. begin
9.
10. clrscr;
11. repeat
12. writeln (' ====================================================') ;
13. writeln (' * Program Konversi Detik ke Hari,Jam,Menit & Detik * ') ;
14. writeln (' ====================================================') ;
15. writeln ('

');

16. writeln;
17. write

'

18. readln

(Detik);

19. writeln ('

Masukan waktu (dalam detik) : ' );


',Detik ,' Detik tediri dari : .... ');

20. hr

:= Detik div satuhari ;

21. Detik

:= Detik - hr* satuhari;

22. jm

:= Detik div 3600 ;

23. Detik

:= Detik - jm * 3600;

24. mn

:= Detik div 60 ;

25. dt

:= detik - mn

* 60 ;

26.
27.
28.

Writeln ('

', hr,

' hari

');

29.

Writeln ('

', jm,

' jam

');

30.

Writeln ('

', mn,

' menit ');

31.

Writeln ('

', dt,

' detik ');

32.

write ('Mau Mencoba lagi ? (y/n) : ');

33.

readln(ulang);

34. until (ulang = 'n') or (ulang = 'N');


35. writeln;
36. writeln ( '============
37. readkey;
38. end.

22 | P a g e

Terima Kasih

=================') ;

Program Menentukan Berat Badan Ideal ( REPEAT )


1. program menentukan_berat_badan_ideal;
2. uses crt;
3.
4.

var

5.

tb : integer;

6.

bb_id, x, y : real;

7.

ulang : char;

8.

const

9.

const1=100;

10.

const2=0.1;

11.
12. begin
13.
14. clrscr;
15. repeat
16. writeln('Program Menentukan Berat Badan Ideal');
17. Writeln('====================================');
18. writeln('');
19. write('Masukkan Tinggi Badan Anda (cm) : ');
20. readln(tb);
21.
22. writeln('');
23.

x := tb - const1;

24.

y := x * const2;

25.

bb_id := x - y;

26. writeln('==================================== ');


27. writeln('Berat badan ideal anda adalah ',round(bb_id),' kg');
28. writeln('==================================== ');
29. readln;
30. write('Mau Mencoba Lagi ? (y/n) : ');
31. readln(ulang);
32. writeln;
33. until (ulang = 'n') or (ulang = 'N');
34. readkey;
35. end.

23 | P a g e

2.4.4. Prosedur
Kata Prosedur sering kita dengar dalam kehidupan sehari-hari. Seorang
mahasiswa pada setiap awal semester selalu melakukan pendaftaran ulang
(registrasi). Langkah-langkah pendaftaran ulang lazim dinyatakan dalam sebuah
prosedur yang dinamakan prosedur daftar ulang.
Pendefinisian prosedur artnya menuliskan nama prosedur, mendeklarasikan namanama konstanta, peubah dan tipe (jika ada), dan menjabarkan rangkaian aksi yang
dilakukan. Pada dasarnya, struktur prosedur sama dengan struktor algoritma yang
sudah anda kenal, yaitu : ada bagian judul (header) yang terdiri datas nama prosedur
dan deklarasi parameter (jika ada), bagian deklarasiuntuk mengumumkan namanama, dan bagian algoritma yang disebut bagan prosedur.
Contoh Program :

24 | P a g e

Program Operasi Pecahan ( Prosedur )

1. program Operasi_Pecahan;
2. uses crt;
3. type
4. pecahan=record
5. pembilang:integer;
6. penyebut:integer;
7. end;
8. var
9. p1,p2,p3,p4,p5,p6 : pecahan;
10. begin
11. clrscr;
12. write('Masukkan pembilang pertama :');readln(p1.pembilang);
13. write('Masukkan penyebut pertama :');readln(p1.penyebut);
14. write('Masukkan pembilang kedua :');readln(p2.pembilang);
15. write('Masukkan penyebut kedua :');readln(p2.penyebut);
16. p3.pembilang:=(p1.pembilang*p2.penyebut)+(p2.pembilang*p1.penyebut);
17. p3.penyebut:=(p1.penyebut*p2.penyebut);
18. p4.pembilang:=(p1.pembilang*p2.penyebut)-(p2.pembilang*p1.penyebut);
19. p4.pembilang:=(p1.pembilang*p2.penyebut);
20. p5.pembilang:=(p1.pembilang*p2.pembilang);
21. p5.penyebut:=(p1.penyebut*p2.penyebut);
22. p6.pembilang:=(p1.pembilang*p2.penyebut);
23. p6.penyebut:=(p1.penyebut*p2.pembilang);
24. writeln('Hasil pertambahan pembilang :',p3.pembilang);
25. writeln('Hasil pertambahan penyebut :',p3.penyebut);
26. writeln('---');
27. writeln('Hasil pengurangan pembilang :',p4.pembilang);
28. writeln('Hasil pengurangan penyebut :',p4.penyebut);
29. writeln('---');
30. writeln('Hasil perkalian pembilang :',p5.pembilang);
31. writeln('Hasil perkalian penyebut :',p5.penyebut);
32. writeln('---');
33. writeln('Hasil pembagian pembilang :',p6.pembilang);
34. writeln('Hasil pembagian penyebut :',p6.penyebut);
35. readkey;
36. end.

25 | P a g e

Program Menghitung Nilai Rata-Rata Mahasiswa ( Prosedur )

1. program Menghitung_Nilai_RataRata_Mahasisswa;
2.
3. uses crt;
4. var
5. n :string;
6. M1,M2,M3,M4,r :real;
7. ulang : char ;
8.
9.
10. begin
11. clrscr;
12. repeat
13. writeln('Pilihlah Nama Mahasiswa Berikut Untuk Melihat Nilainya : ');
14. writeln(' Ahmad/Santi/Kuncoro');
15. write('Masukkan Nama Anda :');readln(n);
16. if n = 'Ahmad' then begin write('M1 = 40, M2 = 80, M3 = 20, M4 = 60 dan nilai
rata-rata Ahmad adalah = 50');end
17. else
18. if n = 'Santi' then begin writeln('MK1 = 45, MK2 = 75, MK3 = 100, MK4 = 70
dan nilai rata-rata Santi adalah = 70');end
19. else if n = 'Kuncoro' then begin writeln('MK1 = 90, MK2 = 35, MK3 = 65, MK4 =
60 dan nilai rata-rata Kuncoro adalah = 60');
20. end;
21. writeln('');
22. write ('Mau Lihat Yang Lain ? (y/n) : ');
23. readln(ulang);
24. until (ulang = 'n') or (ulang = 'N');
25. writeln;
26. writeln ( '============
27.
28. readkey;
29. end.

26 | P a g e

Terima Kasih

=================') ;

2.4.5. Fungsi
Fungsi adalah upa-program yang memberikan/mengembalikan (return) sebuah nilai
dari tipe tertentu (tipe dasar atau tipe bentukan). Definisi fungsi di dalam program
bersesuaian dengan definisi fungsi di dalam matematika.
Contoh Program:
Program Fungsi
1. Program fungsi;
2. uses crt;
3. var
4.

x:real;

5. function
6.

func(x:real):real;

7. begin
8. func:=2*x*x+5*x-8;
9. end;
10. begin
11. clrscr;
12. writeln('x=2',func(2):0:2);
13.
14. readln;
15. readkey;
16. end.

27 | P a g e

Program Fungsi 2
1. program fungsi2;
2. uses crt ;
3. var
4.

p, l : byte ;

5.
6.
7.

function keliling(p, l : byte): integer ;

8.

begin

9.
10.

keliling := (2*p) + (2*l) ;


end;

11.
12. begin
13.

clrscr ;

14.

writeln ('Hitung Keliling Persegi Panjang') ;

15.

write

('

Nilai Panjang : '); readln(p);

16.

write

('

Nilai Lebar

: '); readln(l);

17.

writeln ('

Keliling

: ', keliling(p,l));

18.

readln;

19. readkey;
20. end.

2.4.6. Larik
Larik adalah struktur data yang menyimpan sekumpulan elemen yang bertipe sama,
setiap elemen diakses langsung melalui indeksnya. Indeks larik haruslah tipe data
yang menyatakan keterurutan, misalnya integer atau karakter.
Contoh Program :

28 | P a g e

Program Rata-Rata (ARRAY/LARIK)

1. Program ratarata;
2. uses crt;
3. Var
4.

n:array [1..10] of smallint;

5.

i,t:integer;

6.

r:extended;

7.
8. Begin
9. clrscr;
10.
11. for i:=1 to 10 do
12. Readln(n[i]);
13.
14. t:=0;
15.
16. for i:=1 to 10 do
17. t:=t+n[i];
18.
19. r:=t/10;
20.
21. writeln('jumlah total = ',t);
22. Writeln('rata-rata = ',r:0:2);
23. readln;
24. readkey;
25. end.

29 | P a g e

Program larik 2

1. program larik;
2. Uses crt;
3. Var
4.

:Longint;

5.

Nm

:Array[1..100]Of String[25];

6.

Hk,Subt

:Array[1..100]Of Real;

7.

Lm

:Array[1..100]Of Integer;

8.

Tot

:Real;

9.
10. Begin
11.

I:=1;

12.

While(I<=3) Do

13.

Begin

14.

clrscr;

15.

Writeln('Data Ke :',I);

16.

Writeln('===========');

17.

Write('Inputkan Nama Tamu :');Readln(Nm[I]);

18.

Write('Inputkan Lama Menginap :');Readln(Lm[I]);

19.

Write('Inputkan Harga Kamar :');Readln(Hk[I]);

20.

Subt[I] :=Lm[I] * Hk[I];

21.

Writeln;

22.

Tot :=Tot + Subt[I];

23.

I:=I +1;

24.

End;

25.

Writeln('--------------------------------------------------');

26.

Writeln('No

Nama

Lama

Harga

Sub

');

27.

Writeln('

Tamu

Menginap

Kamar

Total

');

28.

Writeln('--------------------------------------------------');

29.

For I:=1 To 3 Do

30.

Begin

31.

Writeln(I:3,Nm[I]:15,Lm[I]:10,Hk[I]:10:0,Subt[I]:8:0);

32.

End;

33.

Writeln('--------------------------------------------------');

34.

Writeln('Total :',Tot:12:0);

35.

readln;

36. readkey;
37. End.

30 | P a g e

2.4.7. Matriks
Elemen dari tipe terstruktur seperti larik dapatt distrukturkan lagi. Sebuah larik
yang setiap elemennya adalah larik lagi disebut maktriks (Matrix). Matriks sudah
dikenal secara luas dalam berbagai bidang ilmu, terutama dalam bidang
matematika. Matrik identitas adalah contoh matriks yang dikenal secara umum,
karena semua elemen diagonalnya 1, yang lainnya 0.
Contoh Program :
Program Penjumlahan dan Perkalian matriks ( Matriks )
Dikarenakan

Scribd

terlalu

http://pastebin.com/hev5Zwee )

31 | P a g e

panjang,

maka

buka

disini

32 | P a g e

33 | P a g e

34 | P a g e

35 | P a g e

BAB 3
PENUTUP
1.1. Kesimpulan
Imperative program beranalogi dibawah bahasa pemograman yang memacu
atau berorientasi pada objek objek system informasi yang mengarah pada
system informasi. Pembuatan program program komputer dengan
penguasaan data yang ada pada bahasa pemograman untuk dikuasai agar
menjadi seorang programmer handal. Beberapa sub dari bidang pemograman
imperative diantaranya adalah variable dan penugasan ; perintah tidak
struktur ; perintah tidak terstruktur ; subprogram, prosedur dan fungsi; dan
penanganan eksepsi. Mengenali dan memberi contoh variable dan
penguasaaanya, mengenali bentuk perintah tidak terstruktur, mengenali
bentuk perintah terstruktur, dapat menjelaskan bentuk-bentuk struktur
control, dapat menuliskan subprogram, prosedur, dan fungsi, dan dapat
mengenali serta menjelaskan beberapa bentuk eksepsi dan penangananya.

3.2. Refferensi
http://hannan.h08.alumni.ipb.ac.id/2010/06/12/pengertianpemrograman/
http://ikc.dinus.ac.id/berseri/alex-algoritma/index.php
tugaskuliah.googlecode.com/files/a980b55869178243a3cca38490ce971
1.pdf

36 | P a g e

Anda mungkin juga menyukai