机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 5513|回复: 5

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

[复制链接]
发表于 2015-11-1 00:16:23 | 显示全部楼层 |阅读模式
本帖最后由 pacelife 于 2015-11-1 00:19 编辑 5 c) E' s$ c# R. N! h9 G: u, ?

- q  P8 N0 W# A& k' R& J# M这个题目根据欧拉计划第19题改编而来,有兴趣的同学不妨试一下,需要用到编程的知识:
; _4 }0 e, D# N7 n) G: H7 _
  • 1900年1月1日是星期一。
  • 30天的月份有:9月,4月,6月,11月。
  • 此外的月份都是31天,当然2月除外。
  • 2月在闰年有29天,其他时候有28天。
  • 年份可以被4整除的时候是闰年,但是不能被400整除的世纪年(100的整数倍年)除外。
    + f9 X1 d; C# E  M
计算1900年1月1日到2016年12月31日具体有哪些日期星期日落在了当月的第一天?
! U6 O# ^' T: k7 L4 t8 h' h. K原题只需要计算多少天,现在我把题目改成算出具体的日期,难度增加了一点,能做出来还是很有成就感的,下面我贴出我自己的算法,其实按照这些完全可以做一个万年历了
6 g( N, e, y. {. E3 N
$ Y5 z, W" L: P3 I( v1 @$ H
( {9 k- @. n+ Q! x8 ?0 t* i' j! R% O  F

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2015-11-1 08:17:03 | 显示全部楼层
看到日期就头疼,什么月份,星期几,几月几号。我觉得这些和天文联系更多,和数学联系较少。比如,为什么有的月份是30天,有的月份是31天,有的月份是28天?谁知道?
回复 支持 反对

使用道具 举报

发表于 2015-11-1 19:01:35 | 显示全部楼层
我用笨方法玩出来了
& o: ~0 Q& k6 u1 G
+ C  @6 o3 L" O+ ^% ]/ h# M( w9 d8 L

% d2 G- T0 d. N& f

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-1 20:14:04 | 显示全部楼层
能解释一下你的解题思路吗
回复 支持 反对

使用道具 举报

发表于 2015-11-1 20:35:19 | 显示全部楼层
本帖最后由 fwsc 于 2015-11-1 20:44 编辑 - `# l4 k& J. L, i& T- S1 r

3 _) G$ J3 |8 n& X: u9 |) u( Z" A6 M很简单啊,用Excel里的表格和函数
0 V4 S) N: K* y. N4 p
: y+ X1 c) y4 _/ ]6 a1、首先用一张表格生成每个月第一天日期。: }1 f/ S# N9 L) \( g& h3 ~0 {8 r
4 y/ D  X! {7 A* T1 f; ?) D1 [
% D$ F; |7 ]6 E
使用DATE()函数* b/ J0 [1 Y. v, y* ^
. W; n0 q: P2 d6 r$ w) X
7 f# x6 o7 U- t/ M6 E, n1 }5 ^. O5 g3 E
做一排出来,其余竖着拖,填满表格。
4 t6 H  m* S, ?1 ?5 S: n' q, h4 j5 V6 ^/ e4 [, r
2、用另一张表格计算该天是每周的第几天。! D8 S1 e+ c0 [2 b( J
使用WEEKDAY()函数,横拖竖拖填满表格。
- f+ k  z: r, K6 t5 K) w0 n% A
9 p# T8 h# R4 `! k1 i, m" D7 Q
) t# h4 _1 q6 w4 Z! e' e2 I3、凡是余数为1的就是我们需要的日期。
  T) ?' i1 m' s2 H: l( n使用条件格式,让其突显出来。
; n1 e3 q! c  X& k1 {' x7 H字体全为白色,凡是等于1的,背景改为红色,凡是不等于1的,背景改为白色。这样红色的就突显出来了,白色的就看不见了。
* @* h+ j& \7 M. B) r( i+ d3 P7 ~* g- d. `
$ z2 k, _. M2 d2 q

% K6 D( Q, y$ D; `8 V: X: T: r( B- U1 W# ^- D6 L

2 p* C8 R" C% S0 @. l( w
3 ], l+ f6 H0 `

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 2015-11-1 20:41:27 | 显示全部楼层
想用一张表格来处理,发现WEEKDAY()函数不认其内部嵌套函数,比如WEEKDAY(DATE(,,,),[]),它的参数只能是已经计算好的值,弄不懂怎么回事,就分两张表格来处理,略微费点劲。
) D3 @- B/ C: U/ U
* x) `, i/ b3 T9 a1 S- }
! S6 t( B4 I1 K8 [3 |# M5 b. G
) }4 P/ D4 `$ j+ t: y0 W. a

本帖子中包含更多资源

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

x

点评

兄弟的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-2-27 21:00 , Processed in 0.063612 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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