找回密码
 立即注册
查看: 473|回复: 15

公历转星期公式,弥补STC8H4K64TL。

[复制链接]
  • TA的每日心情
    开心
    2024-4-17 14:04
  • 签到天数: 98 天

    [LV.6]常住居民II

    3

    主题

    49

    回帖

    413

    积分

    中级会员

    积分
    413
    发表于 2024-1-8 13:58:27 | 显示全部楼层 |阅读模式
    /*w=[c/4]-2c+y+[y/4]+[13*(m+1)/5]+d-1  w%7=星期  w:模拟数  c:年份前两位  y:年份后两位  m:月份  d:纪日  如果月份是1月或2月则年份要减1,月数要加12。*/
    void xingqi()/*公历转星期函数*/{unsigned char y,m;y=YEAR;m=MONTH;if(m==1|m==2){y=y-1;m=12+m;}zhou=(-35+y+(y/4)+(13*(m+1)/5)+DAY-1)%7;}

    1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 121 天

    [LV.7]常住居民III

    12

    主题

    315

    回帖

    870

    积分

    高级会员

    积分
    870
    发表于 2024-1-8 14:14:53 | 显示全部楼层
    挺好的
    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 154 天

    [LV.7]常住居民III

    67

    主题

    831

    回帖

    2754

    积分

    金牌会员

    积分
    2754
    发表于 2024-1-8 14:46:41 | 显示全部楼层
    我近年都用公式求星期的,主要原因是调整日期的时候不用调星期,方便。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-17 14:04
  • 签到天数: 98 天

    [LV.6]常住居民II

    3

    主题

    49

    回帖

    413

    积分

    中级会员

    积分
    413
     楼主| 发表于 2024-1-27 10:24:10 | 显示全部楼层
    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    9 小时前
  • 签到天数: 156 天

    [LV.7]常住居民III

    17

    主题

    279

    回帖

    384

    积分

    中级会员

    积分
    384
    发表于 2024-3-12 16:29:21 | 显示全部楼层
    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 96 天

    [LV.6]常住居民II

    9

    主题

    554

    回帖

    809

    积分

    高级会员

    积分
    809
    发表于 2024-3-12 18:03:22 | 显示全部楼层
    我记得年好像有个范围限制的
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-17 14:04
  • 签到天数: 98 天

    [LV.6]常住居民II

    3

    主题

    49

    回帖

    413

    积分

    中级会员

    积分
    413
     楼主| 发表于 2024-3-13 10:20:23 | 显示全部楼层
    21cnsound 发表于 2024-3-12 18:03
    我记得年好像有个范围限制的

    这个没发现呀
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 121 天

    [LV.7]常住居民III

    12

    主题

    315

    回帖

    870

    积分

    高级会员

    积分
    870
    发表于 2024-3-13 11:17:50 | 显示全部楼层
    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 96 天

    [LV.6]常住居民II

    9

    主题

    554

    回帖

    809

    积分

    高级会员

    积分
    809
    发表于 2024-3-13 11:25:33 | 显示全部楼层
    本帖最后由 21cnsound 于 2024-3-13 16:28 编辑


    蔡勒公式
    def zellers(i16 y, u8 m, u8 d):
        if m < 3:
            y -= 1
            m += 12
        return 353 * y + y // 4 - y // 100 + y // 400 + (148 * m - 447) // 5 + d - 295

    说明:这里的//是取整运算,C51中对应整数来说用单斜杠即可
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-17 14:04
  • 签到天数: 98 天

    [LV.6]常住居民II

    3

    主题

    49

    回帖

    413

    积分

    中级会员

    积分
    413
     楼主| 发表于 2024-3-13 14:10:47 | 显示全部楼层
    21cnsound 发表于 2024-3-13 11:25
    蔡勒公式
    def zellers(i16 y, u8 m, u8 d):
        if m < 3:



    我发的是限21世纪的。懒得打多几句代码了

    话说你那"//"是啥编译器
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-4-29 11:17 , Processed in 0.074644 second(s), 65 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表