Having problem in using or statement in switch case

2 visualizaciones (últimos 30 días)
Arif Istiak Abeg
Arif Istiak Abeg el 7 de Mayo de 2020
Comentada: Arif Istiak Abeg el 19 de Mayo de 2020
Problem: "Return the number of days in a given month in 2017. If the input is not a valid month number, return -1.
You cannot use IF statements"
Where is the problem in my code.How can I use or statement in switch case?
Firsly I tried case as number but it didn't work
then I tried as character but it also didn't work
function d = daysInMonth(m)
x=[31 28 31 30 31 30 31 31 30 31 30 31];
c = num2str(m);
switch c
case '1'|'2'|'3'|'4'|'5'|'6'|'7'|'8'|'9'|'10'|'11'|'12'
d=x(m);
otherwise
d=-1;
end
end

Respuestas (1)

Walter Roberson
Walter Roberson el 7 de Mayo de 2020
case {'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'}
However, you do not need to convert to character vector.
switch m
case {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
end
  1 comentario
Arif Istiak Abeg
Arif Istiak Abeg el 19 de Mayo de 2020
I tried this code also but didn,t work
then I used 'case" for 12 line indiviually it worked but the code became longer

Iniciar sesión para comentar.

Categorías

Más información sobre Fuzzy Logic Toolbox en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by