Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Is there an error in the code?

2 ビュー (過去 30 日間)
EUNHEI KIM
EUNHEI KIM 2020 年 1 月 31 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
Day = [19980101];
[DayNumer,Dayname] = weekday(Day,DayForm);
if DayNumber == 7
disp('Take a rest today.')
end
Since 19980101 is saturday, DateNumber 7 is output.
7 has been printed, The 'Take a rest today.' shall be printed out.
However, it is not output.
Is there an error in the code?
Please help me. sir
  2 件のコメント
Alex Mcaulley
Alex Mcaulley 2020 年 1 月 31 日
There are some typos in your code, but it does what you want (is Saturday and the message is printed)
Day = 19980101;
[DayNumber,Dayname] = weekday(Day);
if DayNumber == 7
disp('Take a rest today.')
end
>> Take a rest today.
EUNHEI KIM
EUNHEI KIM 2020 年 1 月 31 日
Oh, that was easy.
Thank you very much for letting me know your knowledge. :)

回答 (1 件)

Rik
Rik 2020 年 1 月 31 日
You haven't converted the number to a date yet and you had a typo in your variable name. Also, 1998/01/01 was a Thursday.
Day = 19980101;
DayForm = 'long';
infmt = 'yyyyMMdd';
Day = sprintf('%6d',Day);
Day = datetime(Day,'InputFormat',infmt);
[DayNumber,Dayname] = weekday(Day,DayForm);
if DayNumber == 7
disp('Take a rest today.')
else
disp(Dayname)
end

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by