lunar_to_solar.m

来自「使用MATLAB编写的阴历和阳历转换程序」· M 代码 · 共 21 行

M
21
字号
%Lunar_to_Solar
%将农历日期转化为公历日期
lunar_daysofyear=lunar_day;                        %求该日是当农历年的第几天
if lunar_month~=1
    for k=1:lunar_month-1
        lunar_daysofyear=lunar_daysofyear+calendar_matrix(lunar_year-1935,k+2);
    end
end
solar_daysofyear=lunar_daysofyear+calendar_matrix(lunar_year-1935,1);
if solar_daysofyear>solar_sumofdays(13)            %该日公历年数比农历年数多一
    solar_daysofyear=solar_daysofyear-solar_sumofdays(13);
    solar_year=lunar_year+1;
end
solar_month=1;
while solar_daysofyear-1>solar_sumofdays(solar_month)
    solar_month=solar_month+1;
end
solar_month=solar_month-1;
solar_day=solar_daysofyear-solar_sumofdays(solar_month);
Get_Day_of_Week
fprintf('%1.0f年%1.0f月%1.0f日。\n',solar_year,solar_month,solar_day)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?