*Fungsi adalah bagian dari program yang dibuat terpisah untuk melaksanakan fungsi
tertentu yang menghasilkan suatu nilai untuk dikembalikan ke program utama.*
Oleh karena itu suatu fungsi *akan memiliki tipe data tertentu apakah integer, boolean,
string, longint, real, dll.*
Berikut ini contoh pendefinisian fungsi sederhana yang akan mengalikan dua buah
bilangan bulat.
Kita juga dapat mendeklarasikan variabel lokal untuk menyimpan nilai sebelum akhirnya
dikembalikan lagi ke fungsi, misalnya seperti kode di bawah ini.
*Pemanggilan Fungsi*
Fungsi diakses dengan cara memanggil namanya dari program pemanggil, diikuti dengan
daftar parameter aktual (bila ada). Oleh karena fungsi menghasilkan sebuah nilai maka
pada saat pemanggilannya juga dapat ditampung ke dalam suatu variabel.
Program Kali;
Var A : longint;
*Algoritma*
program maksimum;
uses crt;
var a,b:integer;
function maks(x,y:Integer):Integer ;
begin
if x<y then maks:=y else maks :=x;
end;
begin
clrscr;
write('a : ');ReadLn(a);
Write('b : ');ReadLn(b);
WriteLn('nilai maks : ',maks(a,b));
writeln('Press enter to continue');
readln;
end.
*Algoritma*
Program GenapGanjil;
Var
X : integer;
Program GenapGanjil;
uses crt;
Var
X : integer;
Function Genap(n : integer) : boolean;
Begin
Genap := (n mod 2) = 0;
end;
Begin
clrscr;
write('masukkan bilangan : ');Readln(x);
if Genap(x)
then writeln('Genap')
else writeln('Ganjil');
writeln('Press enter to continue');
readln;
end.
*Algoritma*
Program GenapGanjil;
uses crt;
Var X : integer;
Begin
clrscr;
write('masukkan bilangan : ');Readln(x);
if Genap(x)
then writeln('Genap')
else writeln('Ganjil');
writeln('Press enter to continue');
readln;
end.
*SOAL*
*Modifikasi program genap/ganjil diatas menjadi program memerika tahun kabisat
dengan menggunakan function*.
Sebelum kita Membuat program kita harus paham Rumus untuk menentukan tahun kabisat
adalah sebagai berikut
1. Jika angka tahun itu tidak habis dibagi 400, tidak habis dibagi 100 akan tetapi habis
dibagi 4, maka tahun itu merupakan tahun kabisat. Atau dalam algortima sbb: If ((n
mod 4) = 0) and ((n mod 100) <> 0) and (n mod 400) <> 0 )
2. Jika angka tahun itu habis dibagi 400, maka tahun itu sudah pasti tahun kabisat.
(dalam algoritma If n mod 400 = 0)
If ((n mod 4) = 0) and ((n mod 100) <>0) or ((n mod 400) = 0)
*Bagi yang sudah selesai, silahkan source program di share di group ini*