全国浪漫热线:  
[切换城市]
首页问答MATLAB编程求两个人的出生日期相差的天数。

MATLAB编程求两个人的出生日期相差的天数。

提问人:自作多情i     发布时间:2019-09-20 23:03:54     更新时间:2022-06-22 22:24:08     浏览:812    
“MATLAB编程求两个人的出生日期相差的天数。”万能的网友们帮忙参考一下呗,给几个答案呗,实在是想不到了,谢谢大家啦~

最佳回答

function dd = day_diff(m1, d1, m2, d2)

input_all = [m1, d1, m2, d2];
input_mth = [m1, m2];
input_day = [d1, d2];

if m1 <= 2
    N1 = 1461*(2014)/4 + 153*(m1 + 13)/5 + d1;
else
    N1 = 1461*(2015)/4 + 153*(m1 + 1)/5 + d1;
end

if m2 <= 2
    N2 = 1461*(2014)/4 + 153*(m2 + 13)/5 + d2;
else
    N2 = 1461*(2015)/4 + 153*(m2 + 1)/5 + d2;
end

if sum(rem(input_all,1)==0) ~= 4
    disp('Input is not integer.');
elseif sum(input_all>0) ~= 4
    disp('Input is not positive.');
elseif sum(input_mth > [12, 12]) ~= 0
    disp('Month input exceeds 12.');
else
    switch m1
        case {1,3,5,7,8,10,12}
            d1_max = 31;
        case 2
            d1_max = 28;
        otherwise
            d1_max = 30;
    end
    
    switch m2
        case {1,3,5,7,8,10,12}
            d2_max = 31;
        case 2
            d2_max = 28;
        otherwise
            d2_max = 30;
    end
    
    if sum(input_day > [d1_max, d2_max]) ~= 0
        disp('Day input exceeds its limit.');
    elseif N1 - N2 > 0
        dd = floor(N1 - N2);
        str = ['Person 1 is ', num2str(dd), ' days older than Person 2.'];
        disp(str);
    elseif N1 - N2 < 0
        dd = floor(N2 - N1);
        str = ['Person 2 is ', num2str(dd), ' days older than Person 1.'];
        disp(str);
    else
        disp('The two persons are of the same age.');
    end
    
end
姐要革命     发表于 2022-06-22 22:24:08
最新文章
扫码添加浪漫策划师
获取最新求婚方案
微信客服号
热门套餐
「定制」个性定制服务
¥10000起
「浩瀚星河」户外星空主题
¥35800起
「Color Of Love」·浪漫露台主题
¥7500起
Tell Love官网客服热线

客服热线

值班热线

Tell Love官网微信客服号

微信客服号

LMCH9962

Tell Love官网QQ客服

QQ客服

2926579858

点击对话

收起
登陆
✖
发送验证码
用手机验证码登录
前往注册
联系
客服
官方
微信
官方
QQ
联系
电话

全国服务热线

值班热线

Tell Love官网微信客服号
扫码添加浪漫顾问微信
· 设计你们专属的浪漫故事
· 了解时下最流行的求婚方式
· 快速获取策划方案、报价