<!DOCTYPE html>
    <html lang="vi" xmlns="https://www.w3.org/1999/xhtml" prefix="og: https://ogp.me/ns#">
    <head>
<title>Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên</title>
<meta name="description" content="Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên - Savefile - Tin Tức -...">
<meta name="author" content="DATAONLINE.IO.VN">
<meta name="copyright" content="DATAONLINE.IO.VN [support@dataonline.io.vn]">
<meta name="generator" content="NukeViet v4.5">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;365.io.vn&#x002F;savefile&#x002F;lap-trinh-huong-doi-tuong-oop&#x002F;ky-thuat-lap-trinh-huong-doi-tuong-va-ap-dung-cho-bai-toan-quan-ly-sinh-vien-42.html">
<meta property="og:site_name" content="DATAONLINE.IO.VN">
<meta property="og:url" content="https://365.io.vn/savefile/lap-trinh-huong-doi-tuong-oop/ky-thuat-lap-trinh-huong-doi-tuong-va-ap-dung-cho-bai-toan-quan-ly-sinh-vien-42.html">
<link rel="shortcut icon" href="https://365.io.vn/favicon.ico">
<link rel="canonical" href="https://365.io.vn/savefile/lap-trinh-huong-doi-tuong-oop/ky-thuat-lap-trinh-huong-doi-tuong-va-ap-dung-cho-bai-toan-quan-ly-sinh-vien-42.html">
<link rel="alternate" href="https://365.io.vn/rss/" title="Tin Tức" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tong-hop/" title="Tin Tức - Tổng hợp" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/gdpt/" title="Tin Tức - GDPT" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/cac-van-ban/" title="Tin Tức - Các văn bản" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tieu-hoc/" title="Tin Tức - Tiểu học" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-3/" title="Tin Tức - Lớp 3" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-4/" title="Tin Tức - Lớp 4" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-5/" title="Tin Tức - Lớp 5" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/sgk-tieu-hoc/" title="Tin Tức - SGK Tiểu học" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-3/" title="Tin Tức - Tin học 3" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-4/" title="Tin Tức - Tin học 4" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-5/" title="Tin Tức - Tin học 5" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/thcs/" title="Tin Tức - THCS" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-6-75/" title="Tin Tức - Lớp 6" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-7-75/" title="Tin Tức - Lớp 7" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-8-75/" title="Tin Tức - Lớp 8" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-9-75/" title="Tin Tức - Lớp 9" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/sgk-thcs/" title="Tin Tức - SGK THCS" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-6/" title="Tin Tức - Tin học 6" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-7/" title="Tin Tức - Tin học 7" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-8/" title="Tin Tức - Tin học 8" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-9/" title="Tin Tức - Tin học 9" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/thpt/" title="Tin Tức - THPT" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-10/" title="Tin Tức - Lớp 10" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-11/" title="Tin Tức - Lớp 11" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lop-12/" title="Tin Tức - Lớp 12" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/sgk-thpt/" title="Tin Tức - SGK THPT" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-10/" title="Tin Tức - Tin học 10" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-11/" title="Tin Tức - Tin học 11" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tin-hoc-12/" title="Tin Tức - Tin học 12" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/cntt/" title="Tin Tức - CNTT" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/phan-mem-quan-li-va-dieu-hanh/" title="Tin Tức - Phần mềm quản lí và điều hành" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/phan-mem-ung-dung/" title="Tin Tức - Phần mềm ứng dụng" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/ung-dung-ai/" title="Tin Tức - Ứng dụng AI" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/mang-may-tinh/" title="Tin Tức - Mạng máy tính" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lap-trinh/" title="Tin Tức - Lập trình" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/cau-truc-thi-hsg-va-ts-vao-10/" title="Tin Tức - Cấu trúc thi HSG và TS vào 10" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/tai-lieu-hoc-lap-trinh/" title="Tin Tức - Tài liệu học lập trình" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/phan-mem-lap-trinh/" title="Tin Tức - Phần mềm lập trình" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lap-trinh-truc-quan/" title="Tin Tức - Lập trình trực quan" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lap-trinh-huong-thu-tuc-pop/" title="Tin Tức - Lập trình hướng thủ tục &#40;POP&#41;" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/de-thi/" title="Tin Tức - Đề thi" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/de-hsg-tin-hoc-thcs/" title="Tin Tức - Đề HSG Tin học THCS" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/de-tin-hoc-ts-vao-10-thpt-chuyen/" title="Tin Tức - Đề Tin học TS vào 10 THPT chuyên" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/de-tin-hoc-hsg-thpt/" title="Tin Tức - Đề Tin học HSG THPT" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/cham-thi/" title="Tin Tức - Chấm thi" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/themis/" title="Tin Tức - Themis" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/vnoi/" title="Tin Tức - VNOI" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/danh-sach-hoc-sinh/" title="Tin Tức - Danh sách học sinh" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/lap-trinh-huong-doi-tuong-oop/" title="Tin Tức - Lập trình hướng đối tượng &#40;OOP&#41;" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/web-nguon-mo/" title="Tin Tức - Web nguồn mở" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/he-dieu-hanh/" title="Tin Tức - Hệ điều hành" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/microsoft-windows/" title="Tin Tức - Microsoft Windows" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/ho-linux/" title="Tin Tức - Họ Linux" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/may-chu/" title="Tin Tức - Máy chủ" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/co-so-du-lieu/" title="Tin Tức - Cơ sở dữ liệu" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/web-server/" title="Tin Tức - Web Server" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/hosting-domain-vps/" title="Tin Tức - Hosting-domain-VPS" type="application/rss+xml">
<link rel="alternate" href="https://365.io.vn/rss/ban-tin/" title="Tin Tức - Bản tin" type="application/rss+xml">
<link rel="preload" as="style" href="https://365.io.vn/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://365.io.vn/themes/default/css/bootstrap.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://365.io.vn/themes/default/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://365.io.vn/themes/default/css/style.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://365.io.vn/themes/default/css/news.css" type="text/css">
<link rel="preload" as="style" href="https://365.io.vn/themes/default/css/custom.css" type="text/css">
<link rel="preload" as="script" href="https://365.io.vn/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/themes/default/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/themes/default/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://365.io.vn/themes/default/js/bootstrap.min.js" type="text/javascript">
<link rel="stylesheet" href="https://365.io.vn/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://365.io.vn/themes/default/css/bootstrap.non-responsive.css">
<link rel="stylesheet" href="https://365.io.vn/themes/default/css/style.css">
<link rel="stylesheet" href="https://365.io.vn/themes/default/css/style.non-responsive.css">
<link rel="StyleSheet" href="https://365.io.vn/themes/default/css/news.css">
<link rel="stylesheet" href="https://365.io.vn/themes/default/css/custom.css">
<style type="text/css">
	body{background: #fff;}
</style>
    </head>
    <body>
<div id="print">
	<div id="hd_print">
		<h2 class="pull-left">DATAONLINE.IO.VN</h2>
		<p class="pull-right"><a title="DATAONLINE.IO.VN" href="https://365.io.vn/">https://365.io.vn</a></p>
	</div>
	<div class="clear"></div>
	<hr />
	<div id="content">
		<h1>Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên</h1>
		<ul class="list-inline">
			<li>Thứ hai - 21/03/2022 22:46</li>
			<li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="javascript:;" onclick="window.print()">In ra</a></li>
			<li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="javascript:;" onclick="window.close()">Đóng cửa sổ này</a></li>
		</ul>
		<div class="clear"></div>
		<div id="hometext">
			<span style="font-family:Times New Roman,Times,serif;"><span style="font-size:14pt;">Tên chủ đề:<br />
Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên. Sinh viên trong một trường học có các thuộc tính sau: mã sinh viên, họ và tên, tên khoa. Các sinh viên học các môn học chung là: tiếng anh, tin học cơ sở; Sinh viên ngành Toán học thêm các môn: giải tích, đại số; Sinh viên ngành Tin học thêm các môn: ngôn ngữ C, cấu trúc dữ liệu.</span></span>
		</div>
				<div class="imghome">
			<img alt="Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên" src="https://i.imgur.com/Oapa6Mt.jpg" width="460" class="img-thumbnail" />
		</div>
		<div class="clear"></div>
		<div id="bodytext" class="clearfix">
			<span style="font-family:Times New Roman,Times,serif;"><span style="font-size:14pt;">Nội dung:<br /><a href="https://365.io.vn/#NDI" id="MN_I" name="MN_I">I. KỸ THUẬT LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG.</a><br /><a href="https://365.io.vn/#NDII" id="ML_II" name="ML_II">II. ÁP DỤNG CHO BÀI TOÁN QUẢN LÝ SINH VIÊN.</a><br /><a href="https://365.io.vn/#NDIIC1" id="MNIIC1" name="MNIIC1">Cách 1: kế thừa.</a><br /><a href="https://365.io.vn/#NDIIC2" id="MLIIC2" name="MLIIC2">Cách 2: Đa hình (kế thừa và đa hình)</a><br /><a href="https://365.io.vn/#MN_I" id="NDI" name="NDI">I. KỸ THUẬT LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG.</a><br />1. Khái niệm lập trình hướng đối tượng.<br />Lập trình hướng đối tượng là phương pháp lập trình lấy đối tượng là nền tảng để xây dựng chương trình. Phương pháp hướng đối tượng lấy đối tượng làm vai trò trung tâm của việc lập trình, người ta gọi là nguyên lý lập trình từ dưới lên (bottom-up). Phương pháp hướng đối tượng kết hợp cả hai cách thiết kế từ trên xuống và từ dưới lên. Dữ liệu (thuộc tính) được bảo vệ và gắn chặt với từng đối tượng, các đối tượng chỉ trao đổi với nhau thông qua các hàm (phương thức).<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2. Những đặc tính chủ yếu:<br />Tập trung vào dữ liệu thay cho các chức năng.<br />&nbsp;Chương trình được chia thành các đối tượng chứa trong các lớp.<br />&nbsp;Các cấu trúc dữ liệu được thiết kế sao cho đặc tả được các đối tượng.<br />&nbsp;Các hàm xác định trên các vùng dữ liệu của đối tượng được gắn với nhau trên cấu trúc dữ liệu đó.<br />Dữ liệu được bao bọc, che giấu và không cho phép các hàm ngoại lai truy nhập tự do (các mức độ truy cập: private – bên trong phạm vi của lớp, protected – trong lớp và lớp kế thừa, public – truy cập được cả trong và ngoài lớp).<br />Các đối tượng trao đổi với nhau thông qua các hàm.<br />Dữ liệu và các hàm mới có thể dễ dàng bổ sung vào đối tượng nào đó khi cần thiết.<br />Chương trình được thiết kế theo cách tiếp cận bottom-up (dưới-lên).<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3. Kỹ thuật hướng đối tượng.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Trừu tượng hoá thông tin: chỉ tập trung vào những đặc trưng chính chứ không thể xem xét tất cả; nghĩa là chúng ta đã sử dụng nguyên lý trừu tượng hoá:<br />+ Trừu tượng hoá thủ tục: thường được thể hiện bởi phương thức (hàm/hàm con)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + Trừu tượng hoá dữ liệu: biểu diễn một nhóm các đối tượng có liên quan bằng một lớp có những đặc tính chung nhất (bỏ đi những tính chất khác biệt).<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Lớp (class): là kiểu dữ liệu trừu tượng, tập hợp các đối tượng có chung các thuộc tính (mô tả đối tượng cần quản lý) và phương thức xử lý dữ liệu.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Đối tượng (Object): là thực thể mà trong đó các dữ liệu và các phương thức thao tác lên dữ liệu đã được đóng gói, được xác định trong thời gian hệ thống hoạt động và được coi như là biến của kiểu dữ liệu lớp (class).<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Đối tượng&nbsp; = Phương thức + Dữ liệu.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Đóng gói (bao gói): thông tin của đối tượng được che giấu để các đối tượng khác không thấy được gì về cấu trúc bên trong của nó. Các đối tượng chỉ có thể trao đổi với nhau thông qua các giao diện, thông qua các thông báo (chứa địa chỉ của đối tượng gửi, đối tượng nhận, các hàm cùng với các tham số).<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Kế thừa (sử dụng lại): các đối tượng của một lớp có thể sử dụng một số thuộc tính và phương thức của các đối tượng ở những lớp khác, tạo ra các cấu trúc phân cấp các lớp dựa trên hai nguyên lý sau:<br />&nbsp; + Chi tiết hoá: định nghĩa những lớp mới tương tự như các lớp trước và được bổ sung thêm một số thuộc tính, phương thức mô tả chi tiết hơn về một nhóm các đối tượng cụ thể.<br />+ Tổng quát hoá: định nghĩa những lớp mới từ một nhóm lớp có một số đặc tính giống nhau, gộp chung các đặc tính đó để tạo ra lớp mới gọi là lớp trừu tượng.<br />Lưu ý: Một lớp có thể kế thừa những tính chất của một hoặc nhiều lớp cơ sở ở các mức khác nhau trong cấu trúc phân cấp.<br /><a href="https://365.io.vn/#ML_II" id="NDII" name="NDII">II. ÁP DỤNG CHO BÀI TOÁN QUẢN LÝ SINH VIÊN</a><br />1.&nbsp;&nbsp; &nbsp;Mô tả bài toán.<br />•&nbsp;&nbsp; &nbsp;Xây dựng các lớp kế thừa.<br />+ Sinh viên trong một trường học có các thuộc tính sau: mã sinh viên, họ và tên, tên khoa. Các sinh viên học các môn học chung là: tiếng anh, tin học cơ sở. Ta xây dựng được lớp sinh viên (SINHVIEN) gồm các thuộc tính sau: mã số, họ tên đệm, tên , khoa, điểm tiếng anh, điểm tin học cơ sở.<br />&nbsp;+ Sinh viên ngành Toán học thêm các môn: giải tích, đại số. Ta xây dựng được lớp ngành Toán (NGANHTOAN) kế thừa từ lớp sinh viên gồm các thuộc tính sau: điểm giải tích, điểm đại số.<br />+ Sinh viên ngành Tin học thêm các môn: ngôn ngữ C, cấu trúc dữ liệu. Ta xây dựng được lớp ngành Tin (NGANHTIN) kế thừa từ lớp sinh viên gồm các thuộc tính sau: điểm ngôn ngữ C, điểm cấu trúc dữ liệu.<br />•&nbsp;&nbsp; &nbsp;Các phương thức.<br />+ Nhập dữ liệu: Nhap<br />+ Xuất thông tin: Indulieu<br />+ Tính điểm trung bình các môn học (tất cả các môn đều tính hệ số 1): Dtb<br />+ Xếp loại: Giỏi (Dtb &gt;= 8.0), Khá (6.5 &lt;= Dtb &lt; 8.0), Trung bình (5.0 &lt;= Dtb &lt;6.5), Yếu là còn lại: Xeploai<br />+ Xuất danh sách sinh viên gồm thông tin sinh viên và điểm các môn học, điểm tb, xếp loại, (có thống kê mỗi ngành học có bao nhiêu sinh viên xếp loại: Giỏi, Khá, Tb, Yếu): Inketqua&nbsp;<br />2.&nbsp;&nbsp; &nbsp;Sơ đồ kế thừa.<br /><img alt="" src="https://i.imgur.com/Oapa6Mt.jpg" /><br />3.&nbsp;&nbsp; &nbsp;Code C++ (VC2019)<br /><a href="https://365.io.vn/#MNIIC1" id="NDIIC1" name="NDIIC1">Cách 1: kế thừa.</a></span></span><pre><code class="language-cpp">// 43VangVanQuyn.cpp : This file contains the &#039;main&#039; function. Program execution begins and ends there.//#include &lt;iostream&gt;#include &lt;string.h&gt;#include &lt;iomanip&gt;using namespace std;class SINHVIEN {protected:	char maso&#91;10&#93;, hotendem&#91;30&#93;, ten&#91;20&#93;, khoa&#91;20&#93;;	double diemanh, diemtincs;public:	void Nhap();	void Indulieu();};class NGANHTOAN :SINHVIEN {private:	double diemgt, diemds;public:	void Nhap();	void Indulieu();	double Dtb();	string Xeploai();};class NGANHTIN :SINHVIEN {private:	double diemnnc, diemctdl;public:	void Nhap();	void Indulieu();	double Dtb();	string Xeploai();};void SINHVIEN::Nhap() {	cout &lt;&lt; &quot;Ma so: &quot;; cin.getline(this-&gt;maso, 10);	cout &lt;&lt; &quot;Ho ten dem: &quot;; cin.getline(this-&gt;hotendem, 30);	cout &lt;&lt; &quot;Ten: &quot;; cin.getline(this-&gt;ten, 20);	cout &lt;&lt; &quot;khoa: &quot;; cin.getline(this-&gt;khoa, 20);	cout &lt;&lt; &quot;Diem tieng Anh: &quot;; cin &gt;&gt; this-&gt;diemanh;	cout &lt;&lt; &quot;Diem tin co so: &quot;; cin &gt;&gt; this-&gt;diemtincs;}void SINHVIEN::Indulieu() {	cout &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; maso &lt;&lt; setw(25) &lt;&lt; left &lt;&lt; hotendem &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; ten &lt;&lt; setw(15) &lt;&lt; left &lt;&lt; khoa		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemanh		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemtincs;}void NGANHTOAN::Nhap() {	this-&gt;SINHVIEN::Nhap();	cout &lt;&lt; &quot;Diem giai tich: &quot;; cin &gt;&gt; this-&gt;diemgt;	cout &lt;&lt; &quot;Diem dai so: &quot;; cin &gt;&gt; this-&gt;diemds;}void NGANHTOAN::Indulieu() {	this-&gt;SINHVIEN::Indulieu();	cout &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemgt		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemds		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; Dtb()		&lt;&lt; setw(20) &lt;&lt; left &lt;&lt; Xeploai();}double NGANHTOAN::Dtb() {	double dtb = 0;	dtb = this-&gt;diemanh + this-&gt;diemtincs;	dtb = dtb + this-&gt;diemgt + this-&gt;diemds;	dtb = dtb / 4;	return dtb;}string NGANHTOAN::Xeploai() {	string kq = &quot;&quot;;	double dtb = this-&gt;Dtb();	if (dtb &gt; 8.0) {		kq = &quot;Gioi&quot;;	}	else if ((dtb &gt;= 6.5) &amp;&amp; (dtb &lt; 8.0)) {		kq = &quot;Kha&quot;;	}	else if ((dtb &gt;= 5.0) &amp;&amp; (dtb &lt; 6.5)) {		kq = &quot;Trung binh&quot;;	}	else {		kq = &quot;Yeu&quot;;	}	return kq;}void NGANHTIN::Nhap() {	this-&gt;SINHVIEN::Nhap();	cout &lt;&lt; &quot;Diem NN C: &quot;; cin &gt;&gt; this-&gt;diemnnc;	cout &lt;&lt; &quot;Diem CTDL: &quot;; cin &gt;&gt; this-&gt;diemctdl;}void NGANHTIN::Indulieu() {	this-&gt;SINHVIEN::Indulieu();	cout &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemnnc		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; diemctdl		&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; setprecision(2) &lt;&lt; fixed &lt;&lt; Dtb()		&lt;&lt; setw(20) &lt;&lt; left &lt;&lt; Xeploai();}double NGANHTIN::Dtb() {	double dtb = 0;	dtb = this-&gt;diemanh + this-&gt;diemtincs;	dtb = dtb + this-&gt;diemnnc + this-&gt;diemctdl;	dtb = dtb / 4;	return dtb;}string NGANHTIN::Xeploai() {	string kq = &quot;&quot;;	double dtb = this-&gt;Dtb();	if (dtb &gt; 8.0) {		kq = &quot;Gioi&quot;;	}	else if ((dtb &gt;= 6.5) &amp;&amp; (dtb &lt; 8.0)) {		kq = &quot;Kha&quot;;	}	else if ((dtb &gt;= 5.0) &amp;&amp; (dtb &lt; 6.5)) {		kq = &quot;Trung binh&quot;;	}	else {		kq = &quot;Yeu&quot;;	}	return kq;}class DS_SVTOAN{private:	NGANHTOAN* ds = new NGANHTOAN&#91;100&#93;;	int i = 0;	double dtb = 0;	int gioi = 0, kha = 0, tb = 0, yeu = 0;public:	void Nhap() {		char ok;		while (i &lt; 100) {			ds&#91;i&#93;.Nhap();			i++;			cout &lt;&lt; &quot;Ban co tiep tuc nhap khong? (C/K): &quot;;			cin &gt;&gt; ok; cin.ignore();			if (ok == &#039;k&#039; || ok == &#039;K&#039;) break;		}	}	void Inketqua() {		cout &lt;&lt; &quot;Ket qua nganh toan:&quot; &lt;&lt; endl;		cout &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;ma so&quot; &lt;&lt; setw(25) &lt;&lt; left &lt;&lt; &quot;Ho va&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Ten&quot; &lt;&lt; setw(15) &lt;&lt; left &lt;&lt; &quot;Khoa&quot;			&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;T. Anh&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Tin CS&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Giai tich&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Dai so&quot;			&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;DTB&quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; &quot;Xep loai&quot; &lt;&lt; endl;		int j = 0;		for (int j = 0; j &lt; i; j++) {			//Thong ke xep loai			dtb = ds&#91;j&#93;.Dtb();			if (dtb &gt; 8.0) {				gioi++;			}			else if ((dtb &gt;= 6.5) &amp;&amp; (dtb &lt; 8.0)) {				kha++;			}			else if ((dtb &gt;= 5.0) &amp;&amp; (dtb &lt; 6.5)) {				tb++;			}			else {				yeu++;			}			ds&#91;j&#93;.Indulieu();			cout &lt;&lt; endl;		}		//In thong ke xep loai		cout &lt;&lt; &quot;Gioi: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; gioi 			&lt;&lt; &quot;Kha: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; kha 			&lt;&lt; &quot;Tb: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; tb			&lt;&lt;&quot;Yeu: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; yeu &lt;&lt; endl;	}};class DS_SVTIN{private:	NGANHTIN* ds = new NGANHTIN&#91;100&#93;;	int i = 0;	double dtb = 0;	int gioi = 0, kha = 0, tb = 0, yeu = 0;public:	void Nhap() {		char ok;		while (i &lt; 100) {			ds&#91;i&#93;.Nhap();			i++;			cout &lt;&lt; &quot;Ban co tiep tuc nhap khong? (C/K): &quot;;			cin &gt;&gt; ok; cin.ignore();			if (ok == &#039;k&#039; || ok == &#039;K&#039;) break;		}	}	void Inketqua() {		cout &lt;&lt; &quot;Ket qua nganh tin:&quot; &lt;&lt; endl;		cout &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;ma so&quot; &lt;&lt; setw(25) &lt;&lt; left &lt;&lt; &quot;Ho va&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Ten&quot; &lt;&lt; setw(15) &lt;&lt; left &lt;&lt; &quot;Khoa&quot;			&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;T. Anh&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;Tin CS&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;NNLT C&quot; &lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;CTDL&quot;			&lt;&lt; setw(10) &lt;&lt; left &lt;&lt; &quot;DTB&quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; &quot;Xep loai&quot; &lt;&lt; endl;		int j = 0;		for (int j = 0; j &lt; i; j++) {			//Thong ke xep loai			dtb = ds&#91;j&#93;.Dtb();			if (dtb &gt; 8.0) {				gioi++;			}			else if ((dtb &gt;= 6.5) &amp;&amp; (dtb &lt; 8.0)) {				kha++;			}			else if ((dtb &gt;= 5.0) &amp;&amp; (dtb &lt; 6.5)) {				tb++;			}			else {				yeu++;			}			ds&#91;j&#93;.Indulieu();			cout &lt;&lt; endl;		}		//In thong ke xep loai		cout &lt;&lt; &quot;Gioi: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; gioi			&lt;&lt; &quot;Kha: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; kha			&lt;&lt; &quot;Tb: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; tb			&lt;&lt; &quot;Yeu: &quot; &lt;&lt; setw(20) &lt;&lt; left &lt;&lt; yeu &lt;&lt; endl;	}};int main(){	DS_SVTOAN dssvtoan;	cout &lt;&lt; &quot;Nhap danh sach sinh vien nganh toan:&quot; &lt;&lt; endl;	dssvtoan.Nhap();	DS_SVTIN dssvtin;	cout &lt;&lt; &quot;Nhap danh sach sinh vien nganh tin:&quot; &lt;&lt; endl;	dssvtin.Nhap();	dssvtoan.Inketqua();	dssvtin.Inketqua();	return 0;}</code></pre><br /><span style="font-family:Times New Roman,Times,serif;"><span style="font-size:14pt;"><a href="https://365.io.vn/#MLIIC2" id="NDIIC2" name="NDIIC2">Cách 2: Đa hình (kế thừa và đa hình)</a></span></span><br />&nbsp;
		</div>
				<div id="author">
						<p>
				<strong>Tác giả:</strong>
				<a href="https://365.io.vn/author/Vang-Van-Quyn/">Vàng Văn Quyn</a>
			</p>
		</div>
				<div class="copyright">
			Chú ý: Việc đăng lại bài viết trên ở website hoặc các phương tiện truyền thông khác mà không ghi rõ nguồn<strong> <a href="https://365.info.vn" target="_blank">https://365.io.vn</a>&nbsp;</strong>là vi phạm bản quyền
		</div>
	</div>
	<div id="footer" class="clearfix">
		<div id="url">
			<strong>URL của bản tin này: </strong><a href="https://365.io.vn/savefile/lap-trinh-huong-doi-tuong-oop/ky-thuat-lap-trinh-huong-doi-tuong-va-ap-dung-cho-bai-toan-quan-ly-sinh-vien-42.html" title="Kỹ thuật lập trình hướng đối tượng và áp dụng cho bài toán quản lý sinh viên">https://365.io.vn/savefile/lap-trinh-huong-doi-tuong-oop/ky-thuat-lap-trinh-huong-doi-tuong-va-ap-dung-cho-bai-toan-quan-ly-sinh-vien-42.html</a>

		</div>
		<div class="clear"></div>
		<div class="copyright">
			&copy; DATAONLINE.IO.VN
		</div>
		<div id="contact">
			<a href="mailto:support@dataonline.io.vn">support@dataonline.io.vn</a>
		</div>
	</div>
</div>
        <div class="cookie-notice"><div><button onclick="cookie_notice_hide();">&times;</button>Chúng tôi đang sử dụng cookie để cung cấp cho bạn những trải nghiệm tốt nhất trên trang web này. Bằng cách tiếp tục truy cập, bạn đồng ý với <a href="https://365.io.vn/siteterms/privacy.html">Chính sách thu thập và sử dụng cookie</a> của chúng tôi.</div></div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng Site, <a onclick="timeoutsesscancel();" href="https://365.io.vn/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
<div id="run_cronjobs" style="visibility:hidden;display:none;"><img alt="cron" src="/index.php?second=cronjobs&amp;p=f8TMRQKO" width="1" height="1" /></div>
<script src="https://365.io.vn/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="news",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=0,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",XSSsanitize=1;</script>
<script src="https://365.io.vn/assets/js/language/vi.js"></script>
<script src="https://365.io.vn/assets/js/DOMPurify/purify3.js"></script>
<script src="https://365.io.vn/assets/js/global.js"></script>
<script src="https://365.io.vn/assets/js/site.js"></script>
<script src="https://365.io.vn/themes/default/js/news.js"></script>
<script src="https://365.io.vn/themes/default/js/main.js"></script>
<script src="https://365.io.vn/themes/default/js/custom.js"></script>
<script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Organization",
            "url": "https://365.io.vn",
            "logo": "https://365.io.vn/assets/images/logo.svg"
        }
        </script>
<script src="https://365.io.vn/themes/default/js/bootstrap.min.js">
        </script>
<script>
    var LIMIT = 600000; // 10 phút

    var startTime = sessionStorage.getItem("redirect_timer");
    if (!startTime) {
        startTime = Date.now();
        sessionStorage.setItem("redirect_timer", startTime);
    } else {
        startTime = parseInt(startTime, 10);
    }

    var elapsed = Date.now() - startTime;
    var remain = LIMIT - elapsed;

    if (remain > 0) {
        setTimeout(function () {
            alert("Hệ thống sẽ chuyển sang trang chấm bài.");
            window.location.replace("https://vnoj.io.vn");
        }, remain);
    } else {
        window.location.replace("https://vnoj.io.vn");
    }
</script>
</body>
</html>