打印

[求助] 求助达人一个编程基础问题

0

求助达人一个编程基础问题

期末了,朋友孩子的大学计算机老师出了一道基础题。求助论坛的达人,希望能有完美的解决方案。

题目如下:

输出1000年至9999年所有的对称日,用VBA实现。

(所谓的对称日,就是无论您从左往右念,还是从右往左念,它都是一样的数字!比如:20211202)

TOP

0
这两天可能论坛比较卡,服务器不太正常。总是维护,也没人解答。
不过照例还是回复感谢一下。
本帖最近评分记录
  • 愚人随风 金币 +1 认真回复,奖励! 2021-12-11 13:23

TOP

0
语法不知道 不过逻辑大概是这样子:
首先循环遍历1000.1.1-9999.12.31内所有的日期
然后将date转换成字符串
字符串的顺叙格式肯定是  y1 y2 y3 y4  m1 m2 d1 d2     
拆分  if y1=d2 & y2=d1 & y3=m2 & y4=m1
将这天加入一个列表
本帖最近评分记录
  • 愚人随风 金币 +2 认真回复,奖励! 2021-12-11 13:23

TOP

0
有日期函数自然好用
没有日期函数需要自己写的话
第一注意大小月  第二注意闰年的2月
仔细想想总是能写出来的
本帖最近评分记录
  • 愚人随风 金币 +2 认真回复,奖励! 2021-12-11 13:27

TOP

0
这题只要逆向思考就好,因为年没有限制,所以从月日开始解题。表列所有月日,重反排而得其年!所以总共有366个排列(加2月29日),再扣掉年数小于1000的,也就是每月的10,20,30,共扣掉35个(每月3个,二月2个),应剩331个解,不谢。
本帖最近评分记录
  • 愚人随风 金币 +1 认真回复,奖励! 2022-1-13 22:56

TOP

0
第一次在LSP聚集地看到有人发编程题~~~没学过VB;解题思路大概就是:

日期拼接->反转字符->利用日期函数校验时间是否合法->如果合法则对称日成立
本帖最近评分记录
  • 愚人随风 金币 +1 认真回复,奖励! 2022-1-13 22:56

TOP

0
这题就是类判断回文吗,只不过加上闰年2月特判,还有注意月份,日期的范围,很简单的啊

TOP

0
VBA,好古老的东西啊,还记得毕设就是用这玩意写的,但已经完全想不起来了。
上面有解体思路,其实几个For循环也可以,年一直加,月1~12,日1~31再判断月份就好。

TOP

0
闰年判断出来,就知道月天数,然后判断正序和逆序就可以了,随手写了下用值应该是331个吧

TOP

0
用上时间函数和翻转,python里就两行代码的事情

TOP

当前时区 GMT+8, 现在时间是 2025-3-11 01:19