Anda di halaman 1dari 13

LAPORAN HASIL PRAKTIKUM

ALGORITMA DAN PEMOGRAMAN I

Nama : Oscar Oktorian Almando

NIM : 193020503037

Kelas :B

Modul : VI (Function)

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS PALANGKA RAYA

2019
BAB I

TUJUAN DAN LANDASAN TEORI

1.1 TUJUAN
1. Dapat memahami konsep function
2. Mampu membuat function baik dengan parameter maupun tanpa parameter
3. Mampu membedakan kapan menggunakan prosedur

1.2 LANDASAN TEORI


1.2.1 Function
Function hampir sama dengan Procedure, perbedaannya adalah
bahwa fungsi memiliki tipe data sedangkan prosedur tidak memiliki tipe
data. Artinya bahwa sebuah fungsi dapat mengembalikan nilai sesuai
dengan tipenya ketika menerima panggilan.

FUNCTION Nama_Fungsi
(parameter input : tipe;
Var parameter output :tipe): Tipe Fungsi

Parameter

Parameter adalah nama variabel yang dideklarasikan pada bagian header


Function.

1. Parameter aktual (argumen) adalah parameter yang disertakan pada


waktu pemanggilan Function.
2. Parameter formal adalah parameter yang dideklarasikan di dalam
bagian header Function itu sendiri.

Aturan Parameter

Aturan yang harus diperhatikan antara parameter aktual dan parameter


formal :

1. Jumlah parameter aktual pada pemanggilan Function harus sama


dengan jumlah parameter formal pada header prosedur/fungsinya.
2. Tiap parameter aktual harus bertipe sama dengan tipe parameter formal
yang bersesuaian.

 PROCEDURE TANPA PARAMETER

program luaspersegi_panjang;
uses crt;
function lpersegipanjang:string;
var p,l,h:real;
begin
write(‘masukkan nilai panjang:’); readln(p);
write(‘masukkan nilai lebar:’); readln(l);
h:=p*l;
writeln(‘Hasilnya adalah:’,h:0:0);
end;

begin
clrscr;
lpersegipanjang;
readln;
end.

 PROCEDURE DENGAN PARAMETER

