回 帖 发 新 帖 刷新版面

主题:[讨论]推算某一天是星期几

看了这个大程序,我想我这个小程序应该没有多大的问题,请各位帮帮忙:已知某一年某一月某一天是星期几,推算另外某一年某一月某一天是星期几?求程序代码。

回复列表 (共6个回复)

沙发

判断某年某月某日和当前日期相差的天数,然后除以7,看余多少天.还要考虑个润年问题吧.

板凳

判断星期几有公式的,根本不用给定一天

3 楼

CLS
INPUT s$
IF MID$(s$, LEN(s$) - 1, 1) = "-" THEN s$ = MID$(s$, 1, LEN(s$) - 1) + "0" + MID$(s$, LEN(s$), 1)
a = INSTR(s$, "-")
d$ = MID$(s$, a + 1) + "-" + MID$(s$, 1, a - 1)
IF LEN(MID$(d$, 1, INSTR(d$, "-") - 1)) <= 1 THEN d$ = "0" + d$
y = VAL(MID$(d$, 7, 4))
m = VAL(d$)
d = VAL(MID$(d$, 4, 2))
r = ((y MOD 4 = 0 AND y MOD 100 <> 0) OR (y MOD 400 = 0))
y = y - 1
day& = (y * 365 + y \ 4 - y \ 100 + y \ 400 + VAL(MID$("    0 31 59 90120151181212243273304334", m * 3, 3)) + r * (m > 2) + d)
week% = (day& - 1) MOD 7 + 1
PRINT week%, d$
输入格式:年份-月份-日期

4 楼

已经有啦
http://bbs.pfan.cn/post-292987.html

5 楼

十万个为什么数学篇上给了俩

6 楼

本人是这样的:
CLS
INPUT s$
IF MID$(s$, LEN(s$) - 1, 1) = "-" THEN s$ = MID$(s$, 1, LEN(s$) - 1) + "0" + MID$(s$, LEN(s$), 1)
a = INSTR(s$, "-")
d$ = MID$(s$, a + 1) + "-" + MID$(s$, 1, a - 1)
IF LEN(MID$(d$, 1, INSTR(d$, "-") - 1)) <= 1 THEN d$ = "0" + d$
y = VAL(MID$(d$, 7, 4))
m = VAL(d$)
d = VAL(MID$(d$, 4, 2))
r = ((y MOD 4 = 0 AND y MOD 100 <> 0) OR (y MOD 400 = 0))
y = y - 1
day& = (y * 365 + y \ 4 - y \ 100 + y \ 400 + VAL(MID$("    0 31 59 90120151181212243273304334", m * 3, 3)) + r * (m > 2) + d)
week% = (day& - 1) MOD 7 + 1
PRINT week%, d$

我来回复

您尚未登录,请登录后再回复。点此登录或注册