আমি inputParserডিফল্ট বিকল্পগুলি সেট করার সাথে মোকাবিলা করতে অবজেক্টটি ব্যবহার করেছি । মতলব আপনি প্রশ্নের মধ্যে উল্লেখ করা অজগর মত ফর্ম্যাটটি গ্রহণ করবেন না, তবে আপনি এই ফাংশনটি কল করতে সক্ষম হবেন:
wave(a,b,n,k,T,f,flag,'fTrue',inline('0'))
আপনি waveফাংশনটি এভাবে সংজ্ঞায়িত করার পরে :
function wave(a,b,n,k,T,f,flag,varargin)
i_p = inputParser;
i_p.FunctionName = 'WAVE';
i_p.addRequired('a',@isnumeric);
i_p.addRequired('b',@isnumeric);
i_p.addRequired('n',@isnumeric);
i_p.addRequired('k',@isnumeric);
i_p.addRequired('T',@isnumeric);
i_p.addRequired('f',@isnumeric);
i_p.addRequired('flag',@isnumeric);
i_p.addOptional('ftrue',inline('0'),1);
i_p.parse(a,b,n,k,T,f,flag,varargin{:});
এখন মান ফাংশনে অতিক্রান্ত হওয়া মাধ্যমে উপলব্ধ i_p.Results। এছাড়াও, আমি নিশ্চিত করতে পারি না যে কীভাবে যাচাই করতে হবে যে পরামিতিটির জন্য পাস হয়েছে ftrueএটি একটি inlineফাংশন ছিল তাই ভ্যালিডেটরকে ফাঁকা রেখে দিয়েছিল।
if narginস্টেটম্যানদের), বজায় রাখা সহজ, কমপ্যাক্ট এবং নমনীয়।