1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu Luận Cấu Trúc Dữ Liệu Và Giải Thuật Phần Mềm Quản Lý Kho Bán Thành Phẩm Của Xí Nghiệp Lắp Ráp Xe Hơi.pdf

47 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cấu trúc dữ liệu và giải thuật phần mềm quản lý kho bán thành phẩm của xí nghiệp lắp ráp xe hơi
Tác giả Trần Minh Lập
Người hướng dẫn ThS. Ngô Tân Khai
Trường học Trường Đại học Công nghệ TP. HCM
Chuyên ngành Cấu trúc dữ liệu và giải thuật
Thể loại Tiểu luận
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 47
Dung lượng 3,09 MB

Nội dung

Một số phương pháp tìm kiếm và sắp xếp phô biến là: - _ Tìm kiếm tuyến tính: Tìm kiếm một phần tử bằng cách duyệt qua từng phần tử trong một mảng hoặc danh sách liên kết cho đến khi tìm

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM

BỘ GIÁO DỤC VÀ ĐÀO TẠO

HUTECH HUTECH

Đại học Công nghệ Tp.HCM học Công nghệ Tp.HCM

TIỂU LUẬN CÁU TRÚC DỮ LIỆU VÀ GIẢI THUẬT

PHẢN MÈM QUẢN LÝ KHO BÁN THÀNH PHẨM CỦA XÍ

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM

BỘ GIÁO DỤC VÀ ĐÀO TẠO

EHUTECH Đại học Công nghệ Tp.HCM

TIỂU LUẬN CÁU TRÚC DỮ LIỆU VÀ GIẢI THUẬT

PHẢN MÈM QUẢN LÝ KHO BÁN THÀNH PHẨM CỦA XÍ

Trang 3

MỤC LỤC

\/1090 0 0 I

Mi 000 I N04 190325 2

12 Thực hành - 2c c n1 H1 H1 11111111151 11251 12511111111 kknnkknnn n1 1111116155111 sxx 3 1.2.1 Tìm kiếm tuần tự (Linear Search): + 5s 2s SE2111121111111111121 111112 3

1.2.2 Tìm kiếm nhị phân (Binary Search): + St 1 1211121212121 cre 4

1.2.3 Sắp xếp chọn (Selection Sort): -s- s2 t2 121 1211111111 1211 11 tre 5 1.2.4 Sắp xếp chèn (Insertion SOrt): -s 5 s11 111121111 1112101101211 te 7 1.2.5 Sắp xếp nỗi bọt (Bubble Sort): 5c 21 1EE121111211111111111 12111 rxe 8

1.2.6 Sắp xếp nhanh (Quiek SOF): - - 5 s2 1221211 1121111211111211 11 1e re 9

1.2.7 Sap xép vun déng (Heap Sort): 0.c.cccccccccccscseesessesessesessessesesseseseseeeseseeen 12 1.2.8 Thực hành tìm kiếm và sắp xếp trên mảng số nguyên một chiêu: 15

1.3 Minh hoa trén dé tai eccccceesssssessssessseneesssnessseeesseseneeseneseseneeeeees 18

2 DANH SÁCH LIÊN KẾT ĐƠN 52522 2222222211222 re 23 2.1 Lý thuyẾt Sc n S11 111 11 111 11 1n t1 n1 ng 1n rung 23

2.2 Thore hanhw i ccecccccesesesseteeettetstsseceseeeesesesesesseseessetttettttvanseeees 24 2.2.1 Thực hanh trén danh séch lién két don .cccccccccccccccccccecesescececevevscsessseeeceees 27

2.3 Minh hoa trén dé tai eccssecssseeessenessssnssssnessnueessnnesecsnseceeeeeeeeerees 31

3.1 Lý thuyẾt s n1 TH nh HH HH t1 2111 gu tường 33

3.2 Thực hành cececeeececseeenseccesccccecccsecessessseetttestttnttaseccsseceseeceeees 34

3.3 Minh họa trên để tài -22cc 222 22t 211122112112 37

Trang 4

In" a

4.2 Thực hành iecccsesesesenseeettetstsssceseeceseecsesessesesseetttettttvanseeees

