24小时热门版块排行榜    

查看: 1160  |  回复: 3

轻描淡写01

新虫 (小有名气)

[求助] Matlab题目 求解 明天就交作业了~~~~~~~ 已有1人参与

例3:编写一个程序,输入年,月,日,输出这一年到该日期为止已经逝去的天数(包括当天)
• 程序需要计算先前月份的天数之后,然后再计算当月已经过去了多少天,在求和的过程中将会用到for循环。
• 每一个月的天数不尽相同,我们用switch结构来确定每一个月的正确天数。
• 涉及闰年,在公历中,闰年是这样规定的
1. 能被400整除的年为闰年
2. 不能被400整除但能被100整除的年不为闰年
3. 不能被100整除但能被4整除的年为闰年
4. 其余的年份不为闰年
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
CODE:
function [TotalDays, Flag_Leap_Year] = MyTotalDays(yyyy,mm,dd)
% 计算当年逝去天数
% 也可用Matlab库函数daysdif计算:daysdif('01/01/2015','11/04/2015',0)
% datenum也可。
Year = yyyy;
Month = mm;
Day = dd;
% 建议增加年月日数据合法性判断
% 判断是否为闰年
% 1. 能被400整除的年为闰年
% 2. 不能被400整除但能被100整除的年不为闰年
% 3. 不能被100整除但能被4整除的年为闰年
% 4. 其余的年份不为闰年
Flag_Leap_Year = 0;
if rem(Year,400) == 0
    Flag_Leap_Year = 1;
elseif rem(Year,400) ~= 0 && rem(Year,100) == 0
    Flag_Leap_Year = 0;
elseif rem(Year,100) ~= 0 && rem(Year,4) == 0
    Flag_Leap_Year = 1;
else
    Flag_Leap_Year = 0;
end
TotalDays = 0;
for i = 1:mm-1
    TotalDays = TotalDays + MyMonth(i, Flag_Leap_Year);
end
TotalDays = TotalDays + Day;

end

function Days = MyMonth(Month,IsLeapYear)
% 计算给定月份天数
Days = 0;
if Month == 2
    Days = 28*(~IsLeapYear) + 29*IsLeapYear;
elseif Month == 4 || Month == 6 || Month == 9 || Month == 11
    Days = 30;
else
    Days = 31;
end
end

用法示例
[D,F] = MyTotalDays(2015,11,04)
D =
   308
F =
     0
返回D:天数;F:是否为闰年。
知其然,知其所以然。
2楼2015-11-04 23:48:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

轻描淡写01

新虫 (小有名气)

引用回帖:
2楼: Originally posted by mygt_hit at 2015-11-04 23:48:48
function  = MyTotalDays(yyyy,mm,dd)
% 计算当年逝去天数
% 也可用Matlab库函数daysdif计算:daysdif('01/01/2015','11/04/2015',0)
% datenum也可。
Year = yyyy;
Month = mm;
Day = dd;
% 建议增加年月日 ...

谢谢啦  ~~~  已经解决了
3楼2015-11-05 10:14:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shenyxtata

金虫 (正式写手)

2楼给个完整程序才赏1个金币
4楼2015-11-05 10:20:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 轻描淡写01 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 面上模板改不了页边距吧? +5 ieewxg 2026-02-25 6/300 2026-03-01 00:10 by addressing
[考研] 307求调剂 +4 73372112 2026-02-28 6/300 2026-03-01 00:04 by ll247
[考研] 化工专硕348,一志愿985求调剂 +4 弗格个 2026-02-28 6/300 2026-02-28 22:00 by wang_dand
[考研] 292求调剂 +3 yhk_819 2026-02-28 3/150 2026-02-28 21:57 by gaoxiaoniuma
[考研] 290求调剂 +5 材料专硕调剂; 2026-02-28 6/300 2026-02-28 21:40 by gaoxiaoniuma
[考博] 26申博 +4 想申博! 2026-02-26 4/200 2026-02-28 21:37 by limorning
[考研] 材料学调剂 +5 提神豆沙包 2026-02-28 5/250 2026-02-28 21:34 by gaoxiaoniuma
[考研] 264求调剂 +3 巴拉巴拉根556 2026-02-28 3/150 2026-02-28 21:31 by gaoxiaoniuma
[考研] 材料类求调剂 +6 wana_kiko 2026-02-28 6/300 2026-02-28 21:20 by gaoxiaoniuma
[考研] 求调剂 +4 repeatt?t 2026-02-28 4/200 2026-02-28 21:16 by gaoxiaoniuma
[考研] 高分子化学与物理调剂 +4 好好好1233 2026-02-28 7/350 2026-02-28 20:42 by 好好好1233
[考研] 298求调剂 +8 人间唯你是清欢 2026-02-28 11/550 2026-02-28 20:26 by L135790
[考研] 276求调剂 +3 路lyh123 2026-02-28 4/200 2026-02-28 19:45 by 路lyh123
[考研] 285求调剂 +5 满头大汗的学生 2026-02-28 5/250 2026-02-28 18:10 by 材料专硕调剂;
[高分子] 求环氧树脂研发1名 +3 孙xc 2026-02-25 11/550 2026-02-28 16:57 by ichall
[考研] 265分求调剂不调专业和学校有行学上就 +4 礼堂丁真258 2026-02-28 6/300 2026-02-28 16:18 by 求调剂zz
[考研] 0856调剂 +3 刘梦微 2026-02-28 3/150 2026-02-28 13:22 by houyaoxu
[硕博家园] 博士自荐 +6 科研狗111 2026-02-26 9/450 2026-02-28 12:32 by seaskyy
[考研] 272求调剂 +3 田智友 2026-02-28 3/150 2026-02-28 12:31 by 王加浩to
[硕博家园] 【博士招生】太原理工大学2026化工博士 +4 N1ce_try 2026-02-24 8/400 2026-02-26 08:40 by N1ce_try
信息提示
请填处理意见