Python
Python
class TuGiac:
self.a = a
self.b = b
self.c = c
self.d = d
def tinhCV(self):
return self.a+self.b+self.c+self.d
def tim_canh_max(self):
return max(self.a,self.b,self.c,self.d)
tg = []
l_cv = []
for i in range(3):
ob = TuGiac(a,b,c,d)
[Link](ob)
l_cv.append(TuGiac(a,b,c,d).tinhCV())
for i in range(3):
for i in range(3):
print('{:<8} {:<8} {:<8} {:<8} {:<8}'.format('Canh a','Canh b','Canh c','Canh d','Chu vi'))
for i in range(3):
if l_cv[i] == min(l_cv):
import math
class HinhCN:
[Link] = dai
[Link] = rong
def tinhCV(self):
return ([Link]+[Link])*2
def tinhDT(self):
return [Link]*[Link]
def tinh_dc(self):
dc = [Link]([Link]**2+[Link]**2)
return '%.4f'%dc
hcn = []
DC = []
for i in range(3):
ob = HinhCN(dai,rong)
[Link](ob)
[Link](HinhCN(dai,rong).tinh_dc())
# tinh CV
for i in range(3):
# tinh DT
for i in range(3):
print("DT cua hcn thu",(i+1),"la: ",hcn[i].tinhDT())
for i in range(3):
if DC[i] == min(DC):
Đề 3:' hình vuông gồm độ dài các cạnh và 3 phương thức tính chu vi, tính diện tích, tính
độ dài đường chéo.
- Nhập 1 list có 3 hình vuông (hình vuông là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao
diện GUI)
import math
class HinhVuong:
self.a = a
def tinhCV(self):
return self.a*4
def tinhDT(self):
return self.a*self.a
def tinh_duong_cheo(self):
return (self.a*[Link](2))
hv = []
list_dc = []
for i in range(3):
ob = HinhVuong(a)
[Link](ob)
list_dc.append(ob.tinh_duong_cheo())
print('{:<8} {:<8}'.format(hv[i].a,hv[i].tinhCV()))
# tong DT cua 3 hv
tong_DT = 0
for i in range(3):
tong_DT += hv[i].tinhDT()
# đg chéo max:
for i in range(3):
if list_dc[i] == max(list_dc):
Đề 4: hình thang vuông gồm độ dài các cạnh và 2 phương thức tính chu vi, tính diện tích.
b. Yêu cầu 2 (CĐR L2; 4 điểm)
- Nhập 1 list có 3 hình thang vuông (hình thang vuông là các object tạo bởi class trong yêu cầu 1. Khuyến khích
tạo giao diện GUI)
class Thangvuong:
[Link]=canhtren
[Link]=canhben
[Link]=canhduoi
[Link]=chieucao
def Chuvi(self):
def Dientich(self):
HTV=[]
HTV_DT=[]
for i in range(3):
ob=Thangvuong(canhtren,canhben,canhduoi,chieucao)
[Link](ob)
HTV_DT.append(Thangvuong(canhtren,canhben,canhduoi,chieucao).Dientich())
print('{:<9} {:<9} {:<9} {:<9} {:<9} {:<9} {:<9}'.format("STT","Cạnh trên","Cạnh bên","Cạnh dưới","Chiều
cao","Chu vi","Diện tích"))
for i in range(3):
.format(i+1,HTV[i].canhtren,HTV[i].canhben,HTV[i].canhduoi,HTV[i].chieucao,HTV[i].Chuvi(),HTV[i].Dient
ich()))
tong=0
for i in range(3):
tong=tong+ HTV_DT[i]
for i in range(3):
if HTV_DT[i]==max(HTV_DT):
Đề 5: hình tam giác gồm độ dài các cạnh và 2 phương thức tính chu vi, tính diện tích.
b. Yêu cầu 2 (CĐR L2; 4 điểm)
- Nhập 1 list có 3 hình tam giác (hình tam giác là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo
giao diện GUI)
import math
class tamgiac:
self.a=a
self.b=b
self.c=c
def chuvi(self):
def dientich(self):
dt= [Link](p*(p-self.a)*(p-self.b)*(p-self.c))
return dt
TG=[]
DTTG=[]
for i in range(3):
a=float(input("Cạnh a= "))
b=float(input("Cạnh b= "))
c=float(input("Cạnh c= "))
ob=tamgiac(a,b,c)
[Link](ob)
[Link](tamgiac(a,b,c).dientich())
print('{:<9} {:<9} {:<9} {:<9} {:<9} {:<9}'.format("STT","Cạnh a","Cạnh b","Cạnh c","Chu vi","Diện tích"))
for i in range(3):
tong=0
for i in range(3):
tong=tong + DTTG[i]
for i in range(3):
if DTTG[i]==min(DTTG):
Đề 6: hình tam giác vuông gồm độ dài 2 cạnh góc vuông và 3 phương thức tính độ dài
cạnh huyền, tính diện tích, tính chu vi.
b. Yêu cầu 2 (CĐR L2; 4 điểm)
- Nhập 1 list có 3 hình tam giác (hình tam giác là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo
giao diện GUI)
import math
class tamgiac:
self.a=a
self.b=b
def canhhuyen(self):
return round(ch,3)
def chuvi(self):
return round(cv,3)
def dientich(self):
return round(dt,3)
TG=[]
DTTG=[]
CVTG=[]
for i in range(3):
a=float(input("Cạnh a= "))
b=float(input("Cạnh b= "))
ob=tamgiac(a,b)
[Link](ob)
[Link](tamgiac(a,b).dientich())
[Link](tamgiac(a,b).chuvi())
print('{:<9} {:<9} {:<9} {:<9} {:<9} {:<9}'.format("STT","Cạnh a","Cạnh b","Cạnh huyền","Chu vi","Diện
tích"))
for i in range(3):
tong=tong + DTTG[i]
if CVTG[i]== max(CVTG):
Đề 7: hình tam giác đều gồm độ dài cạnh và 3 phương thức tính độ dài đường cao, tính
diện tích, tính chu vi.
b. Yêu cầu 2 (CĐR L2; 4 điểm)
- Nhập 1 list có 3 hình tam giác đều(hình tam giác là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo
giao diện GUI)
import math
class tamgiac:
self.a=a
def duongcao(self):
return round(dc,3)
def chuvi(self):
return self.a *3
def dientich(self):
return round(dt,3)
TG=[]
DTTG=[]
CVTG=[]
for i in range(3):
a=float(input("Nhập a= "))
ob=tamgiac(a)
[Link](ob)
[Link](tamgiac(a).chuvi())
[Link](tamgiac(a).dientich())
for i in range(3):
tong=0
for i in range(3):
tong=tong + DTTG[i]
for i in range(3):
if CVTG[i]==min(CVTG):
Đề 8: hình hộp chữ nhật gồm độ dài cạnh và 2 phương thức tính diện tích xung quanh,
tính thể tích.
- Nhập 1 list có 3 hình hộp chữ nhật (hình hộp chữ nhật là các object tạo bởi class trong yêu cầu 1. Khuyến
khích tạo giao diện GUI)
class HinhHopCN:
self.a = a
self.b = b
self.h = h
def dientichXQ(self):
return 2*self.h*(self.a+self.b)
def thetich(self):
return self.a*self.b*self.h
hhcn = []
list_V = []
for i in range(3):
a = int(input("Nhap a = "))
b = int(input("Nhap b = "))
h = int(input("Nhap h = "))
ob = HinhHopCN(a,b,h)
[Link](ob)
list_V.append(HinhHopCN(a,b,h).thetich())
# DT xq cua 3 hhcn
for i in range(3):
tongV = 0
for i in range(3):
tongV += hhcn[i].thetich()
print("Tong the tich cua 3 hhcn vua nhap la: ", tongV)
# hinh co V max
for i in range(3):
if list_V[i] == max(list_V):
Đề 9: đường thẳng gồm tọa độ của 2 điểm trong mặt phẳng và 1 phương thức tính độ dài
của đoạn thẳng.
- Nhập 1 list có 3 đoạn thẳng (đoạn thẳng là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- Kiểm tra xem 3 cạnh vừa nhập có lập thành tam giác không?
import math
class DuongThang:
self.x1 = x1
self.y1 = y1
self.x2 = x2
self.y2 = y2
def dodai(self):
return [Link]((self.x2-self.x1)**2+(self.y2-self.y1)**2)
dt = []
dodai = []
for i in range(3):
x1 = float(input("Nhap x1 = "))
y1 = float(input("Nhap y1 = "))
x2 = float(input("Nhap x2 = "))
y2 = float(input("Nhap y2 = "))
ob = DuongThang(x1,y1,x2,y2)
[Link](ob)
[Link](DuongThang(x1,y1,x2,y2).dodai())
# tinh do dai
for i in range(3):
if dodai[0] + dodai[1] > dodai[2] and dodai[0] + dodai[2] > dodai[1] and dodai[1] + dodai[2] > dodai[0]:
else:
for i in range(3):
if dodai[i] == max(dodai):
Đề 10: class thí sinh gồm tên, năm sinh, điểm toán, điểm văn, điểm ngoại ngữ và 2
phương thức tính tuổi (tuồi = năm hiện tại – năm sinh), tính tổng điểm 3 môn
- Nhập 1 list có 3 thí sinh (thí sinh là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện GUI)
- Tính tổng điểm 3 môn của mỗi thí sinh vừa nhập
class SinhVien:
[Link] = Hoten
[Link] = Namsinh
[Link] =
Toan [Link] =
Van [Link] =
NN
def tinhtuoi(self):
return [Link]
def tong_3mon(self):
sv= []
tuoi = []
for i in range(3):
ob = SinhVien(ten,namsinh,toan,van,nn)
[Link](ob)
[Link](SinhVien(ten,namsinh,toan,van,nn).tinhtuoi())
for i in range(3):
for i in range(3):
if tuoi[i] == min(tuoi):
for i in range(0,2):
for j in range(i+1,3):
if sv[i].Toan >
sv[j].Toan: sv[i],sv[j] =
sv[j],sv[i]
Đề 11: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số chẵn/ lẻ,
kiểm tra số nguyên tố, kiểm tra số chính phương.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra các số chẵn
import math
class SoNguyen:
self.n = n
def chan_le(self):
if self.n%2==0:
return True
else:
return False
def soNT(self):
if self.n<2:
return False
else:
for i in range(2,int([Link](self.n)+1)):
if self.n%i==0:
return False
else:
return True
def chinhphuong(self):
i=0
while (i*i<=self.n):
if i*i==self.n:
return True
i+=1
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so chan
so_chan = []
for x in ds:
a = SoNguyen(x)
if a.chan_le() ==
True:
so_chan.append(x)
if len(so_chan)!=0:
else:
print("Ko co so chan")
tong = 0
for x in ds:
b = SoNguyen(x)
if [Link]() == True:
tong += x
# SNT max
snt = []
for x in ds:
c = SoNguyen(x)
if [Link]() == True:
[Link](x)
if len(snt) != 0:
else:
print("Ko co snt")
or
'''Tạo class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số chẵn/ lẻ, kiểm tra số nguyên tố,
kiểm tra số chính phương.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra các số chẵn
cuaso = Tk()
[Link]('350x300')
[Link]('-topmost', True)
# tạo label
[Link](x=10, y=20)
[Link](x=10, y=50)
[Link](x=10, y=80)
# tạo entry
[Link](x=100, y=20)
[Link](x=100, y=50)
[Link](x=100, y=80)
[Link]()
import math
class SoNguyen():
def chan_le(self):
if self.n % 2 == 0:
return True
else:
return False
def soNT(self):
if self.n < 2:
return False
else:
if self.n % i == 0:
return False
else:
return True
def chinhphuong(self):
i=0
if i * i == self.n:
return True
i += 1
else:
return False
def Thuchien():
a = int([Link]())
b = int([Link]())
c = int([Link]())
ds = []
[Link](a)
[Link](b)
[Link](c)
# in so chan
so_chan = []
for x in ds:
a1 = SoNguyen(x)
if a1.chan_le() == True:
so_chan.append(x)
if len(so_chan) != 0:
[Link](x=110, y=150)
else:
# print("Ko co so chan")
[Link](x=110, y=150)
tong = 0
for x in ds:
b1 = SoNguyen(x)
if [Link]() == True:
tong += x
if tong != 0:
nhan3 = Label(cuaso, font=('Arial,Bold', 12), text='Tong chinh phuong la: ' + str(tong))
[Link](x=110, y=180)
else:
[Link](x=110, y=180)
# SNT max
snt = []
for x in ds:
c = SoNguyen(x)
if [Link]() == True:
[Link](x)
if len(snt) != 0:
[Link](x=110, y=210)
else:
# print("Ko co snt")
[Link](x=110, y=210)
[Link](x=250, y=100)
[Link]()
Đề 12: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số chẵn/ lẻ,
kiểm tra số nguyên tố, kiểm tra số chính phương.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra các số lẻ
import math
class SoNguyen:
self.n = n
def chan_le(self):
if self.n%2==0:
return True
else:
return False
def soNT(self):
if self.n<2:
return False
else:
for i in range(2,int([Link](self.n)+1)):
if self.n%i==0:
return False
else:
return True
def chinhphuong(self):
i=0
while (i*i<=self.n):
if i*i==self.n:
return True
i+=1
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so le
so_le = []
for x in ds:
a = SoNguyen(x)
if a.chan_le() == False:
so_le.append(x)
if len(so_le)!=0:
else:
print("Ko co so le")
tich = 1
for x in
ds:
b = SoNguyen(x)
if [Link]() == True:
tich *= x
print("Tich cac snt la: ",
so_cp = []
for x in ds:
c = SoNguyen(x)
if [Link]() == True:
so_cp.append(x)
if len(so_cp)!=0:
else:
Đề 13: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số
âm/dương, kiểm tra số đối xứng, kiểm tra số hoàn thiện.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra các số âm
class SoNguyen:
self.n = n
def amduong(self):
if self.n>0:
return True
else:
return False
def soDoiXung(self):
m = str(self.n)
p = m[::-1]
if m==p:
return True
else:
return False
def soHoanThien(self):
s=0
for i in range(1,self.n):
if self.n%i==0:
s += i
if s==self.n:
return True
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so am
so_am = []
for x in ds:
a = SoNguyen(x)
if [Link]() == False:
so_am.append(x)
if len(so_am)!=0:
else:
print("Ko co so
xung tong = 0
for x in ds:
b = SoNguyen(x)
if [Link]() == True:
tong += x
so_ht = []
for x in ds:
c = SoNguyen(x)
if [Link]() == True:
so_ht.append(x)
if len(so_ht)!=0:
else:
Đề 14: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số
âm/dương, kiểm tra số đối xứng, kiểm tra số hoàn thiện.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra các số dương
class SoNguyen:
self.n = n
def amduong(self):
if self.n>0:
return True
else:
return False
def soDoiXung(self):
m = str(self.n)
p = m[::-1]
if m==p:
return True
else:
return False
def soHoanThien(self):
s=0
for i in range(1,self.n):
if self.n%i==0:
s += i
if s==self.n:
return True
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so duong
so_dg = []
for x in ds:
a = SoNguyen(x)
if [Link]() == True:
so_dg.append(x)
if len(so_dg)!=0:
else:
print("Ko co so duong")
tong = 0
for x in ds:
b = SoNguyen(x)
if [Link]() == True:
tong += x
so_dx = []
for x in ds:
c = SoNguyen(x)
if [Link]() == True:
so_dx.append(x)
if len(so_dx)!=0:
else:
class SoNguyen:
self.n = n
def amduong(self):
if self.n>0:
return True
else:
return False
def soDoiXung(self):
m = str(self.n)
p = m[::-1]
if m==p:
return True
else:
return False
def soHoanThien(self):
s=0
for i in range(1,self.n):
if self.n%i==0:
s += i
if s==self.n:
return True
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so hoan thien
so_ht = []
for x in ds:
a = SoNguyen(x)
if [Link]() == True:
so_ht.append(x)
if len(so_ht)!=0:
else:
tich = 1
for x in
ds:
b = SoNguyen(x)
if [Link]() == True:
tich *= x
# so am max
so_am = []
for x in ds:
c = SoNguyen(x)
if [Link]() == False:
so_am.append(x)
if len(so_am)!=0:
else:
print("Ko co so am")
Đề 16: class số thực gồm giá trị của số thực và 3 phương thức kiểm tra số âm, kiểm tra
số dương, đếm số chữ số sau dấy phẩy.
#b. Yêu cầu 2 (CĐR L2; 4 điểm)
# - Tạo 1 tuple có 3 số thưc (số thực là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
# - In ra các số dương
class Sothuc:
self.n = n
def ktam(self):
if self.n< 0:
return True
def ktduong(self):
if self.n >0:
return True
def dem(self):
if self.n %1 ==0:
return 0
else:
self.n = str(self.n)
return self.n[::-1].find('.')
l=[]
s=[]
for i in range(0,3):
a =float(input("nhap:"))
[Link](Sothuc(a))
obj =Sothuc
[Link](obj)
tich =1
for i in range(0,3):
if(s[i].ktduong()==1):
print("so: ",s[i].n)
for i in range(0,3):
if (s[i].ktam()==1):
tich *= s[i]
print(tich)
for i in range(0,3):
Đề 17: class phương trình bậc 2 gồm giá trị a,b,c và 1 phương thức tìm nghiệm.
b. Yêu cầu 2 (CĐR L2; 4 điểm)
- Tạo 1 list có 2 phương trình bậc 2 (phương trình bậc 2 là các object tạo bởi class trong yêu cầu 1. Khuyến
khích tạo giao diện GUI)
- Tìm nghiệm lớn nhất trong các nghiệm của 2 phương trình trên.'''
import math
class phuongtrinh:
self.a=a
self.b=b
self.c=c
def nghiem(self):
if self.a ==0:
if self.b==0:
return 0
else:
return -self.c/self.b
else:
if denta ==0:
return False
else:
x1= -(self.b + [Link](denta)) / 2*self.a
return x1,x2
pt=[]
for i in range(2):
a=int(input("a= "))
b=int(input("b= "))
c=int(input("C= "))
ob=phuongtrinh(a,b,c)
[Link](ob)
for i in range(2):
nghiem=[]
for i in range(2):
[Link](pt[i].nghiem())
tup=tuple(nghiem)
or
INF = 'inf'
ERROR = 'error'
list_No = []
class GiaiPT_Bac1():
self.b = b
def giaiPT(self):
if self.a == 0:
if self.b == 0:
return 'inf'
else:
return 'error'
else:
x = -self.b/self.a
return [x]
class GiaiPT_Bac2():
self.a = a
self.b = b
self.c = c
def GiaiPT(self):
a = self.a
b = self.b
c = self.c
if a == 0:
return [Link]()
else:
delta = (b**2-4*a*c)
if delta == 0:
return [-b/(2*a)]
if delta > 0:
delta = sqrt(delta)
x1 = (-b-delta)/(2*a)
x2 = (-b+delta)/(2*a)
if delta < 0:
return 'inf'
def input(self):
def PT_PhuonTrinh(pt):
if [Link]() == INF:
elif len([Link]()) == 2:
list_No.append([Link]()[0])
list_No.append([Link]()[1])
print(
else:
list_No.append([Link]()[0])
def main():
list_pt = []
for i in range(2):
i)
temp = GiaiPT_Bac2()
[Link]()
list_pt.append(temp)
for i in range(2):
PT_PhuonTrinh(list_pt[i])
tub_no = tuple(list_No)
print(tub_no)
main()
# a = GiaiPT_Bac2(4, 3, 2)
# PT_PhuonTrinh(a)
Đề 18: class nhân viên gồm họ tên, số năm công tác, lương cơ bản, hệ số lương và
phương thức tính lương giả thiết rằng
lương = lương cơ bản * hệ số lương + số năm công tác *10% lương cơ bản.
- Tạo 1 list có 3 nhân viên (nhân viên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
- In ra danh sách đầy đủ các thông tin của 3 nhân viên vừa nhập
class NhanVien:
[Link] = Hoten
[Link] = sonamCT
[Link] = luongcb
[Link] = hsluong
def tinh_luong(self):
for i in range(3):
ob = NhanVien(ten,sonamCT,luongcb,hsluong)
[Link](ob)
# ds nv
print('{:<15} {:<15} {:<15} {:<15} {:<15}'.format('Ho ten','So nam CT','Luong CB','Hs luong','Luong'))
for i in range(3):
for i in range(0,2):
for j in range(i+1,3):
nv[i],nv[j] = nv[j],nv[i]
# tong luong
tong = 0
for i in range(3):
tong += nv[i].tinh_luong()
tong)
Đề 19: class hình tròn gồm bán kính và 2 phương thức tính chu vi, diện tích.
- Tạo 1 list có 5 hình tròn (hình tròn là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
self.r = r
def tinhCV(self):
return 2*3.14*self.r
def tinhDT(self):
return 3.14*self.r*self.r
ht = []
for i in range(5):
[Link](HinhTron(r))
i in range(5):
# tong DT
tong = 0
for i in range(5):
tong += ht[i].tinhDT()
for i in range(0,4):
for j in range(i+1,5):
ht[i],ht[j] = ht[j],ht[i]
Đề 20: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số
âm/dương, kiểm hoàn thiện, kiểm tra số chính phương.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
self.n = n
def amduong(self):
if self.n>0:
return True
else:
return False
def soHoanThien(self):
s=0
for i in range(1,self.n):
if self.n%i==0:
s += i
if s==self.n:
return True
else:
return False
def chinhphuong(self):
i=0
while (i*i<=self.n):
if i*i==self.n:
return True
i+=1
else:
return False
ds = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so hoan thien
so_ht = []
for x in ds:
a = SoNguyen(x)
if [Link]() == True:
so_ht.append(x)
if len(so_ht)!=0:
else:
tich = 1
for x in
ds:
b = SoNguyen(x)
if [Link]() == True:
tich *= x
# so am max
so_am = []
for x in ds:
c = SoNguyen(x)
if [Link]() == False:
so_am.append(x)
if len(so_am)!=0:
else:
print("Ko co so am")
Đề 21: class lũy thừa gồm giá trị của 1 số nguyên và 3 phương thức tính bình phương,
tính lập phương, tính giai thừa
- Nhập 1 list có N object lũy thừa (là object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện GUI)
- Tạo 1 dictionary có key là số nguyên vừa nhập, value là lập phương của số nguyên đó.
class LuyThua:
self.n = n
def binhphuong(self):
return n*n
def lapphuong(self):
return n**3
def giaithua(self):
giaithua = 1
if n==0 or n==1:
return giaithua
for i in range(2,n+1):
giaithua *= i
return giaithua
for i in range(x):
n = int(input("Nhap n = "))
ob = LuyThua(n)
[Link](n)
ds_3.append([Link]())
ds_gt.append([Link]())
dic = {}
for i in range(len(ds)):
dic[ds[i]] = ds_3[i]
print(dic)
# in ra giai thua
tong = 0
for i in range(len(ds_3)):
tong += ds_3[i]
class SoNguyen:
self.n = n
def chan_le(self):
if self.n%2==0:
return True
else:
return False
def chinh_phuong(self):
i=0
while (i**i<=self.n):
if i**i==self.n:
return True
i += 1
else:
return False
def so_dao(self):
soDaoNguoc = 0
while(self.n>0):
chuSoCuoi = self.n % 10
self.n = self.n//10
return soDaoNguoc
number = []
so_cp = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
# in so dao
for i in range(3):
# tong so le
tong = 0
for x in number:
m = SoNguyen(x)
if m.chan_le() == False:
tong += x
for x in number:
a = SoNguyen(x)
if a.chinh_phuong() == False:
so_cp.append(x)
Đề 23: class số nguyên gồm giá trị của số nguyên và 3 phương thức kiểm tra số chẵn/ lẻ,
kiểm tra số chính phương, tìm số đảo.
- Nhập 1 list có 3 số nguyên (số nguyên là các object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện
GUI)
class SoNguyen:
self.n = n
def chan_le(self):
if self.n%2==0:
return True
else:
return False
def soChinhPhuong(self):
i=0
while (i*i<=self.n):
if i*i == self.n:
return True
i+=1
else:
return False
def so_dao(self):
soDaoNguoc = 0
while (self.n>0):
chuSoCuoi = self.n%10
self.n = self.n//10
return soDaoNguoc
list = []
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
for x in list:
a = SoNguyen(x)
[Link](a.so_dao())
dic = {}
for i in range(3):
dic[list[i]] = list1[i]
print(dic)
# tong so dao
tong = 0
for i in range(len(list1)):
tong += list1[i]
for x in list:
b = SoNguyen(x)
if [Link]() == True:
[Link](x)
if len(list2)!=0:
else:
Đề 24: class giai thừa gồm giá trị của 1 số nguyên và 2 phương thức tính giai thừa của
số nguyên, tính tổng các số từ 1 đến số nguyên đó.
- Nhập 1 list có 3 object giai thừa (là object tạo bởi class trong yêu cầu 1. Khuyến khích tạo giao diện GUI)
- Tạo 1 dictionary có key là số nguyên vừa nhập, value là giai thừa của số nguyên đó.
class GiaiThua:
self.n = n
def tinh_giai_thua(self):
giaithua = 1
if n==0 or n==1:
return 1
for i in range(2,n+1):
giaithua *= i
return giaithua
def tinh_tong(self):
sum = 0
for i in range(n):
sum += i
return sum
for i in range(3):
n = int(input("Nhap n = "))
[Link](n)
[Link](GiaiThua(n).tinh_giai_thua())
[Link](GiaiThua(n).tinh_tong())
dic = {}
for i in range(3):
dic[list[i]] = list1[i]
print(dic)
# cac tong
tup = tuple(list1)
class DienTro:
self.mau1 = mau1
self.mau2 = mau2
self.mau3 = mau3
def vongmau(self,mau):
[Link] = mau
if 'mau'.upper() == 'den'.upper():
return 0
if 'mau'.upper() == 'nau'.upper():
return 1
if 'mau'.upper() == 'do'.upper():
return 2
if 'mau'.upper() == 'cam'.upper():
return 3
if 'mau'.upper() == 'vang'.upper():
return 4
return 6
if 'mau'.upper() == 'tim'.upper():
return 7
if 'mau'.upper() == 'xam'.upper():
return 8
if 'mau'.upper() == 'trang'.upper():
return 9
def giatri(self):
return mau1
Or
cuaso = Tk()
[Link]('1500x1500')
[Link]('-topmost', True)
# tạo label
[Link](x=10, y=20)
[Link](x=10, y=50)
[Link](x=10, y=80)
# tạo entry
[Link](x=110, y=20)
[Link](x=110, y=50)
[Link]()
[Link](x=330, y=20)
[Link](x=330, y=50)
[Link](x=330, y=80)
# tạo entry
[Link](x=440, y=20)
[Link](x=440, y=50)
[Link](x=440, y=80)
[Link](x=630, y=20)
[Link](x=630, y=50)
[Link](x=630, y=80)
# tạo entry
[Link](x=740, y=20)
[Link](x=740, y=50)
[Link](x=740, y=80)
class DienTro():
Vong_1 self.Vong_2
= Vong_2
self.Vong_3 = Vong_3
def Doc_vach(self):
vach_mau = {
'den': 0,
'nau': 1,
'do': 2,
'cam': 3,
'vang': 4,
'xanhla': 5,
'xanhdatroi': 6,
'tim': 7,
'xam': 8,
'trang': 9
# dùng dict để tạo cặp Key-Value giúp truy xuất bảng cho nhanh
v1 = vach_mau.get(self.Vong_1)
v2 = vach_mau.get(self.Vong_2)
v3 = vach_mau.get(self.Vong_3)
return gia_tri
def XuLy_Input(string):
string = [Link]()
return string
def Thuchien():
list_DienTro =
[]
# for i in range(3):
Vach_2 = [Link]()
Vach_3 = [Link]()
Vach_1 = XuLy_Input(Vach_1)
Vach_2 = XuLy_Input(Vach_2)
Vach_3 = XuLy_Input(Vach_3)
Vach_3) list_DienTro.append(DienTro_1)
Vach_1 = [Link]()
Vach_2 = [Link]()
Vach_3 = [Link]()
Vach_1 = XuLy_Input(Vach_1)
Vach_2 = XuLy_Input(Vach_2)
Vach_3 = XuLy_Input(Vach_3)
Vach_3) list_DienTro.append(DienTro_1)
Vach_1 = [Link]()
Vach_2 = [Link]()
Vach_3 = [Link]()
Vach_1 = XuLy_Input(Vach_1)
Vach_2 = XuLy_Input(Vach_2)
Vach_3 = XuLy_Input(Vach_3)
list_Gia_tri = []
for i in range(3):
Gia_tri_R = list_DienTro[i].Doc_vach()
list_Gia_tri.append(Gia_tri_R)
[Link](x=110, y=150)
tup_R = tuple(list_Gia_tri)
# print(tup_R)
[Link](x=110, y=180)
R_min = min(list_Gia_tri)
nhan34 = Label(cuaso, font=('Arial,Bold', 12), text='Dien tro co tro khang nho nhat La::'
+ str(R_min))
[Link](x=110, y=210)
[Link](x=250, y=600)
[Link]()