全国浪漫热线:  
[切换城市]
首页问答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官网微信客服号

微信客服号

ch89579

Tell Love官网QQ客服

QQ客服

2926579858

点击对话

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

全国服务热线

值班热线

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