第(a)题:
y=2020; g=mod(y,19)+1; c=floor(y/100)+1; x=floor(3*c/4)-12; z=floor((8*c+5)/25)-5; d=floor(5*y/4)-x-10; e=mod(11*g+20+z-x,30); if (e==25)&&(g>11) e=e+1; elseif e==24 e=e+1; else e; end n=44-e; if n<21 n+n+30; else n=44-e; end n=n+7-mod((d+n),7); if n>31 fprintf("4月%d",n-31); else fprintf("3月%d",n); end %输出结果:4月12第(b)题:
ln=[]; m3=0; m4=0; for y=1010:2020; g=mod(y,19)+1; c=floor(y/100)+1; x=floor(3*c/4)-12; z=floor((8*c+5)/25)-5; d=floor(5*y/4)-x-10; e=mod(11*g+20+z-x,30); if (e==25)&&(g>11) e=e+1; elseif e==24 e=e+1; else e; end n=44-e; if n<21 n+n+30; else n=44-e; end n=n+7-mod((d+n),7); ln(end+1)=n; if n>31 m4=m4+1; else m3=m3+1; end end输出结果: 第(c)题:
fprintf("最迟4月%d\n",max(ln)-31); fprintf("最早3月%d\n",min(ln)); d=[m3,m4]; bar(d); set(gca,'xticklabel',{"三月","四月"})输出结果: 第(d)题 不认为是周期函数