该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。用决策表测试法为上述程序设计测试用例
举一反三
- NextDate函数包含三个变量month、day和year,函数的输出为输入日期后一天的日期。 要求输入变量month、day和year均为整数值,并且满足下列条件:1≤ month ≤12、1≤ day ≤31、1900≤ year ≤2100。(1)请写出该函数采用边界值分析法设计的测试用例。(2)请写出该函数采用健壮性边界值分析法设计的测试用例。
- Nextdate函数包含3个变量:month、day和year,函数的输出为输入日期后一天的日期。例如,输入为2000年3月3日,则函数的输出为2000年3月4日。要求输入变量month、day和year均为整数值,并且满足条件:1≤month≤12,1≤day≤31,1920≤year≤2050运用等价类划分的方法给出测试用例。(要求按确定等价类、建立等价类表、设计测试用例等写出分析过程)
- 编写程序,输入日期(年、月、日),输出它是该年的第几天。要求调用例7-10中定义的函数 day_of_year(year, month, day)。
- 用户输入公元年份和月份,程序输出这个月的日历(注意区分闰年和平年,2月份天数不同)。 print("本程序用于输出某个月份的日历") year=int(input("请输入公元年份:")) month=int(input("请输入月份:")) if ____________________________: #判断是不是闰年,闰年2月份多一天 leap=True else: leap=False if month in (1,3,5,7,8,10,12): days=31 elif month in (4,6,9,11): days=31 elif month==2: if ___: #leap为true则为闰年,2月份29天 days=29 else: days=28 else: print("一年只有12个月!") print("公元",year,month,"月的日历如下:") for day in range(1,days+1): print(day,"日",end=" ") 提示: 判断闰年的公式,年数能被4整除,并且不能被100整除;或者能被400整除。 测试程序,请分别输入2000年2月,和2001年2月,查看程序输出
- 编写程序实现,输入年、月、日,输出这一天是该年的第几天。 分析:如输入月份为1,则直接输出该日即可,如果输入月份为2,则用该日加上1月份的31天即可,后面依次类推。 提示: (1)用三个变量year 、month 、day分别表示年、月、日,并从键盘分别输入; (2)设变量leap,如果year是闰年,则leap取1,否则leap取0; (3)判断month是否1-12中的值,分别计算对应的day,即day=day+30还是day=day+31; 其中,当2月份时,要注意day=day+28+leap。