MATLAB: How to find the two smallest values in varargin

varargin min array

For example, the varargin input is 5,3,6
I want to multiply the the two lowest values, 5*3.
I have tried this:
y=sort (varargin,1, 'ascend');
z=y(:, 1:2);
area= z{1}*z{2};
This is the error I receive:
Error using sort
DIM and MODE arguments not supported for cell arrays.

Best Answer

function out = two_lowest_values(varargin)
a = sort(cell2mat(varargin));
out = a(1)*a(2);
Related Question