You are on page 1of 3

#Bài 100

def ThangNam():
    Thang=int(input('Tháng: '))
    Nam=int(input('Năm: '))
    return Thang,Nam
def XacDinh(Thang, Nam):
    if Thang==2:
        if (Nam%4==0 and Nam%100!=0) or (Nam%100==0 and Nam%400==0):
            print('Tháng 2 có 29 ngày')
        else:
            print('Tháng 2 có 28 ngày')
    elif Thang in [4,6,9,11]:
        print('Tháng',Thang,'có 30 ngày')
    else:
        print('Tháng',Thang,'có 31 ngày')

Thang,Nam=ThangNam()
if Thang<0 or Thang>12 or Nam<1000 or Nam>9999:
    print()
else:
    XacDinh(Thang,Nam)

# Bài 101
def ThamSo():
    Tu=int(input('Tử số:'))
    Mau=int(input('Mẫu số:'))
    return Tu,Mau
def RutGon(Tu,Mau):
    A=Tu
    B=Mau
    while True:
        k=Mau
        Mau=Tu%Mau
        Tu=k
        if Mau==0:
            break
    return (A//k,B//k)

Tu,Mau=ThamSo()
if Mau==0:
    print('Mẫu phải khác 0 nha mày =))')
else:
    x,y=RutGon(Tu,Mau)
    print('Tử sau khi rút gọn:',x)
    print('Mẩu sau khi rút gọn:',y)
# Bài 102
def Nhap():
    C=int(input('Số cốc:'))
    Ca=int(input('Số muỗng canh:'))
    CaP=int(input('Số muỗng cà phê:'))
    return C,Ca,CaP
def QuyDoi(C,Ca,CaP):
    TongCaPhe=C*48+Ca*3+CaP
    if TongCaPhe>=48:
        Coc=TongCaPhe//48
        Canh=(TongCaPhe-Coc*48)//3
        CaPhe=TongCaPhe-Coc*48-Canh*3
    elif 3<=TongCaPhe<48:
        Coc=0
        Canh=TongCaPhe//3
        CaPhe=TongCaPhe-Canh*3
    else:
        Coc=0
        Canh=0
        CaPhe=TongCaPhe
    return Coc,Canh,CaPhe
C,Ca,CaP=Nhap()
Coc,Canh,CaPhe=QuyDoi(C,Ca,CaP)
print('Quy đổi thành ',Coc,' cốc, ',Canh,' muỗng canh, ',CaPhe,' muỗng cà
phê',sep='')
# Bài 103
def NTN():
    L=[]
    for k in range(1901,2001):
        for j in range(1,13):
            if j==2:
                if (k%4==0 and k%100!=0) or (k%100==0 and k%400==0):
                    i_max=29
                else:
                    i_max=28
            elif j in (4,6,9,11):
                i_max=30
            else:
                i_max=31
            for i in range(1,i_max+1):
                L=L+[(i,j,k)]  #Thêm all i,j,k thỏa mãn vào List L
    return L
def NgayMagic(L):
    for i,j,k in L: #L=[(1,1,1901),(2,1,1901),...]
        if i*j==k%100:
            print(i,'/',j,'/',k,' là ngày ma thuật')
L=NTN()
NgayMagic(L)

You might also like