000309790804 (1n e‹/

Trang 5

và phương pháp đề thực hiện một công việc cụ thé

Môn học nay không chỉ là nền tảng cho việc hiểu và xây dựng các ứng dụng phức tạp, mà còn cung cấp cho tôi cái nhìn sâu sắc về hiệu suất và hiệu quả của các giải pháp lập trình Băng cách tối ưu hóa cấu trúc dữ liệu và lựa chọn các giải thuật thích hợp, tôi có thê cải thiện tính tương tác, tốc độ xử lý và sử dụng tài nguyên máy tính một cách hiệu quả

Trong đề tài này, tôi sẽ tập trung vào việc sử dụng ngôn ngữ lập trình C++~ để xây dựng một chương trình có khả năng lưu trữ và quản lý thông tin của một bảng đữ liệu, trong đó mỗi phần tử trong mảng 1 chiều tương đương với một dòng (row) trong bảng

Mảng một chiều là một cấu trúc đữ liệu cơ bản trong lập trình, cho phép tôi lưu trữ một chuỗi các giá trị có cùng kiểu đữ liệu Sử đụng mảng 1 chiều đề lưu trữ thông tin bảng giúp tôi biếu diễn cấu trúc đữ liệu đễ dàng và hiệu quả, đồng thời cung cấp các tính năng cho việc tìm kiếm, thêm, xoá và sắp xếp đữ liệu một cách thuận tiện

Đề thực hiện được mục tiêu nảy, tôi sẽ tập trung vào việc xây dựng các chức năng quan trọng như: thêm dữ liệu mới vào bảng, tìm kiếm thông tin, xoá dữ liệu, và hiển thị toàn bộ bảng Đồng thời, tôi cũng sẽ xem xét và so sánh hiệu năng của các giải thuật để đảm bảo chương trình hoạt động một cách hiệu quả với số lượng lớn dữ liệu Trong bài báo cáo này, tôi sẽ tập trung vào phân cài đặt của chương trình và minh họa cách sử dụng mảng I chiều đề lưu trữ thông tin bảng Các khái niệm cơ bản

về ngôn ngữ lập trình C++ và cấu trúc đữ liệu sẽ được giả định đã được nắm vững từ trước

Trang |

Trang 6

1 TIM KIEM VA SAP XEP

1.1 Ly thuyét

Tìm kiếm và sắp xếp là hai hoạt động cơ bản và quan trọng trong xứ lý đữ liệu Tìm kiếm là quá trình tìm kiếm một phần tử có giá trị cho trước trong một tập hợp các phân tử Sắp xếp là quá trình sắp xếp các phần tử trong một tập hợp theo một thứ tự nhất định

Có nhiều cách đề thực hiện tìm kiếm và sắp xép, tủy thuộc vào cấu trúc dữ liệu được sử dụng, số lượng phân tử, và yêu cầu về hiệu năng Một số phương pháp tìm kiếm và sắp xếp phô biến là:

- _ Tìm kiếm tuyến tính: Tìm kiếm một phần tử bằng cách duyệt qua từng phần tử

trong một mảng hoặc danh sách liên kết cho đến khi tìm thấy hoặc hết tập hợp

Độ phức tạp thời gian trung bình là O(n), với n là số lượng phần tử

- Tim kiém nhị phân: Tìm kiếm một phần tử trong một mảng đã được sắp xếp bằng cách so sánh giá trị của phần tử với giá trị của phần tử ở giữa mảng, rồi

loại bỏ nửa mảng không chứa phần tir can tim Lap lai quá trình này cho đến khi

tìm thấy hoặc hết mảng Độ phức tạp thời gian trung bình là O(log n)

- _ Sắp xếp nỗi bọt: Sắp xếp một mảng băng cách so sánh lần lượt các cặp phần tử

liền kề và đổi chỗ nếu không đúng thứ tự Lặp lại quá trình này cho đến khi

không còn đôi chỗ nào nữa Độ phức tạp thời gian trung bình là O(n2), với n là

số lượng phần tử

- _ Sắp xếp chèn: Sắp xếp một mảng băng cách duyệt qua từng phân tử, rồi chèn nó vào vị trí thích hợp trong đoạn mảng đã được sắp xếp từ đầu đến vị trí hiện tại

Độ phức tạp thời gian trung bình là O(n2)

- _ Sắp xếp chọn: Sắp xếp một mảng bằng cách duyệt qua từng phần tử, rồi chọn ra phần tử nhỏ nhất (hoặc lớn nhất) trong đoạn mảng chưa được sắp xếp, và đôi chỗ nó với phần tử ở vị trí hiện tại Độ phức tạp thời gian trung bình là O(n2)

- Sắp xếp nhanh: Sắp xếp một mảng bằng cách chọn ra một phần tử làm chốt (pivot), rồi phân chia mảng thành hai đoạn, một đoạn chứa các phần tử nhỏ hơn hoặc bằng chốt, và một đoạn chứa các phần tử lớn hơn hoặc bằng chốt Sau đó,

áp dụng thuật toán sắp xếp nhanh cho hai đoạn này một cách đệ quy Độ phức tạp thời gian trung bình là O(n log n), với n là số lượng phần tử

Trang 2

Trang 7

12 Thực hành

Trong phần này, tôi sẽ tìm hiểu về các thuật toán tìm kiếm và sắp xếp cơ bản trong ngôn ngữ lập trình C++ Tôi sẽ giới thiệu về thuật toán tìm kiếm tuần tự (linear search) và tìm kiếm nhị phân (binary search), cũng như các thuật toán sắp xếp chọn (selection sort), sắp xếp chèn (insertion sort) và sap xép néi bot (bubble sort) 1.2.1 Tìm kiểm tuân tự (Limear Search):

Thuật toán tìm kiếm tuần tự là phương pháp tìm kiếm đơn giản nhất Nó tìm kiếm một phần tử trong một mảng băng cách duyệt từ đầu đến cuối mảng và so sánh

từng phần tử với giá trị cần tìm

Trong trường hợp tìm thấy phần tử, thuật toán trả về vị trí đầu tiên của phần tử

đó trong mảng Nếu không tìm thấy, thuật toán trả về một giá trị đại diện cho việc

không tìm thấy (ví dụ: -L)

- _ Ưu điểm: Đơn giản, dễ hiểu, có thé 4p đụng cho mảng không được sắp xếp

- _ Nhược điểm: Hiệu suất kém khi mảng lớn vì phải duyệt qua tat cả các phần tử

Ví dụ về tìm kiếm tuần tự trong C++:

#include <iostream>

int linearSearch(int arr[], int n, int target) {

for (int 1= 0; 1 <n; i++) {

Trang 8

1.2.2 Tìm kiếm nhị phân (Binary Search):

Thuật toán tìm kiếm nhị phân áp dụng cho mảng đã được sắp xếp

Phương pháp này giới hạn phạm vi tìm kiếm bằng cách chia mảng thành hai phần và so sánh phần tử ở giữa với giá trị cần tìm

Nếu phân tử ở giữa băng với giá trị cần tìm, thuật toán trả về vị trí của phần tử

đó Nếu phần tử ở giữa lớn hơn giá trị cần tìm, tiếp tục tìm kiếm trong nửa đầu tiên của mảng Ngược lại, tìm kiếm trong nửa thứ hai của mảng

Thuật toán này tiếp tục lặp lại quá trình chia mảng đến khi tìm thấy phần tử hoặc không còn phần tử nào đề kiểm tra

- _ Ưu điểm: Hiệu suất tốt hơn tìm kiếm tuần tự khi mảng lớn và đã được sắp xếp

- Nhược điểm: Yêu cầu mảng đã được sắp xếp, và phức tạp khi thực hiện trên mảng động

Vi du vé tim kiém nhi phan trong C++:

#include <iostream>

int binarySearch(int arr[], int low, int high, int target) {

while (low <= high) {

int mid = low + (high - low) / 2;

if (arr[mid] == target) {

return mid; // Tra vé vi tri néu tim thay

} else if (arr[mid] < target) { low = mid + |;

Trang 4

Trang 9

1.2.3 Sap xép chon (Selection Sort):

Sắp xếp chọn là một thuật toán sap xép don gian va dé hiéu

Thuật toán này hoạt động bằng cách tìm phần tử nhỏ nhất trong mảng và đưa nó

về vị trí đầu tiên Sau đó, tiếp tục tìm phần tử nhỏ nhất trong mảng con còn lại và đưa

nó tiếp tục vào vị trí thích hợp trong mảng con còn lại Quá trình này được lặp lại cho đến khi mảng được sắp xếp hoàn chỉnh

- _ Ưu điểm: Đơn giản, dé hiểu, dé cài đặt

- Nhược điểm: Hiệu suất chậm hơn trong trường hợp mảng lớn vì phải tìm kiếm phân tử nhỏ nhất trong mảng còn lại ở mỗi bước

Trang 5

Trang 10

Vi du vé sap xép chon trong C++:

#include <iostream>

void selectionSort(int arr[], int n) {

for (int i=0;i<n- 1; i++) {

// Đỗi chỗ phần tử nhỏ nhất tìm được với phần tử ở vị trí ¡

int temp = arr[i];

std::cout << "Mang sau khi sap xep: ";

for (int 1= 0; 1 <n; i++) {

Trang 11

1.2.4 Sap xếp chèn (Insertion Sor):

Sắp xếp chèn là một thuật toán sắp xếp tương đối hiệu quả cho các mảng có kích thước nhỏ hoặc đã gần sắp xép

Thuật toán này hoạt động bằng cách chèn một phần tử từ mảng chưa sắp xếp vào đúng vị trí trong mảng đã sắp xếp Điều này được thực hiện bằng cách so sánh phần tử hiện tại với các phần tử liền trước nó trong mảng đã sắp xếp và đưa phần tử hiện tại vào vị trí thích hợp trong mảng đã sắp xếp

- _ Ưu điểm: Hiệu suất tốt hơn trong trường hợp mảng gần sắp xếp, dễ cài đặt

- Nhược điểm: Hiệu suất chậm hơn so với một số thuật toán sắp xếp hiệu quả hơn như sắp xếp nhanh hoặc sắp xếp gộp

Trang 12

1.2.5 Sap xép noi bot (Bubble Sort):

Sắp xếp nổi bọt là một thuật toán sắp xếp đơn giản nhưng hiệu quả cho các mảng nhỏ

Thuật toán này hoạt động bằng cách so sánh hai phần tử liền kề trong mảng và đổi chỗ chúng nếu chúng không được sắp xếp theo thứ tự Quá trình này được lặp lại cho đến khi mảng được sắp xếp hoàn chỉnh

- Ưu điểm: Đơn giản, đễ cài đặt, hiệu suất tốt trong trường hợp mảng gần sắp

void bubbleSort(int arr[], int n) {

for (inti =0;1<n- 1; i++) {

for (int j=0;j<n-1i-1;j+) {

if (arr[j] > arrlj + 1]) {

// Đôi chỗ hai phần tử nếu không được sắp xếp

int temp = arr[j];

Trang 13

std::cout << "Mang sau khi sap xep: ";

for (int 1= 0; 1 <n; i++) {

1.2.6 Sắp xếp nhanh (Quick Sort):

Sắp xếp nhanh là một thuật toán sắp xếp đựa trên ý tưởng của chia để trị, tức là chia mảng cần sắp xếp thành các mảng con nhỏ hơn và sắp xếp riêng biệt từng mảng con đó Thuật toán sắp xếp nhanh có các bước chính như sau:

- Chon mét phan tử làm phần tử chốt (pivot) trong mang

- Phan ving mảng thành hai phần, sao cho các phần tử nhỏ hơn hoặc bằng phần

tử chốt ở bên trái, và các phần tử lớn hơn phần tử chốt ở bên phải

- _ Sắp xếp đệ quy hai phân trái và phải cho đến khi không thê chia nhỏ hơn được

- Sap xép nhanh có một số ưu điểm và nhược điểm như sau:

Trang 14

- - Thuật toán thân thiện với bộ đệm, vì nó làm việc trên các phân đoạn nhỏ của mảng tại một thời điểm, giảm thiểu lỗi bộ nhớ cache

- _ Thuật toán có thể áp dụng cho nhiều loại đữ liệu khác nhau và có thê điều chỉnh cho các hàm so sánh tùy biến

Nhược điểm:

- _ Thuật toán có độ phức tạp thời gian xấu nhất là O(n^2), rất kém hiệu quả khi

sắp xếp các mảng đã được sắp xếp hoặc có nhiều phân tử trùng lặp

- Thuật toán không ôn định, có thê thay đổi thứ tự của các phần tử bằng nhau trong mảng

- _ Việc chọn phần tử chốt phù hợp khó khăn, có thê ảnh hưởng đến hiệu suất của thuật toán Nếu chọn ngẫu nhiên, có thê rơi vào các trường hợp đặc biệt

Ví dụ về thuât toán sắp xếp nhanh trong C++

Int partition(int arr[], int low, int high) {

int pivot = arr[high];

int i= low - l;

for (int j = low; j < high; j++) {

// Néu phan tử hiện tại nhỏ hơn hoặc bằng chốt

Trang 15

}

swap(arr[i + 1], arr[high]);

return i+ 1; // Tra vé chi sé cua chét

void quickSort(int arr[], int low, int high) {

if (low < high) {

int pi = partition(arr, low, high);

quickS ort(arr, low, pi - 1);

quickSort(arr, pi + 1, high);

void printArray(int arr[], int size) {

for (int 1 = 0; 1 < size; i++) {

int size = sizeof(arr) / sizeof(arr[0]);

cout << "Mang ban dau la: ";

Trang 16

1.2.7 Sắp xép vun dong (Heap Sort):

Sap xép vun đồng là một thuật toán sắp xếp dựa trên một cấu trúc dữ liệu được gọi là đồng nhị phân (binary heap), gọi đơn giản là đống Đống nhị phân là một cây nhị phân hoàn chỉnh, có tính chất là giá trị của mỗi nút không nhỏ hơn (hoặc không lớn hơn) giá trị của các nút con của nó Có hai loại đồng nhị phân là đống cực đại (max heap) và đồng cực tiêu (min heap) Trong đồng cực đại, giá trị của mỗi nút không nhỏ hơn gia tri của các nút con, và giá trị lớn nhât nam ở gốc của cây Trong đông cực tiêu, giá trị của mối nút không lớn hơn gia tri của các nút con, và giá trị nhỏ nhật nắm ở gôc của cây

Thuật toán sắp xếp vun đồng có các bước chính như sau:

Vun mảng cần sắp xếp thành một đống cực đại (hoặc cực tiêu)

Lấy phần tử lớn nhất (hoặc nhỏ nhất) ở gốc của đồng ra và đưa vao vi tri cudi cùng của mảng

Vun lại phần còn lại của mảng thành một đồng cực đại (hoặc cực tiểu) Lặp lại các bước trên cho đến khi mảng được sắp xếp hoàn toàn

Thuật toán sắp xêp vun đông có một sô ưu điểm và nhược điểm như sau:

Trang 17

- _ Thuật toán không thân thiện với bộ đệm, vì nó làm việc trên toàn bộ mảng tại một thời điểm, có thế gây ra lỗi bộ nhớ cache

- - Thuật toán khó khăn trong việc tận dụng tính song song hóa, vỉ việc vun lại mảng phụ thuộc vào kêt quả của các bước trước

Đây là một ví dụ về thuật toán sắp xếp vun đồng trong C++:

int left =2 *i+1;

int right = 2 *i+ 2;

if (left < size && arr[left] > arr[largest]) {

heapify(arr, size, largest);

void heapSort(int arr[], int size) {

for (int 1= size /2 - 1;1>=0;1 ) {

heapify(arr, size, 1);

for (int 1 = size - 1; 1> 0; 1 ) {

Trang 13

Trang 18

swap(arr[0], arr[1]);

heapify(arr, 1, 0);

void printArray(int arr[], int size) {

for (int 1 = 0; 1 < size; i++) {

int size = sizeof(arr) / sizeof(arr[0]);

cout << "Mang ban dau la: ";

đề tìm kiếm và sắp xếp các mảng

Những thuật toán này là những cơ bản và thường được sử dụng trong lập trình, nhưng chúng cũng có những hạn chế về hiệu suất và hiệu quả khi xử lý các mảng lớn Nếu tôi muốn tìm hiểu thêm về các thuật toán tìm kiếm và sắp xếp nâng cao hơn, có thể nghiên cứu về sắp xếp nhanh (quick sort), sắp xếp gộp (merge sort), tìm kiếm nhị phân cải tiên, và các thuật toán tôi ưu hơn khác

Trang 14

Trang 19

Đề hiểu rõ hơn về các thuật toán nảy và cách triển khai chúng trong C+>+, tôi có thể tìm hiểu thông tin và tài liệu bố sung từ các nguồn tham khảo, sách giáo khoa về cầu trúc đữ liệu và giải thuật, hoặc các tài liệu trực tuyến về lập trình

Lưu ý rằng hiệu suất của các thuật toán có thê thay đôi dựa trên ngữ cảnh và tính chat của dữ liệu đầu vào Khi triển khai các thuật toán tronø ứng dụng thực tế, hãy xem xét kỹ càng để chọn thuật toán phù hợp nhất cho bài toán cụ thế mà tôi đang giải

quyết

Trang 15

Trang 20

1.2.8 Thực hành tìm kiếm và sắp xếp trên mảng số nguyên một chiêu:

int search(int arr[], int n, int x) {

for (int 1= 0; 1 <n; i++) {

void sort(int arr[], int n) {

for (int i= 1;1<n; i++) {

int key = arr[i];

Trang 16

Trang 21

int n = sizeof(arr) / sizeof(arr[0]);

cout <<" Mang ban dau la: " << endl;

Chương trình này có các phần sau:

- Phần khai báo thư viện: #include <iostream> là lệnh để sử dụng thư viện 10stream trong C++, thư viện này chứa các hàm nhập xuất dữ liệu như cin và cout using namespace std; là lệnh để sử dụng không gian tên std, không gian tên này chứa các hàm và biên của thư viện chuan C++

Trang L7

Trang 22

Phần định nghĩa hàm: Chương trình này có ba hàm được định nghĩa là

printArray, search và sort Hàm printArray có chức năng in ra một mảng số nguyên theo định dạng [a, b, c, ] Hàm search có chức năng tìm kiếm một phần tử trong mảng số nguyên bằng thuật toán tìm kiếm tuần tự, hàm này trả về chỉ số của phần tử nếu tìm thấy, hoặc trả về -L nếu không tìm thấy Hàm sort có chức năng sắp xếp một mảng số nguyên theo thứ tự tăng dần bằng thuật toán sắp xếp chèn, hàm này không trả về giá trị mà chỉ thay đôi trực tiếp mảng đầu vảo

Phần hàm chính: Hàm main là hàm chính của chương trình, hàm này được gọi khi chương trình bắt đầu chạy Hàm này có các bước sau:

Khởi tạo một mang số nguyên gồm 8 phan tu là {5, 3, 7, 9, 2, 4, 6, 8} va lay

kích thước của mảng băng cách chia kích thước của toàn bộ mảng cho kích thước của một phần tử

In ra mảng ban đầu bằng cách gọi hàm printArray

Tìm kiếm một phần tử trong mảng bằng cách gọi hàm search, phần tử cần tìm là

7 Nếu tìm thấy, in ra chỉ số của phần tử đó trong mảng, nêu không tìm thay, in

ra thông báo không tìm thấy

Sắp xếp mảng bằng cách gọi hàm sort

In ra mảng sau khi sắp xếp bằng cách gọi hàm printArray

Kết thúc hàm và trả về giá trị 0

1.3 Minh họa trên đề tài

Đối với đề tài "Chương trình quản lý thông tin phân xưởng" trong đó mỗi phan

tử của mảng sẽ lưu trữ thông tin về một phân xưởng gồm các trường dữ liệu: idPhanXuong, tenPhanXuong va tenQuanDoc

Tôi sẽ thực hiện tao chuong trinh C++ dé thém, hién thi, tim kiém va sap xếp các phần tử trong mảng đữ liệu này Trong đó, tôi sẽ áp dụng các thuật toán tìm kiếm và sắp xếp đã học và thực hành trong phần 1.2 đề giải quyết các yêu cầu của đề tài

Trang 23

void nhapThongTin(PhanXuong arr[], int& n) {

cout << "Nhap so luong phan xuong muon nhap: ";

cin >> n;

cin.ignore();

for (int 1= 0; 1 <n; i++) {

cout << "Nhap thong tin phan xuong thu "<<1+ 1 << endl;

cout << "Nhap idPhanXuong: ";

Đoạn code trên định nghĩa một cấu trúc có tên là PhanXuong, bao gồm ba thành

phần: idPhanXuong, tenPhanXuong, và tenQuanDoc Và một hàm có tên là nhapThongTin, nhận một mảng các đối tượng PhanXuong và một tham chiếu số nguyên làm tham sô Hàm này yêu câu người dùng nhập sô lượng các đôi tượng PhanXuong muốn nhập, và sau đó lặp qua mảng để lấy giá trị cho từng thành phần từ người dùng

Trang L9

Ngày đăng: 01/11/2024, 14:40

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN