1 / 21

FUNGSI / FUNCTION

FUNGSI / FUNCTION. ALGPROG II. FUNGSI. Fungsi hampir sama dengan prosedur, hanya fungsi harus dideklarasikan dengan tipenya. Tipe ditulis pada akhir deklarasi fungsi yang didahului dengan titik dua. FUNCTION identifier(daftar-paramater) : type;. Contoh Penulisan Fungsi.

eman
Download Presentation

FUNGSI / FUNCTION

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FUNGSI / FUNCTION Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II ALGPROG II

  2. FUNGSI • Fungsi hampir sama dengan prosedur, hanya fungsi harus dideklarasikan dengan tipenya. Tipe ditulis pada akhir deklarasi fungsi yang didahului dengan titik dua. FUNCTION identifier(daftar-paramater) : type; Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  3. Contoh Penulisan Fungsi • Function faktorial (Var fak, hasil : integer) : integer; • Function pangkat (X,Y : real) : real; Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  4. Contoh Penggunaan Var X, Y : integer; Function Hitung (Var A, B : integer) : integer; Begin Hitung := A + B; End; Begin write (‘Nilai X ?’); ReadLn (X); write (‘Nilai Y ?’); ReadLn (Y); WriteLn (X, ‘ tambah ‘, Y, ‘ = ‘, Hitung(X,Y)); End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  5. Perbedaan dengan Prosedur • Nilai yang dikirimkan balik terdapat pada nama fungsinya.. Kalau pada prosedur parameter yang dikirimkan secara acuan. • Karena nilai balik berada di nama fungsi, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya. • Atau bisa juga dipindahkan ke pengenal variabel lainnya. Hasil := Hitung (X,Y); WriteLn (Hasil); Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  6. Fungsi tanpa Parameter Function garis : String; Begin Garis := '.......................'; End; Begin WriteLn (Garis); WriteLn ('Akademi Teknik Kupang'); WriteLn (Garis); End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  7. Parameter dalam Fungsi • By Value • By reference Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  8. Fungsi by Value • Penulisan judul fungsi yang menggunakan parameter dengan pengiriman secara nilai adalah tampak sbb: FUNCTION Hitung(A,B : integer) : integer; Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  9. Contoh Function Terbesar(X,Y : real) : real; Begin If X>Y Then Terbesar := X Else Terbesar := Y; End; Var Nilai1, Nilai2 : real; Begin write (‘Nilai Pertama ?’); ReadLn (Nilai1); write (‘Nilai Kedua ?’); ReadLn (Nilai2); WriteLn (‘Nilai terbesar adalah’); WriteLn (Terbesar(Nilai1,Nilai2); End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  10. Fungsi by Reference • Pengiriman by Reference akan mengakibatkan perubahan nilai parameter di fungsi juga merubah nilai parameter di program utama. FUNCTION Hitung(Var A,B :integer) integer; Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  11. Contoh Function Hitung(Var A,B,C :integer) : Integer; Begin Hitung := A + B; C := A * B; End; Var X,Y,Z : Integer; Begin write (‘Nilai X ?’); ReadLn (X); write (‘Nilai Y ?’); ReadLn (Y); WriteLn (‘X ditambah Y =‘); WriteLn (Hitung(X,Y,Z); WriteLn (‘X dikali Y =‘); WriteLn (Z); End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  12. Latihan I • Buatlah program untuk menghitung pangkat suatu nilai. Hasil Program : Nilai yang dipangkatkan ? 1,5 Dipangkatkan dengan ? 3 1,500 pangkat 3 adalah 3,375 Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  13. Jawaban uses wincrt; Var A:real; B : Integer; Function Pangkatkan(X: real; Y : integer) : real; Var Pangkat : Real; I : integer; Begin Pangkat := 1; For I := 1 to Y do Pangkat := Pangkat * X; Pangkatkan:= Pangkat; End; Begin WriteLn ('Nilai A:'); ReadLn (A); WriteLn ('Nilai B:'); ReadLn (B); WriteLn ('Pangkat'); WriteLn (Pangkatkan(A,B)); End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  14. Latihan II • Buatlah program untuk menghitung nilai Minimum dari 5 Bilangan. • Buatlah program untuk menghitung nilai Maksimum dari 5 Bilangan. • Buatlah program untuk menghitung rata-rata dari 5 Bilangan Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  15. JenisFungsi / Function • Fungsi yang memanggil dirinya sendiri • Fungsi memanggil fungsi lain • Fungsi di dalam Fungsi • Fungsi Tersarang • Fungsi Standar Pascal Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  16. Rekursi – Memanggil dirinya sendiri • Fungsi Memanggil Dirinya Sendiri Proses fungsi memanggil dirinya sendiri juga merupakan proses recursion. • Contoh program : Var N : integer ; Function Faktorial (Nilai : integer ) : real ; Begin If Nilai = 0 Then Faktorial : = 1 Else Faktorial : = Nilai * Faktorial (Nilai – 1 ) ; End ; Begin Write (‘Berapa factorial ?’) ; Readln (N) ; Writeln (N, ‘faktorial =’, Faktorial(N) : 9 : 0 ) ; End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  17. Fungsi Memanggil Fungsi Lain • FungsiMemanggilFungsi Yang Lain Fungsi yang dipanggilletaknyaharusberadadiatasfungsi yang memanggilnya. • Contoh program : Function Fungsi2 (Y : integer) : integer ; Begin Fungsi2 : = Y * 2 ; End ; Function Fungsi1 ( X : integer ) : integer ; Begin Fungsi1 : = Fungsi2 (X) + 5 ; End ; Begin Writeln (Fungsi1(3)) ; End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  18. Fungsi Tersarang • FungsiTersarang Merupakanfungsi yang letaknyaberadadidalamfungsi yang lainnya. • Contoh program : Function Fungsi1 (X : integer ) : integer ; Function Fungsi2 ( Y : integer ) : integer ; Begin Fungsi2 : = Y * 2 ; End ; Begin Fungsi1 : = Fungsi2 (X) + 5 ; End ; Begin Writeln (Fungsi1 (3)) ; End. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  19. Fungsi Standart Pascal • FungsiPangkat • Pascal tidakmenyediakanfungsiuntukperpangkatantinggi, yang adahanyafungsistandarSqr, yaitupemngkatankuadratsaja. Bilaakanmelakukanperpangkatanlebihdaripangkatdua, makaharusdibuat program tersendiri. • FungsiStandarAritmatika Ada Abs, ArcTan, Cos, Exp, Franc, Int, Ln, Pi, Sin, SqrdanSqrt Penjelasan : • Abs (x) ; Memutlakkansuatunilai yang ditunjukkanoleh argument x. dapatberupatipe real atau integer. • Exp (x : real ) : real ; Untukmenghitungnilaipangkat dari bilangan e. dapatberupa real atauinteger dan hasil dari fungsinyaadalah real. • Ln (x : real ) : real ; Untukmenghitungnilailogaritmaalamdarinilai x. tipedatanya real atau integer danhasilfungsinyaadalah real. • Int (x : real) : real ; Untukmenghasilkannilai integer dari x. hasildarifungsiadalahtipe real dengannilai yang berupapembulatankebawahdarinilai x. • Franc (x : real ) : real ; Untukmendapatkannilaipecahandari argument x. Argumen x dapatberbentuk real atau integer danhasilnyaadalah real. • Sqr (x) ; Untukmenghitungnilaipangkatkuadratdari argument x. • Sqrt (x : real ) : real ; Untukmenghitungnilaiakardari argument x. dapat real dan integer danhasildarifungsinyaadalah real. • Pi Akan menghasilkannilai PI sebesar 3, 14. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  20. Fungsi Standart Pascal • FungsiStandar Transfer Digunakanuntukmerubahsuatunilaikebentuknilai yang lain. Yang tersediaadalahfungsistandarChr, Ord, Round dantrunc. Penjelasan : • Chr (x : byte) : char ; Untukmerubahnilaidari byte x kebentukkarakter yang sesuaidengankode ASCII. • Ord (x) : longint ; Untukmerubahnilai x kebentuknilailongint yang sesuaidengankode ASCII. Fungsiinikebalikandarifungsistandar Chr. • Round (x : real) : longint ; Untukmembulatkannilaidari real x kenilailongint yang terdekat. Bilanilaipecahansamadenganataulebihbesardari 0,5 akandibulatkankeatas, sedangkanbilainilaipecahanlebihkecildari 0,5 akandibulatkankebawah. • Trunc (x : real) : longint ; Untukmembulatkannilaidari real x kenilailongintterkecil, ataudengan kata lain membulatkankebawah. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

  21. Fungsi Standart Pascal • FungsiStandarLainnya Terdiridari : Hi, Lo, Random, SizeOf, Swap, UpCase, ParamCountdanParamStr. Penjelasan : • Hi (x) : byte ; Untukmengisi low order byte darihasilfungsidengan high order byte dariungkapan integer x. high order byte darihasilfungsiakanbernilai nol. Tipehasildarifungsiiniadalah byte. • Lo (x) : byte ; Untukmengisi low order byte darihasilfungsidengan low order byte dariungkapan integer x. high order byte darihasilfungsiakanbernilai nol. Tipehasildarifungsiiniadalah byte. • Swap (x) ; Untukmembalik bit-bit di low order byte menjadi high order byte dansebaliknyadariungkapan x. ungkapan x dapatberupatipe integer atau word. • Random [ (range : word ) ] ; Untukmenghasilkanangka random berkisardarinilailebihbesaratausamadengannoldanlebihkecildarisatu. Bila range tidakdisebutkan, hasildarifungsiiniadalah real. Bila range disebutkan, hasilnyaadalah word. • SizeOf (x) : word ; Untukmenunjukkanbesarnya byte yang digunakanolehsuatu variable x. hasilnyaadalah word. • UpCase (Ch : char ) : char ; Untukmerubah argument suatukarakter yang ditunjukkanolehChmenjadibentukkarakterhurufbesar ( upper case ). • ParamCount: word ; Untukmengetahuijumlah parameter yang dikirimkanlewatpromt DOS • ParamStr (index) : string ; Untukmenerima parameter yang dikirmkanlewatpromt DOS, index adalahungkapandengantipe word, danakanmenghasilkan parameter ke index yang dikirmkantersebut. Gerlan A. Manu, ST.,MKom - Algoritma & Pemrograman II

More Related