08 Function

Embed Size (px)

Citation preview

  • 8/8/2019 08 Function

    1/14

    FUNCTIONOleh: M. Ade Erik (19870911 201001 1 006)

    Doc Versi. 08.00/Pas/OSN/TIK/2010

    SMA Negeri 1 Tegal

  • 8/8/2019 08 Function

    2/14

    Pembahasan:

    Parameter dalam Fungsi

    Fungsi Memanggil Fungsi Lain

    Nested Function

    Fungsi Memanggil Dirinya

    Fungsi Standard

  • 8/8/2019 08 Function

    3/14

    Function

    Procedure memakai data atau variabel ketika dieksekusi.

    Function (fungsi) juga memakai data, tetapi mempunyai

    kemampuan untuk menghasilkan nilai pada procedure

    atau program yang memanggilnya Syntact

    function Nama (deklarasi variabel):tipe_data_hasil;

    begin

    Pernyataan; end;

  • 8/8/2019 08 Function

    4/14

    Contoh uses wincrt;

    var angka, jawaban : integer;

    function KUBIK( x : integer ) : integer;

    begin

    KUBIK := x * x * x;

    end;

    begin

    Angka:=5;

    jawaban := KUBIK ( angka ); {pemanggilan fungsi}

    writeln('Hasil pangkat tiga dari ',angka,' adalah ', jawaban)

    end.

  • 8/8/2019 08 Function

    5/14

    Parameter dalam Fungsi

    Syntact

    Function nama_fungsi(deklarasi

    variabel):tipe_data_hasil;

    Parameter

    Begin

    Pernyataan;

    End;

  • 8/8/2019 08 Function

    6/14

    Contoh 1

    uses wincrt;

    function func1(a:integer):integer;

    var i:integer;

    begin

    for i:=1 to 3 do

    Begin a:=a*3; end;

    func1:=a;

    end;

    begin

    write(func1(2));

    end.

  • 8/8/2019 08 Function

    7/14

    a:=a*3

    i:=1 > a:=2*3 = 6

    i:=2 > a:=6*3 = 18

    i:=3 > a:=18*3 = 54

    Func1:=54

  • 8/8/2019 08 Function

    8/14

    Fungsi memanggil fungsi lain

    Syntact

    function Nama1 (deklarasi variabel):tipe_data_hasil;

    begin

    Pernyataan;

    end;

    function Nama2 (deklarasi variabel):tipe_data_hasil;

    begin

    Nama2(nilai_variabel);

    end;

  • 8/8/2019 08 Function

    9/14

    Contoh 2

    uses wincrt;

    function func1(a:integer):integer;

    Begin func1:=a*a*a; end;

    function func2(b:integer):integer;

    Begin func2:=func1(b)+5; end;

    begin write(func2(2));

    end.

  • 8/8/2019 08 Function

    10/14

    Nested Function

    syntact

    function Nama1 (deklarasi variabel):tipe_data_hasil;

    function Nama2 (deklarasi variabel):tipe_data_hasil;

    begin

    Pernyataan2;

    end;

    begin

    Pernyataan;

    end;

  • 8/8/2019 08 Function

    11/14

    Contoh 3

    uses wincrt;

    function func1(a:integer):integer;

    function func2(b:integer):integer;

    Begin func2:=b+10; end;

    Begin func1:=a*a*a+func2(a); end;

    begin

    write(func1(2));

    end.

  • 8/8/2019 08 Function

    12/14

    Fungsi memanggil dirinya (rekursi)

    function Nama1 (deklarasi variabel):tipe_data_hasil;

    begin

    If then

    Begin

    End

    Else

    nama1:=nama1(nilai_variabel);

    end;

  • 8/8/2019 08 Function

    13/14

    Contoh 4

    uses wincrt;

    function func1(a:integer):integer;

    begin

    if (a=0) then func1:=1

    Else func1:=a*func1(a-1);

    end;

    begin

    write(func1(4));

    end.

  • 8/8/2019 08 Function

    14/14

    Fungsi standard

    Concat : menggabungkan 2 atau lebih variabel string

    Copy: mengambil satu atau beberapa karakter dari

    sebuah string

    Length: jumlah karakter dalam sebuah string Upcase: mengubah string ke bentuk huruf kapital.

    Abs: nilai mutlak dari suatu argumen

    Frac: mendapatkan nilai pecahan dari suatu bilangan

    Int: memberikan nilai integer dengan cara membuangangka dibelakang koma

    Round: Membulatkan data tipe real ke data tipe longint

    Trunc: Membulatkan kebawah data tipe real ke data tipe

    longint