Answer:
Check the explanation
Explanation:
function [valid]=valid_date(y, m, d)
if ~isscalar(y) || ~isscalar(m) || ~isscalar(d)
valid=false;
return
end
if y>=1 && m>=1 && m<=12 && (ismember(m, [4 6 9 11]) && ismember(d, [1:30])) || (ismember(m, [1 3 5 7 8 10 12]) && ismember(d, 1:31))
valid=true;
elseif m==2 && (mod(y,4)==0 && mod(y,100)~=0 || mod(y,400)==0 && mod(y,100)==0) && ismember(d, 1:29)
valid=true;
elseif m==2 && ismember(d, 1:28)
valid=true;
else
valid=false;
return
end
end