program luaspersegi_panjang;
uses crt;
function lpersegipanjang:string;
begin
lpersegipanjang:=p*l;
end;
var p,l:integer;
begin
clrscr;
write(‘masukkan nilai panjang : ’); readln(p);
write(‘masukkan nilai lebar :’ ); readln(l);
writeln(‘Hasilnya adalah :’,lpersegipanjang(p,l):0:0;
readln;
end.
1.3 TUGAS
1. Buatlah kalkulator (penjumlahan, pengurangan, perkalian, dan pembagian)
menggunakan Function.
2. Buatlah program menghitung keliling dan luas segitiga sama kaki.
3. Buatlah program menghitung keliling dan luas lingkaran.
BAB II
LANGKAH PENYELESAIAN DAN PEMBAHASAN TUGAS PRAKTIKUM

2.1 LANGKAH PENYELESAIAN DAN PEMBAHASAN


Dalam melakukan praktikum dan membuat program, aplikasi yang saya
gunakan adalah aplikasi Free Pascal IDE.
2.1.1 Langkah Penyelesaian Tugas Pada Bab I Bagian 1.3 Nomor 1
Untuk membuat program kalkulator sederhana, langkah
pertama yaitu menginput algoritma dengan nama program
fucntion_tanpa_parameter. Algoritma yang akan diinput adalah sebagai
berikut.
program function_tanpa_parameter;
uses crt;
var
a,b:integer;
function jumlah:real;
begin
jumlah:=a+b;
writeln('Hasil dari ',a,' + ',b,' adalah : ',jumlah:6:2);
end;
function pembagi:real;
begin
pembagi:=a/b;
writeln('Hasil dari ',a,' / ',b,' adalah : ',pembagi:6:2);
end;
function pengurang:real;
begin
pengurang:=a-b;
writeln('Hasil dari ',a,' - ',b,' adalah : ',pengurang:6:2);
end;
function perkalian:real;
begin
perkalian:=a*b;
writeln('Hasil dari ',a,' * ',b,' adalah : ',perkalian:6:2);
end;
begin
clrscr;
writeln('Program Kalkulator dengan Function by Oscar');
write('Masukan Nilai A : ');readln(a);
write('Masukan Nilai B : ');readln(b);
jumlah;
pembagi;
pengurang;
perkalian;
readln;
end.
Input program di atas jika dimasukkan ke dalam aplikasi Free
Pascal IDE adalah sebagai berikut.

Gambar 2.1 Input program kalkulator sederhana dengan judul


function_tanpa_parameter di FreePascal IDE
Setelah dikompilasi (f9) dan programnya dijalankan
(ctrl+F9) , maka hasil output program yang keluar di layar adalah

sebagai berikut.

Gambar 2.2 Output program kalkulator sederhana


Pembahasan
Program kalkulator sederhana ini saya buat dengan jenis
Function tanpa parameter. Pada awal program dideklarasikan sejumlah
variabel agar nanti bisa dipakai untuk menampung nilai yang akan
diinput. Kemudian barulah dideklarasikan fungsinya, pada program
yang saya buat terdapat 4 (empat) buah fungsi yang masing-masing
merupakan salah satu dari operasi aritmatika sederhana. Di sinilah yang
membedakan Procedure dan Function, yang mana Function itu sendiri
dapat menjadi sebuah variabel yang dapat menampung sebuah nilai dari
hasil perhitungan.

Setelah fungsi dideklarasikan, saya menuliskan perintah


untuk menginput nilai a dan b agar Function bisa melakukan
programnya. Kemudian baru dimasukkan masing-masing Function agar
bisa dipanggil.

Output yang keluar adalah adalah seperti pada gambar 2.2


di atas, di mana akan muncul judul yang memang saya sisipkan
menggunakan perintah writeln dan instruksi untuk menginput nilai
yang nanti akan disimpan di variabel a dan b. Setelah kedua nilai
diinput, maka akan muncul output hasil dari penghitungan yang berasal
dari keempat Function yang dipanggil.

2.1.2 Langkah Penyelesaian Tugas Pada Bab I Bagian 1.3 Nomor 2


Untuk membuat program untuk menghitung luas dan
keliling segitiga sama kaki, langkah pertama yaitu menginput algoritma
program tersebut dengan judul program hitung_segitiga. Algoritma
yang akan diinput adalah sebagai berikut.

Program hitung_segitiga;
uses crt;
function kelsegitiga:real;
var a,b:real;
begin
writeln('Ini adalah sub program menghitung keliling segitiga
sama kaki');
write('Masukkan panjang sisi 1&2 (sisi 1 = sisi 2 karena segitiga
sama kaki) : '); read(a);
write('Masukkan panjang sisi 3 : '); read(b);
kelsegitiga:=(a*2)+b;
writeln('Jadi, keliling segitiga sama kaki adalah : ',
kelsegitiga:4:2, ' cm');
end;
function luassegitiga:real;
var a,t:real;
begin
writeln('Ini adalah sub program menghitung luas segitiga sama
kaki');
write('Masukkan nilai alas : '); read(a);
write('Masukkan nilai tinggi : '); read(t);
luassegitiga:=a*t;
writeln('Jadi luas segitiga sama kaki adalah : ', luassegitiga:4:2, '
cm^2');
end;

begin
clrscr;
writeln('Program segitiga sama kaki by Oscar');
writeln;
kelsegitiga;
writeln('========================================
=======');
luassegitiga;
readln;
end.
Input program di atas jika dimasukkan ke dalam aplikasi Free
Pascal IDE adalah sebagai berikut.
Gambar 2.3 Input program hitung_segitiga
Setelah dikompilasi (f9) dan programnya dijalankan
(ctrl+F9) , maka hasil output program hitung_segitiga yang keluar
adalah sebagai berikut.

Gambar 2.4 Output program hitung_segitiga


Pembahasan
Program yang dibuat adalah program untuk menghitung keliling
dan luas segitiga sama kaki. Untuk struktur hampir sama dengan
program yang saya bahas pada bagian 2.1.1 , hanya saja untuk input
nilai terdapat pada masing-masing Function. Variabel pun saya
deklarasikan pada masing-masing Function.

Pada program ini terdapat 2 (dua) buah Function yang masing-


masing bertugas untuk menghitung keliling segitiga sama kaki dan satu
lagi menghitung luas segitiga sama kaki. Pada program ini saya
menambahkan sebuah tanda ‘=’ berderet untuk membuat sebuah
pembatas seperti yang terlihat pada gambar 2.4.

2.1.3 Langkah Penyelesaian Tugas Pada Bab I Bagian 1.3 Nomor 3


Langkah pertama untuk membuat program yang telah ditentukan
adalah dengan menginput algoritma program Menghitung volume
balok dan volume kubus. Algoritma yang akan diinput adalah sebagai
berikut.
Program hitung_lingkaran;
uses crt;
function kellingkaran:real;
const phi=3.14;
var r:real;
begin
writeln('Ini adalah sub program menghitung keliling lingkaran');
write('Masukkan panjang jari-jari : '); read(r);
kellingkaran:=2*phi*r;
writeln('Jadi, keliling lingkaran adalah : ', kellingkaran:4:2, '
cm');
end;
function luaslingkaran:real;
const phi=3.14;
var r:real;
begin
writeln('Ini adalah sub program menghitung luas lingkaran');
write('Masukkan panjang jari-jari : '); read(r);
luaslingkaran:=phi*r*r;
writeln('Jadi luas lingkarannya adalah : ', luaslingkaran:4:2, '
cm^2');
end;

begin
clrscr;
writeln('Program keliling dan luas lingkaran by Oscar');
kellingkaran;
writeln('========================================
=======');
luaslingkaran;
readln;
end.

Input program di atas jika dimasukkan ke dalam aplikasi Free


Pascal IDE adalah sebagai berikut.
Gambar 2.5 Input program Hitung_lingkaran
Setelah dikompilasi dan programnya dijalankan (F9 dan ctrl+F9),
maka hasil output program Hitung_ligkaran yang keluar adalah sebagai
berikut.

Gambar 2.6 Output program Hitung_lingkaran


Pembahasan
Sama seperti kedua program yang saya bahas sebelumnya,
susunan program ini hampir sama, yang membedakan adalah
variabelnya dan ada saya sisipkan konstanta.

Konstanta yang saya sisipkan yaitu konstanta Phi yang


nilainya tentu saja 3.14 dan saya sisipkan ke dalam Pascal dengan
perintah const phi=3.14. Sebenarnya ada cara lain menyisipkan nilai
phi yaitu dengan menuliskan perintah ‘phi:=3.4;’, namun karena alasan
Phi benar merupakan sebuah konstanta maka saya menggunakan
perintah const.

Dalam Function luaslingkaran, rumus yang saya gunakan


untuk mencari nilai fungsi tersebut yaitu ‘luaslingkaran:=phi*r*r;’.
Dalam FreePascal itu sendiri, sebenarnya rumus yang digarisbawahi itu
dapat diubah menjadi ‘r^2’, namun ketika saya run dengan rumus
seperti itu maka akan terjadi error. Maka dari itu rumus yang
digarisbawahi itulah yang saya gunakan agar program bisa berjalan
lancar.
BAB III
KESIMPULAN

Dari hasil percobaan yang telah saya lakukan, hal yang dapat saya
simpulkan adalah :

Function adalah sebuah sub-program dari program utama dalam bahasa


Pascal. Function dan Parameter memiliki tujuan yang sama, yaitu digunakan
untuk memudahkan programmer dalam melakukan pemrograman, dengan
tujuan agar algoritma yang dibuat tidak banyak dan memudahkan dalam
mencari kesalahan program jika terjadi error.

Hal yang membedakan Function dengan Procedure adalah Function itu


sendiri dapat menjadi variabel untuk menampung nilai hasi dari proses
Function, sedangkan pada Procedure tidak dapat dijadikan sebuah variabel
sehingga nilai tidak dapat dikembalikan atau ditampung oleh Procedure.
BAB IV
DAFTAR PUSTAKA

 Rasid Ridho, Muhammad. 2012. Function dalam Pascal


https://emerer.com/fungsi-dalam-pascal-function/
Halaman web diakses pada tanggal 29 Oktober 2019 pukul 23.32 WIB

 Mahali, M. Izzuddin. 2017. PROSEDUR DAN FUNCTION


http://staffnew.uny.ac.id/upload/198412092015041001/pendidikan/asd-04-
sub-rutin.pdf
Halaman web diakses pada tanggal 29 Oktober 2019 pukul 23.50 WIB

 Suryana, Taryana. Prosedur dan Fungsi dalam Pascal


https://www.academia.edu/11780154/Prosedur_dan_Fungsi_dalam_Pascal
Halaman web diakses pada tanggal 30 Oktober 2019 pukul 22.01 WIB

 Tim Dosen Teknik Informatika. 2019. Modul Praktikum Algoritma dan


Pemrograman. Palangka Raya : Fakultas Teknik, Universitas Palangka Raya

Anda mungkin juga menyukai