找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 5807|回复: 5

计算1901年1月1日到2016年12月31日具体有哪些日期星期日落在了当月的第一天

[复制链接]
发表于 2015-11-1 00:16:23 | 显示全部楼层 |阅读模式
本帖最后由 pacelife 于 2015-11-1 00:19 编辑 ! i0 B9 k9 w  c3 M+ a

: _8 l4 {$ Q; X! [这个题目根据欧拉计划第19题改编而来,有兴趣的同学不妨试一下,需要用到编程的知识:
- T& [2 L# b$ G4 n& S
  • 1900年1月1日是星期一。
  • 30天的月份有:9月,4月,6月,11月。
  • 此外的月份都是31天,当然2月除外。
  • 2月在闰年有29天,其他时候有28天。
  • 年份可以被4整除的时候是闰年,但是不能被400整除的世纪年(100的整数倍年)除外。+ s, E; ^2 M* X
计算1900年1月1日到2016年12月31日具体有哪些日期星期日落在了当月的第一天?
4 v" Q$ p' f9 C+ M" d) P原题只需要计算多少天,现在我把题目改成算出具体的日期,难度增加了一点,能做出来还是很有成就感的,下面我贴出我自己的算法,其实按照这些完全可以做一个万年历了( M5 k7 X! P. x8 j1 O( Q9 K5 g
" O- }& {3 M# V. H) S9 N
) I2 e) {1 V8 N* Q

0 R/ O# \7 Z" K7 H. ^

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
回复

使用道具 举报

发表于 2015-11-1 08:17:03 | 显示全部楼层
看到日期就头疼,什么月份,星期几,几月几号。我觉得这些和天文联系更多,和数学联系较少。比如,为什么有的月份是30天,有的月份是31天,有的月份是28天?谁知道?
发表于 2015-11-1 19:01:35 | 显示全部楼层
我用笨方法玩出来了
0 i  ~; n8 \) n6 z. x  p( ]2 Q. ~' q# P* d5 B9 a

( ?# O9 t2 Z' `9 I
* Z& J. X' ^" N5 m

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
 楼主| 发表于 2015-11-1 20:14:04 | 显示全部楼层
能解释一下你的解题思路吗
发表于 2015-11-1 20:35:19 | 显示全部楼层
本帖最后由 fwsc 于 2015-11-1 20:44 编辑
" O1 f4 h' C0 l
6 J3 c4 |8 \8 ]5 H) f2 ~# g8 Z很简单啊,用Excel里的表格和函数( Z3 Z  Y9 r- e- L
& e0 C3 R* C. h, p1 V5 \
1、首先用一张表格生成每个月第一天日期。; ^/ Y9 e+ i( e& @( l  v

6 w4 u8 |2 \, k) `( [& y1 T* Y
8 _' F! C, K0 D  @  o! ~- _使用DATE()函数) E4 L9 I, H) Q4 d
7 B% y. L: `- k! V

! G2 H0 l7 k* _1 H8 S6 E' z做一排出来,其余竖着拖,填满表格。$ A4 q( L8 X* l  l7 m
8 B4 G. i# J; @! }" y! A
2、用另一张表格计算该天是每周的第几天。4 l1 [: Y. M. g$ b% A5 ?% m
使用WEEKDAY()函数,横拖竖拖填满表格。0 i" ]; h: E, t8 t+ f! v+ r" Z: L
* R8 A; q5 S1 b! c' o6 A

/ J4 K$ J# c! D* |# }3、凡是余数为1的就是我们需要的日期。/ b0 r# P3 n$ e  @, l0 D3 ~
使用条件格式,让其突显出来。5 U. K  K8 Z$ |7 n* s
字体全为白色,凡是等于1的,背景改为红色,凡是不等于1的,背景改为白色。这样红色的就突显出来了,白色的就看不见了。
  [) H8 G$ Z1 x% V" v: Y* a( b; _
) ]( B& V9 v9 H) W$ N9 |+ m

+ Z* m8 P6 R* g1 a0 [& }- \9 _' b5 o- X; H) j0 s0 |9 u* s# e3 U

1 \& b1 _& D3 {4 m
* O8 i$ z" s; X) R! T

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
发表于 2015-11-1 20:41:27 | 显示全部楼层
想用一张表格来处理,发现WEEKDAY()函数不认其内部嵌套函数,比如WEEKDAY(DATE(,,,),[]),它的参数只能是已经计算好的值,弄不懂怎么回事,就分两张表格来处理,略微费点劲。
/ g: ?5 [$ d! H; P! D* b: ]  V  `& g% U/ r: T) {1 }

2 |# D) }8 W( d. U
2 O& Y7 S: m5 k7 C* H, P

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×

点评

兄弟的excel用的可是相当的熟练啊,佩服  发表于 2015-11-1 21:00
兄弟的excel用的可是相当的熟练啊,佩服  发表于 2015-11-1 21:00
兄弟的excel用的可是相当的熟练啊,佩服  发表于 2015-11-1 21:00
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-6-24 15:16 , Processed in 0.083924 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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