一:题目要求:
中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。用C或C++语言/java/python实现程序解决问题。需要通过键盘录入日期,再读文件,判断是晒网还是打鱼,再将结果写出。
首先需要解决的是录入日期的格式问题,根据题意要求,录入的日期格式为八位纯数字,比如2010年1月1日即为20100101,那么录入的日期为八位纯数字自然而然想到的是正则表达式 String regex = "\\d{8}"; 调用String类中的matches方法这很容易就可以判断录入日期是否为八位纯数字格式。判断为8位纯数字后没有结束,因为从2010年1月1日开始,所以输入的日期一定要大于2010年1月1日,其次,月份只有12个月,大月的天数为31天,小月的天数为30天,闰年的2月为29天,平年的2月为28天,这些都将影响到日期格式的正确与否,影响到接下来对日期的操作,我想到的是用String类中的subString()分别截取1-4位,5-6位,7-8位用Integer类中的parseInt()方法将截取的子串去转化为int类型就可以分别至上而下进行日期的具体格式判断。
接下来就需要通过键盘去录入日期,但是需要判断的日期个数并不确定,我想到的是在while&