Professional Documents
Culture Documents
BTNhom100 101 102 103
BTNhom100 101 102 103
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)