題目2:編寫程序提示用戶輸入年份以及該年的第一天是星期幾,然后在控制台上顯示該年的日歷表


year = eval(input("請輸入年份:"))
day = eval(input("請輸入該年的第一天是星期幾:"))
lst1 = ["January","February","March","April","May","June","July","August","September","October","November","December"]

def is_leapyear(year):
    if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
        return True
    else:
        return False

if is_leapyear(year):
    for j in range(1,13):
        print("      %d,%s"%(year,lst1[j-1]))
        print("Sun Mon Tue Wed Thr Fri Sat ")
        print("    " * day,end = "")

        if j == 1 or j == 3 or j == 5 or j == 7 or j == 8 or j == 10 or j == 12:
            for i in range(1,32):
                print(format(str(i),"4s"),end = "")
                if (i + day) % 7 == 0:
                    print()
            day =(i + day) % 7
            print()
        elif j == 2:
            for k in range(1,30):
                print(format(str(k),"4s"),end = "")
                if (k + day) % 7 == 0:
                    print()
            day =(k + day) % 7
            print()
        else :
            for l in range(1,31):
                print(format(str(l),"4s"),end = "")
                if (l + day) % 7 == 0:
                    print()
            day =(l + day) % 7
            print()
else:
    for a in range(1,13):
        print("      %d,%s"%(year,lst1[a-1]))
        print("Sun Mon Tue Wed Thr Fri Sat ")
        print("    " * day,end = "")

        if a == 1 or a == 3 or a == 5 or a == 7 or a == 8 or a == 10 or a == 12:
            for z in range(1,32):
                print(format(str(z),"4s"),end = "")
                if (z + day) % 7 == 0:
                    print()
            day =(z + day) % 7
            print()
        elif a == 2:
            for x in range(1,29):
                print(format(str(x),"4s"),end = "")
                if (x + day) % 7 == 0:
                    print()
            day =(x + day) % 7
            print()
        else :
            for c in range(1,31):
                print(format(str(c),"4s"),end = "")
                if (c + day) % 7 == 0:
                    print()
            day =(c + day) % 7
            print()
# 思路:
# (1)先打印出一月份的日歷
# (2)確認需要循環的程序
# (3)判斷平年閏年
# (4)實現打印日歷

這是打印一整年的日歷


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM