0

日付の検証をチェックするためにこのコードを書きましたが、うるう年をチェックする方法に行き詰まっています。

date = '01/02/1990';
display('hello')
a=strsplit(date,'/');
day = a(1);
display(day);

%b=strsplit('/',date,'/');
month = a(2);
display(month);

%c=strsplit('/','/',date);
year = a(3);
display(year);

if (month==1||month==3||month==5||month==7||month==8||month==10||month==12)
    if (day>=1&&day<=31)

        display(' Its a valid date')
    else
        display(' Its NOT a valid date')
    end
end 

うるう年の計算を組み込むにはどうすればよいですか?

4

3 に答える 3

1

datetime解析を処理し、日付が有効でない場合にエラーをスローする関数を使用して、コードをより堅牢でシンプルにすることができます。

date = '01/02/1990';
try
   d = datetime(date, 'InputFormat', 'dd/MM/yyyy');
   % access day, month, year using: d.Day, d.Month and d.Year...
   % ...
   disp(' Its a valid date')
catch 
   disp(' Its NOT a valid date')
end
于 2015-09-14T13:56:39.427 に答える