Study
MATLAB

Anonymous Function & Function Handle (@)

Penjelasan

Anonymous function dibuat dengan `@(parameter) ekspresi` — fungsi ringkas satu ekspresi tanpa perlu file `.m` terpisah. Tanda `@` juga dipakai sebagai function handle — merujuk ke fungsi yang SUDAH ADA (termasuk fungsi bawaan) sebagai nilai yang bisa disimpan/dikirim ke fungsi lain, seperti `arrayfun`.

Contoh Konsep

kuadrat = @(x) x^2;
kuadrat(5)     % 25

tambah = @(a, b) a + b;
tambah(3, 4)   % 7

% Function handle untuk fungsi bawaan, dipakai di arrayfun
angka = [1 2 3 4 5];
arrayfun(@(x) x^2, angka)    % [1 4 9 16 25]
arrayfun(@sqrt, angka)        % akar kuadrat tiap elemen, pakai function handle langsung

Praktikum

Buat anonymous function diskon = @(harga, persen) ... yang menghitung harga setelah diskon, lalu panggil dengan angka contoh.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

`arrayfun(@fungsi, array)` adalah pola umum menerapkan sebuah fungsi ke SETIAP elemen array satu per satu — mirip `map` di bahasa functional, berguna kalau operasinya tidak bisa dilakukan lewat broadcasting elemen-wise biasa.