lO MoARcPSD| 45467232
TRƯỜNG ĐI HC VINH
TRƯỜNG SƯ PHM
NGUYỄN HƯƠNG GIANG – THÁI TH QUNH HOA
DƯƠNG TH PHƯƠNG LINH NGUYỄN NHT LONG
THÁI PHÚC THÀNH CẦM BÁ PHONG
ĐỀ TÀI SỐ 01
ĐỒ ÁN KẾT THÚC HC PHẦN
LẬP TRÌNH HƯỚNG ĐỐI TƯNG
Ngh An, tháng 6/2024
KHOA TIN H
C
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
NỘI DUNG BÁO CÁO
I. Đề tài
II. Phân tích thiết kế các lớp
III. Biểu diễn các lớp
IV. Ni dung code input, output
1. Nội dung code
2. File Input.inp.txt cha d liệu c y in thường, y in laser,
máy in u
3. Kết quả màn hình output ra màn hình notepad
lO MoARcPSD| 45467232
LI M ĐU
Lập tnh hưng đối tưng (Tiếng Anh: Object-oriented programming - OOP) là mt
mu hình lp tnh da trên khái niệm ối tượng", mà trong đó, đối tưng chứa đng
các d liệu trong các trường, thưng đưc gi là các thuc tính; và nguồn, đưc
t chc thành các phương thc. Phương thc giúp cho đối tượng th truy xut và
hiu chnh các trưng d liu ca đối tưng khác, mà đối tượng hin tại tương tác
ối tượng được h tr các phương thc "this" hoc "self"). Trong lập tnh hưng đi
ng, chương trình máy tính đưc thiết kế bng cách tách nó ra khi phm vi các
đối tưng tương tác vi nhau. Ngôn ng lập tnh hướng đối tượng khá đa dng, phn
ln là các ngôn ng lp trình theo lớp, nghĩa làc đối tượng trong các ngôn ng này
đưc xem như thc th ca mt lp, được ng đ định nghĩa một kiu d liu.
Nhng đối tưng trong mt ngôn ng OOP là các kết hp gia và d liu mà
chúng đưc nhìn nhn như là một đơn v duy nht. Mỗi đối tượng mt tên riêng
bit và tt c các tham chiếu đến đối tượng đó đưc tiến hành qua tên ca nó. Như
vy, mỗi đối tưng kh năng nhn vào các thông báo, x d liu (bên trong ca
nó), và gi ra hay tr li đến các đối tượng khác hay đến môi trường.
Đa phn các ngôn ng lp trình thông dng nht hiện nay (như C++, Delphi, Java,
Python, v.v...) là các ngôn ng lập tnh đa mẫu hình và đu h tr lập trình hưng
đối tưng nhiu mức độ khác nhau, thưng đưc kết hp vi lp tnh mnh lnh,
lp trình th tc. Các nn ng lập trình hưng đối tượng đáng chú ý gm Java,
C++, C#, Python,...Đây ng là một môn tiên quyết cho nhiu môn hc chuyên ngành
ca sinh viên ngành Phạm Tin Hc.
Sinh viên nm vng kiến thc ca môn hc này s sở cho vic tiếp cn
các nn ng lp tnh hiện đi, các công c phát trin phn mm. Sinh viên s đưc
trang b các phương pháp và kỹ thut lp tnh hiện đại để phát trin nhng phn mm
chất lượng cao, tính m và kh năng đáp ng nhng yêu cu cu thc tế.
Sinh viên đưc rèn luyn các k năng đọc, phân ch, thiết kế và gii quyết bài toán
theo vic tiếp cận hướng đối tượng, kh năng tìm kiếm các tài liu h tr hc tp và
kh năng làm vic nhóm.
Sau khi kết thúc môn học, chúng em đã đưc nhận đ tài t phía giảng viên đ làm
đò án nhm rèn luyn li kiến thc, tiếp cận sau hơn vào vic phân tích, thiết kế, gii
quyết bài toán theo hưng đối tưng, ng dng nó đ viết ra các phn mềm, đồng
thi hoàn thành c sn phm ca đồ án.
lO MoARcPSD| 45467232
LI CẢM ƠN
Li đầu tiên, nhóm chúng em xin đưc gi li cảm ơn chân thành tới các Thy,
Cô tại Trường Đại Học Vinh, đặc bit là Thy Cô Khoa Tin Hc, Vin K Thut và
Công Ngh, những ni đã trực tiếp ging dạy, giúp đ chúng em trong những năm
tháng mi bắt đầu chp chng vào trường.
Sinh viên ngành Phm Tin Hc ngày nay phi không ngng hc hi, cp nht
những điu mi, biết vn dng những điu học đưc vào thc tế cuc sng. Trong
quá trình tiến hành làm đồ án lập trình hướng đối tượng là c đầu tiên mà nhóm
chúng em đi sâu vào nhng lĩnh vc Công Ngh Thông Tin da trên những đã hc
và i s ng dn ca các Thầy trong ngành. Đ đồ án lập tnh hưng đối
ng được hn thin, ngoài s c gng ca tt c mọi ni trong nhóm thì còn
s giúp đỡ, hướng dn tn nh cac Thy . Nhóm 1 xin chân thành cảm ơn các
Thy Cô trong Khoa Tin Học, đc bit là cô Trn Th Kim Oanh Ni luôn nhit tình
trong vic trang b cho chúng em kiến thc và k năng bản cn thiết và hướng dn
chúng em hoàn thành đ án đúng tiến độ, đạt kết qu tt.
Tuy đã cố gng thc hiện đề tài mt cách trn vẹn. Nhưng trong quá trình làm bài, do
hiu biết ca bn em còn nhiu hn chế và thiếu kinh nghim thc tin nên ni dung
đồ án rât khó tránh khi nhng thiếu sót. Nhóm em rt mong nhận đưc nhng li
góp ý, nhng li nhn xét t Thy Cô và các bạn để chúng em th hoàn thành tt
hơn nữa cho các đ án sau này. Các ý kiến nhn xét, góp ý chân thành t Thy
và các bn xin gi v địa ch email: .....
Chúng em xin chân thành cảm ơn!
lO MoARcPSD| 45467232
1. Bng phân chia công vic trong nhóm
STT
H tên
Chc v trong
nhóm
1
Nguyễn Hương Giang
Nhóm Trưởng
2
Thái Th Qunh Hoa
Thành Vn
3
Dương Th Phương Linh
Thành Vn
4
Nguyn Nht Long
Thành Vn
5
Thái Phúc Thành
Thành Vn
6
Cm Bá Phong
Thành Vn
2. Bng t đánh giá nhóm
STT
H tên
T đánh giá
Loi A, B, C, D theo các tiêu chí trong bảng i
1
Nguyễn Hương Giang
A+
2
Thái Th Qunh Hoa
A
3
Dương Th Phương Linh
A
4
Nguyn Nht Long
A
5
Thái Phúc Thành
A
6
Cm Bá Phong
B
Các tiêu chí đánh giá:
Tiêu chí
đánh giá
Mức đánh giá
A (8.5 10)
B (7.0 8.4)
C (5.5 6.9)
D (4.0 5.4)
F (0 3.9)
Hp tác
nhóm
(CLO 3.1)
- Luôn lng
nghe, chia
s và ng h
nhng n
lc ca
thành vn
trong nhóm
- Thường
lng nghe,
chia s
trong nhóm
- Có 3, 4 ln
tham gia
tho lun
nhóm và
nh lun
- Có 1, 2 ln
tham gia
tho lun
nhóm và
nh lun
- Không bao gi
tham gia tho
lun trong
nhóm
lO MoARcPSD| 45467232
Tho lun
nhóm
- Hc hi,
tìm kiếm, thu
thp và
- Thu thp
thông tin
- Ch thu
thp thông
- Có đưa ra
ý tưởng
nhưng
- Không thu thp
thông tin
(CLO 3.1)
đưa ra nhiu
tài liu liên
quan đề tài
- Đưa ra
nhng ý
ng, quan
đim ràng
ln quan
đến đề tài
bn v đề tài
- Thnh
thong đưa
ra nhng ý
ng ln
quan đến đ
tài
tin khi yêu
cu
- Ít khi đưa
ra ý tưng
ln quan
đến đ tài
không rõ
ràng và
không liên
quan đến
yêu cu ca
nhóm
hay đóng góp ý
kiến cho nhóm
lO MoARcPSD| 45467232
I. Đ tài
II. Phân ch thiết kế các lp
1. Lp Máy In
- Thuc tính: loai, SoHieu, MauSac, TocDo, CuongDo, BoNho, SoLuong.
- Phương thc: NhapThongTin, HienThiThongTin, getSoHieu, getSoLuong,
getDPI, getSoMau.
2. Lp Máy In Laser( kế tha t lp máy in)
- Thuc tính: s đim in trên một đơn v in ca máy tính(DPI).
- Phương thức: NhapThongTin, HienThiThongTin, getDPI, getSoMau.
3. Lp Máy In Màu ( kế tha lp máy in laser)
lO MoARcPSD| 45467232
- Thuc tính: SoMau.
-Phương thức: NhapThongTin, HienThiThongTin, getSoMau.
4. Lớp a Đơn n Hàng
- Thuc tính: MaHoaDon, NguoiMuaHang, MatHang, SoLuong, Tien,
TongTien, NgayBanHang.
- Pơng thc: Nhapthongtin, HienThiThongTin, getMaHoaDon,
getNguoiMuaHang, getMatHang, getSoLuong, getNgayBanHang.
5. Lớp a Đơn Nhập ng
- Thuc tính: MaHoaDon, MatHang, SoLuong, Tien, TongTien,
NgayNhapHang.
- Pơng thc: Nhapthongtin, HienThiThongTin, getMaHoaDon,
getMatHang, getSoLuong, getNgayNhapHang.
6. Lp Qun Máy In
- Thuc tính: MaxMayIn, DanhSachMayIn[MaxMayIn], SoLuongMayIn,
SoLuongHoaDonBanHang, SoLuongHoaDonNHapHang.
- Phương thức: ThemMayIn, NhapDuLieuTuFile, NhapMayInThuong,
NhapMayInLaser, NhapMayInMau, HienThiDanhSach, XuatHoaDon,
ThongKe, TimKiem, ThongBaoLoaiMayInConIt, ThemHoaDonBanHang,
ThemHoaDonNhapHang, HienThiDanhSachHoaDonNhapHang,
HienThiDanhSachHoaDonBanHang, CapNhatSoLuong.
III. Biu din các lp
lO MoARcPSD| 45467232
IV. Ni dung code input, output
1. Ni dung code
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232
lO MoARcPSD| 45467232

Preview text:

lO M oARcPSD| 45467232
TRƯỜNG ĐẠI HỌC VINH TRƯỜNG SƯ PHẠM
KHOA TIN H C
NGUYỄN HƯƠNG GIANG – THÁI THỊ QUỲNH HOA
DƯƠNG THỊ PHƯƠNG LINH – NGUYỄN NHẬT LONG
THÁI PHÚC THÀNH – CẦM BÁ PHONG ĐỀ TÀI SỐ 01
ĐỒ ÁN KẾT THÚC HỌC PHẦN
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Nghệ An, tháng 6/2024 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 NỘI DUNG BÁO CÁO I. Đề tài
II. Phân tích thiết kế các lớp III. Biểu diễn các lớp
IV. Nội dung code và input, output 1. Nội dung code
2. File Input.inp.txt chứa dữ liệu các máy in thường, máy in laser, máy in màu
3. Kết quả màn hình output ra màn hình notepad lO M oARcPSD| 45467232 LỜI MỞ ĐẦU
Lập trình hướng đối tượng (Tiếng Anh: Object-oriented programming - OOP) là một
mẫu hình lập trình dựa trên khái niệm "đối tượng", mà trong đó, đối tượng chứa đựng
các dữ liệu trong các trường, thường được gọi là các thuộc tính; và mã nguồn, được
tổ chức thành các phương thức. Phương thức giúp cho đối tượng có thể truy xuất và
hiệu chỉnh các trường dữ liệu của đối tượng khác, mà đối tượng hiện tại có tương tác
(đối tượng được hỗ trợ các phương thức "this" hoặc "self"). Trong lập trình hướng đối
tượng, chương trình máy tính được thiết kế bằng cách tách nó ra khỏi phạm vi các
đối tượng tương tác với nhau. Ngôn ngữ lập trình hướng đối tượng khá đa dạng, phần
lớn là các ngôn ngữ lập trình theo lớp, nghĩa là các đối tượng trong các ngôn ngữ này
được xem như thực thể của một lớp, được dùng để định nghĩa một kiểu dữ liệu.
Những đối tượng trong một ngôn ngữ OOP là các kết hợp giữa mã và dữ liệu mà
chúng được nhìn nhận như là một đơn vị duy nhất. Mỗi đối tượng có một tên riêng
biệt và tất cả các tham chiếu đến đối tượng đó được tiến hành qua tên của nó. Như
vậy, mỗi đối tượng có khả năng nhận vào các thông báo, xử lý dữ liệu (bên trong của
nó), và gửi ra hay trả lời đến các đối tượng khác hay đến môi trường.
Đa phần các ngôn ngữ lập trình thông dụng nhất hiện nay (như C++, Delphi, Java,
Python, v.v...) là các ngôn ngữ lập trình đa mẫu hình và đều hỗ trợ lập trình hướng
đối tượng ở nhiều mức độ khác nhau, thường được kết hợp với lập trình mệnh lệnh,
lập trình thủ tục. Các ngôn ngữ lập trình hướng đối tượng đáng chú ý gồm có Java,
C++, C#, Python,...Đây cũng là một môn tiên quyết cho nhiều môn học chuyên ngành
của sinh viên ngành Sư Phạm Tin Học.
Sinh viên nắm vững kiến thức của môn học này sẽ là cơ sở cho việc tiếp cận
các ngôn ngữ lập trình hiện đại, các công cụ phát triển phần mềm. Sinh viên sẽ được
trang bị các phương pháp và kỹ thuật lập trình hiện đại để phát triển những phần mềm
có chất lượng cao, có tính mở và có khả năng đáp ứng những yêu cầu cuả thực tế.
Sinh viên được rèn luyện các kỹ năng đọc, phân tích, thiết kế và giải quyết bài toán
theo việc tiếp cận hướng đối tượng, khả năng tìm kiếm các tài liệu hỗ trợ học tập và
khả năng làm việc nhóm.
Sau khi kết thúc môn học, chúng em đã được nhận đề tài từ phía giảng viên để làm
đò án nhằm rèn luyện lại kiến thức, tiếp cận sau hơn vào việc phân tích, thiết kế, giải
quyết bài toán theo hướng đối tượng, ứng dụng nó để viết ra các phần mềm, đồng
thời hoàn thành các sản phẩm của đồ án. lO M oARcPSD| 45467232 LỜI CẢM ƠN
Lời đầu tiên, nhóm chúng em xin được gửi lời cảm ơn chân thành tới các Thầy,
Cô tại Trường Đại Học Vinh, đặc biệt là Thầy Cô Khoa Tin Học, Viện Kỹ Thuật và
Công Nghệ, những người đã trực tiếp giảng dạy, giúp đỡ chúng em trong những năm
tháng mới bắt đầu chập chững vào trường.
Sinh viên ngành Sư Phạm Tin Học ngày nay phải không ngừng học hỏi, cập nhật
những điều mới, biết vận dụng những điều học được vào thực tế cuộc sống. Trong
quá trình tiến hành làm đồ án lập trình hướng đối tượng là bước đầu tiên mà nhóm
chúng em đi sâu vào những lĩnh vực Công Nghệ Thông Tin dựa trên những gì đã học
và dưới sự hướng dẫn của các Thầy Cô trong ngành. Để đồ án lập trình hướng đối
tượng được hoàn thiện, ngoài sự cố gắng của tất cả mọi người trong nhóm thì còn có
sự giúp đỡ, hướng dẫn tận tình của các Thầy Cô. Nhóm 1 xin chân thành cảm ơn các
Thầy Cô trong Khoa Tin Học, đặc biệt là cô Trần Thị Kim Oanh – Người luôn nhiệt tình
trong việc trang bị cho chúng em kiến thức và kỹ năng cơ bản cần thiết và hướng dẫn
chúng em hoàn thành đồ án đúng tiến độ, đạt kết quả tốt.
Tuy đã cố gắng thực hiện đề tài một cách trọn vẹn. Nhưng trong quá trình làm bài, do
hiểu biết của bọn em còn nhiều hạn chế và thiếu kinh nghiệm thực tiễn nên nội dung
đồ án rât khó tránh khỏi những thiếu sót. Nhóm em rất mong nhận được những lời
góp ý, những lời nhận xét từ Thầy Cô và các bạn để chúng em có thể hoàn thành tốt
hơn nữa cho các đồ án sau này. Các ý kiến nhận xét, góp ý chân thành từ Thầy Cô
và các bạn xin gửi về địa chỉ email: .....
Chúng em xin chân thành cảm ơn! lO M oARcPSD| 45467232
1. Bảng phân chia công việc trong nhóm Chức vụ trong
Nhiệm vụ được phân công
STT Họ và tên nhóm 1 Nguyễn Hương Giang Nhóm Trưởng
Code chính, làm bản word, nhập dữ liệu 2 Thái Thị Quỳnh Hoa Thành Viên
Tham gia code phụ, làm bản word 3 Dương Thị Phương Linh Thành Viên
Tham gia code phụ, làm bản word 4 Nguyễn Nhật Long Thành Viên
Tham gia code phụ, nhập dữ liệu 5 Thái Phúc Thành Thành Viên
Tham gia code phụ, nhập dữ liệu 6 Cầm Bá Phong Thành Viên
Tham gia code phụ, nhập dữ liệu
2. Bảng tự đánh giá nhóm Tự đánh giá
STT Họ và tên
Loại A, B, C, D theo các tiêu chí trong bảng dưới 1 Nguyễn Hương Giang A+ 2 Thái Thị Quỳnh Hoa A 3 Dương Thị Phương Linh A 4 Nguyễn Nhật Long A 5 Thái Phúc Thành A 6 Cầm Bá Phong B
Các tiêu chí đánh giá: Tiêu chí Mức đánh giá đánh giá
A (8.5 – 10) B (7.0 – 8.4) C (5.5 – 6.9) D (4.0 – 5.4) F (0 – 3.9) Hợp tác - Luôn lắng - Thường
- Có 3, 4 lần - Có 1, 2 lần - Không bao giờ nhóm nghe, chia lắng nghe, tham gia tham gia tham gia thảo sẻ và ủng hộ chia sẻ thảo luận thảo luận luận trong (CLO 3.1) những nỗ trong nhóm nhóm và nhóm và nhóm lực của bình luận bình luận thành viên trong nhóm lO M oARcPSD| 45467232 Thảo luận - Học hỏi, - Thu thập - Chỉ thu - Có đưa ra - Không thu thập nhóm
tìm kiếm, thu thông tin cơ thập thông ý tưởng thông tin thập và nhưng (CLO 3.1)
đưa ra nhiều bản về đề tài tin khi có yêu không rõ hay đóng góp ý tài liệu liên cầu ràng và kiến cho nhóm - Thỉ nh quan đề tài không liên
thoảng đưa - Ít khi đưa quan đến - Đưa ra ra những ý ra ý tưởng yêu cầu của những ý tưởng liên liên quan nhóm
tưởng, quan quan đến đề đến đề tài điểm rõ ràng tài liên quan đến đề tài lO M oARcPSD| 45467232 I. Đề tài
II. Phân tích thiết kế các lớp 1. Lớp Máy In
- Thuộc tính: loai, SoHieu, MauSac, TocDo, CuongDo, BoNho, SoLuong.
- Phương thức: NhapThongTin, HienThiThongTin, getSoHieu, getSoLuong, getDPI, getSoMau.
2. Lớp Máy In Laser( kế thừa từ lớp máy in)
- Thuộc tính: số điểm in trên một đơn vị in của máy tính(DPI).
- Phương thức: NhapThongTin, HienThiThongTin, getDPI, getSoMau.
3. Lớp Máy In Màu ( kế thừa lớp máy in laser) lO M oARcPSD| 45467232
- Thuộc tính: SoMau.
-Phương thức: NhapThongTin, HienThiThongTin, getSoMau.
4. Lớp Hóa Đơn Bán Hàng -
Thuộc tính: MaHoaDon, NguoiMuaHang, MatHang, SoLuong, Tien, TongTien, NgayBanHang. - Phương thức: Nhapthongtin, HienThiThongTin, getMaHoaDon,
getNguoiMuaHang, getMatHang, getSoLuong, getNgayBanHang.
5. Lớp Hóa Đơn Nhập Hàng - Thuộc tính: MaHoaDon, MatHang, SoLuong, Tien, TongTien, NgayNhapHang. - Phương thức: Nhapthongtin, HienThiThongTin, getMaHoaDon,
getMatHang, getSoLuong, getNgayNhapHang.
6. Lớp Quản Lý Máy In - Thuộc tính: MaxMayIn, DanhSachMayIn[MaxMayIn], SoLuongMayIn,
SoLuongHoaDonBanHang, SoLuongHoaDonNHapHang.
- Phương thức: ThemMayIn, NhapDuLieuTuFile, NhapMayInThuong,
NhapMayInLaser, NhapMayInMau, HienThiDanhSach, XuatHoaDon,
ThongKe, TimKiem, ThongBaoLoaiMayInConIt, ThemHoaDonBanHang, ThemHoaDonNhapHang,
HienThiDanhSachHoaDonNhapHang,
HienThiDanhSachHoaDonBanHang, CapNhatSoLuong.
III. Biểu diễn các lớp lO M oARcPSD| 45467232
IV. Nội dung code và input, output
1. Nội dung code lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232 lO M oARcPSD| 45467232