Bir Fonksiyonda, Verilen Değişik Parametre Sayısına ve Sınıf Tiplerine Göre İşlem Yapma
Açıklama:
Değişken argüman/girdi sayısına ve değişkenlerin türüne göre işlem yapmaya dair temel ornek.
MATLAB’da çalışırken girilecek parametre sayısını sabitlemek istemezsek fonksiyon’a girdi parametresi olarak varargin
yazilir. nargin
ise kaç adet parametre verildiğini gösterir.
Girdiler:
varargin
-> Herhangi bir sayıdaki girdi
Çıktı:
Yok
Örnek:
argumentHandling(1 ,[5 8],2+5i,'abc',{1,'def'}, ... logical(2==5), uint8(5))
Ekran çıktısı:
--> 1. girdinin sinifi: double Degeri: 1 --> 2. girdinin sinifi: double Degeri: 5 8 --> 3. girdinin sinifi: double Degeri: 2+5i --> 4. girdinin sinifi: char Degeri: abc --> 5. girdinin sinifi: cell Hucre tipinin deger gosterimi pas gecildi. --> 6. girdinin sinifi: logical Degeri: Yanlis --> 7. girdinin sinifi: uint8 Tanimlanmayan tipin deger gosterimi pas gecildi.
Kaynak kod
% argumentHandling.m: Degisken arguman/girdi sayisina ve degiskenlerin % turune gore islem yapmaya dair temel ornek. % % MATLAB'da calisirken girilecek parametre sayisini sabitlemek % istemezsek fonksiyon'a girdi parametresi olarak varargin yazilir. nargin % ise kac adet parametre verildigini gosterir. % % Girdiler: varargin -> Herhangi bir sayidaki girdi % % Cikti: Yok % % Ornek: % argumentHandling(1 ,[5 8],2+5i,'abc',{1,'def'},logical(2==5), uint8(5)) % function argumentHandling( varargin ) display([int2str(nargin) ' adet parametre girdiniz.']) for i = 1:nargin display(['--> ' int2str(i) '. girdinin sinifi: ' class(varargin{i})]) % Sinifina gore muamele :) switch class(varargin{i}) case 'double' display([' Degeri: ' num2str(varargin{i})]) case 'char' display([' Degeri: ' varargin{i}]) case 'logical' if varargin{i}, deger = 'Dogru';, else, deger = 'Yanlis';, end display([' Degeri: ' deger]) case 'cell' display([' Hucre tipinin deger gosterimi pas gecildi.']) otherwise display([' Tanimlanmayan tipin deger gosterimi pas gecildi.']) end end