""" 萬年曆 a,請輸入提示語句,輸入年,月 b,根據用戶輸入的年,判斷是否為閏年 c,根據用戶輸入的月,來判斷天數 d,用迴圈計算 用戶輸入的年份距1900年1月1日的總天數 e,用迴圈計數計算用戶輸入的月份距輸入年份的1月1日有多少天 f,相加d e 的天數 得到總天數 g,用總天數來計算輸入... ...
""" 萬年曆 a,請輸入提示語句,輸入年,月 b,根據用戶輸入的年,判斷是否為閏年 c,根據用戶輸入的月,來判斷天數 d,用迴圈計算 用戶輸入的年份距1900年1月1日的總天數 e,用迴圈計數計算用戶輸入的月份距輸入年份的1月1日有多少天 f,相加d e 的天數 得到總天數 g,用總天數來計算輸入月的第一天的星期數 h,根據g的值格式化輸出這個月的日曆 """ year =int(input("please input a year-number:")) #請輸入提示語句,輸入年 num_day = 0 #到輸入的月份之前有多少天 day_num = [31,28,31,30,31,30,31,31,30,31,30,31] #每月有多少天---列表 if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0): #根據用戶輸入的年,判斷是否為閏年 day_num[1] = 29 else: day_num[1] = 28 #print(day_num) month =int (input("please input a month-number:")) #請輸入提示語句,輸入月 for n in range(0,month -1): num_day += day_num[n] #print(num_day) #用迴圈計數計算用戶輸入的月份距輸入年份的1月1日有多少天 # print(num_day) #根據用戶輸入的月,來判斷天數 # day = int(input("please input day number:")) run_year_num = [] ping_year_num = [] ping_day = 365 run_day = 366 day_instance = 0 #1900 ---你輸入的年份的總天數 for f in range(1900,year): if f % 400 == 0 or (f % 4 == 0 and f % 100 != 0): run_year_num.append(f) else: ping_year_num.append(f) # print(run_year_num) # print(ping_year_num) if year == 1900: day_instance = num_day else: day_instance = 365*len(ping_year_num) + 366*len(run_year_num) + num_day #用迴圈計算 用戶輸入的年份距1900年1月1日的總天數 # print(day_instance) print("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六") space = 0 w = (day_instance - 6) % 7 #1號是周幾 for i in range(1,w +1): print("\t\t",end="") space += 1 for j in range(1,day_num[month - 1] + 1): print(j,"\t\t",end ="") space += 1 if space % 7 == 0: print("")