Borrar filtros
Borrar filtros

VALID_DATE FUNCTION PROBLEM : Write a function called valid_date that takes three positive integer scalar inputs year, month, day. If these three represent a valid date, return a logical true, otherwise false...

3 visualizaciones (últimos 30 días)
function [valid] = valid_date(y,m,d)
if ~isscalar(y) || ~isscalar(m) || ~isscalar(d)
valid= false;
end
if m > 12
valid= false;
elseif d > 31
valid= false;
end
if mod(y,4)==0
valid= valid_date(y,2,29);
valid= true;
end
if mod(y,400)==0 && mod(y,100)==0
valid= valid_date(y,2,29);
valid=false;
end
if m== 1 || 3 || 5 || 7 || 8 || 10 || 12
if d== 31
valid= true;
end
elseif m== 4 || 6 || 9 || 11
if d== 31
valid= false;
end
elseif m== 2
if d>=30
valid= false;
end
end
  1 comentario
Emirhan Bilgiç
Emirhan Bilgiç el 31 de Oct. de 2020
Editada: Emirhan Bilgiç el 31 de Oct. de 2020
I keep seeing the error of "Output argument 'valid' (and maybe others) not assigned during call to 'valid_date'." Didn't i assign? Where am i missing? Thanks in advance ♥

Iniciar sesión para comentar.

Respuestas (1)

Anmol Dhiman
Anmol Dhiman el 3 de Nov. de 2020
Editada: Anmol Dhiman el 3 de Nov. de 2020
Hi Emirhan ,
You need to initialize valid in the function. Add the following statement after creating function
function [valid] = valid_date(y,m,d)
valid = true; % or valid = false;
Regards,
Anmol Dhiman

Categorías

Más información sobre Introduction to Installation and Licensing en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by