24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1192  |  回复: 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 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿085502,267分求调剂 +17 再忙也要吃饭啊 2026-04-08 18/900 2026-04-13 09:57 by darren_yym
[考研] 297求调剂 +18 ORCHID1 2026-04-10 19/950 2026-04-13 09:21 by lhj2009
[考研] 化学070300 求调剂 +17 哈哈哈^_^ 2026-04-12 17/850 2026-04-13 08:59 by 紫曦紫棋
[考研] 一志愿2110,化学学硕310分,本科重点双非求调剂 +19 努力奋斗112 2026-04-08 19/950 2026-04-12 17:01 by lhj2009
[考研] 人工智能320调剂08工类还有机会吗 +12 振—TZ 2026-04-10 12/600 2026-04-12 07:54 by wj165256
[考研] 化学工程调剂289 +44 yang婷 2026-04-07 50/2500 2026-04-12 02:36 by 秋豆菜芽
[考研] 22专硕求调剂 +6 haoyun上岸 2026-04-11 8/400 2026-04-11 23:21 by labixiaoqiao
[考研] 290求调剂 +13 luoziheng 2026-04-10 13/650 2026-04-11 23:15 by labixiaoqiao
[考研] 调剂 +10 只叙离别辞 2026-04-09 12/600 2026-04-11 20:57 by 逆水乘风
[考研] 270求调剂 +14 杨乐369 2026-04-11 14/700 2026-04-11 20:16 by 蓝云思雨
[考研] 还有化工二轮调剂的学校吗 5+14 化工人999 2026-04-09 48/2400 2026-04-11 10:27 by 89436494
[考研] 288求调剂 +15 代fish 2026-04-09 16/800 2026-04-11 10:26 by wwj2530616
[考研] 282,求调剂 +12 jggshjkkm 2026-04-09 14/700 2026-04-11 09:39 by 猪会飞
[考研] 302分求调剂 +9 凡语祈愿 2026-04-08 10/500 2026-04-10 23:26 by 314126402
[考研] 22408 366分,本科211,一志愿西工大 +4 Rubt 2026-04-09 4/200 2026-04-10 19:51 by chemisry
[考研] 277求调剂 +4 考研调剂lxh 2026-04-06 6/300 2026-04-08 10:40 by 逆水乘风
[考研] 388求调剂 +6 四川王涛 2026-04-07 8/400 2026-04-08 00:17 by JourneyLucky
[考研] 材料调剂 +13 汉123456 2026-04-07 14/700 2026-04-07 22:53 by 来看流星雨10
[考研] 一志愿西电085401求调剂 +4 sunw1306 2026-04-07 4/200 2026-04-07 16:40 by 啵啵啵0119
[考研] 333求调剂 +6 合乘杨习夕 2026-04-06 6/300 2026-04-07 09:44 by 猪会飞
信息提示
请填处理意见