Kiet

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 19

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG


KHOA CÔNG NGHỆ THÔNG TIN

BÀI TIỂU LUẬN GIỮA KỲ MÔN ĐẠI SỐ TUYẾN TÍNH CHO CNTT

Người hướng dẫn: CÔ HUỲNH THỊ THU THỦY


Người thực hiện: NGUYỄN TUẤN KIỆT – 522H0058
Lớp : 22H50202
Khoá : 26

THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023


TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM
TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA CÔNG NGHỆ THÔNG TIN

BÀI TIỂU LUẬN GIỮA KỲ MÔN ĐẠI SỐ TUYẾN TÍNH CHO CNTT

Người hướng dẫn: CÔ HUỲNH THỊ THU THỦY


Người thực hiện: NGUYỄN TUẤN KIỆT – 522H0058
Lớp : 22H50202
Khoá : 26

THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023


i

LỜI CẢM ƠN

o Lời đầu tiên, xin trân trọng cảm ơn cô Huỳnh Thị Thu Thủy đã tận tình hướng dẫn em trong quá
trình học tập cũng như trong việc hoàn thành bài tiểu luận này.

o Xin chân thành cảm ơn các thầy/cô thuộc khoa Công nghệ thông tin Trường đại học Tôn Đức
Thắng đã tận tình giảng dạy cho em trong quá trình học tập.

o Xin cảm ơn các thầy/cô đã đọc luận văn và cho em những nhận xét quý báu, chỉnh sửa những sai sót
của em trong bài tiểu luận.

o Do giới hạn kiến thức và khả năng lý luận của bản thân còn nhiều thiếu sót và hạn chế, kính mong
sự chỉ dẫn và đóng góp của các thầy/cô để bài luận văn của em được hoàn thiện hơn. Xin chân
thành cảm ơn!
i
ii

ĐỒ ÁN ĐƯỢC HOÀN THÀNH


TẠI TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG

Tôi xin cam đoan đây là sản phẩm đồ án của riêng tôi và được sự hướng dẫn của
Cô Huỳnh Thị Thu Thủy ;. Các nội dung nghiên cứu, kết quả trong đề tài này là trung
thực và chưa công bố dưới bất kỳ hình thức nào trước đây. Những số liệu trong các
bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập từ
các nguồn khác nhau có ghi rõ trong phần tài liệu tham khảo.
Ngoài ra, trong đồ án còn sử dụng một số nhận xét, đánh giá cũng như số liệu
của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc.
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm
về nội dung đồ án của mình. Trường đại học Tôn Đức Thắng không liên quan đến
những vi phạm tác quyền, bản quyền do tôi gây ra trong quá trình thực hiện (nếu có).
TP. Hồ Chí Minh, ngày tháng năm
Tác giả
(ký tên và ghi rõ họ tên)

Kiệt

Nguyễn Tuấn Kiệt


iii

PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN


Phần xác nhận của GV hướng dẫn
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
_________________________________________________

Tp. Hồ Chí Minh, ngày tháng năm


(kí và ghi họ tên)

Phần đánh giá của GV chấm bài


______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
_________________________________________________

Tp. Hồ Chí Minh, ngày tháng năm


(kí và ghi họ tên)
iv

TÓM TẮT
- Bài tiểu luận được viết trên ngôn ngữ Python.
- Được thực hiện bởi sinh viên của Đại học Tôn Đức Thắng:
 Nguyễn Tuấn Kiệt
- Bài tiểu luận được tham khảo ở những bài lab đã học.
1

MỤC LỤC

LỜI CẢM ƠN...................................................................................................................i


PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN..........................................iii
TÓM TẮT.......................................................................................................................iv
MỤC LỤC........................................................................................................................1
CHAPTER 1 – METHODOLOGY OF SOLVING TASKS...........................................2
d) Save odd integer numbers in the matrix A into a new vector, and
print the resultant vector to the screen.......................................................2
e) Save prime numbers in the matrix A into a new vector, and print
the resultant vector to the screen................................................................2
f) Given a matrix D = CB, reverse elements in the odd rows of the
matrix D, and print the resultant matrix to the screen................................3
g) Regarding the matrix A, find the rows which have maximum
count of prime numbers, and print the rows to the screen.........................3
h) Regarding the matrix A, find the rows which have the longest
contiguous odd numbers sequence, and print the rows to the screen........4
CHAPTER 2 –SOURCE CODES AND OUTPUTS.......................................................5
2

CHAPTER 1 – METHODOLOGY OF SOLVING TASKS


Task 1:
d) Save odd integer numbers in the matrix A into a new vector,
and print the resultant vector to the screen.
 Tạo một mảng mới là new_vector1
 Np.extract sẽ lọc các giá trị trong ma trận A thỏa mãn điều kiện ‘A%2
==1’ vào new_vector1
 In ra mảng mới có phần tử lẻ.

e) Save prime numbers in the matrix A into a new


vector, and print the resultant vector to the screen.
 Khai báo hàm prime_number với tham số n.
o Nếu tham số n bé hơn 2 thì kết luận n không là số nguyên tố
o Tiến hành vòng lặp for để duyệt qua mảng từ 2
đến căn bậc 2 của n+1.
 Kiểm tra phần tử n có chia hết cho số
nào trong khoảng từ 2 đến căn bậc 2
của n+1 không

 Nếu n không chia hết cho số nào


trong khoảng từ 2 đến căn bậc 2 của
n+1 thì nó là số nguyên tố và ngược
lại.
 Tạo một mảng rỗng new_vector2 để lưu các số nguyên tố tìm được từ có
trong mảng A
 Hàm np.vectorize() sử dụng hàm prime_number() để tạo ra một hàm
3

vector kiểm tra các phần tử trong A và trả về một mảng boolean với giá
trị True hoặc False
 Hàm np.extract() được sử dụng để lấy những giá trị có giá trị là True và
thêm vào mảng new_vector2
 In ra mảng new_vector2.

f) Given a matrix D = CB, reverse elements in the odd rows


of the matrix D, and print the resultant matrix to the screen.
 Sử dụng np.dot() để nhân hai ma trận là C và B sau đó lưu vào mảng D.
 Tiến hành vòng lặp for để duyệt qua từng hàng của ma trận D.

 Kiểm tra chỉ số của hàng có phải là số lẻ hay không.


 Nếu vị trí hàng đang xét là số lẻ thì đảo ngược vị trí các phần tử có trong
mảng.
 Câu lệnh D[i, ::1] dùng để đảo ngược các phần tử có trong mảng đó.

g) Regarding the matrix A, find the rows which have maximum


count of prime numbers, and print the rows to the screen.
 Gọi hàm number_prime nhận vào là một số nguyên num .
 Kiểm tra xem num có phải là số nguyên tố hay không.
 Nếu num là bé hơn 2 thì trả về False .
 Ngược lại,nó sẽ lặp qua các số từ 2 đến căn bậc hai của num bằng
vòng lặp for.
 Nếu num chia hết cho số đó thì trả về False.
 Nếu không có số nào num chia hết thì trả về True.
 Sử dụng hàm filter để lọc ra các số nguyên tố.
 Sử dụng hàm lambda, filter với mỗi hàng để lọc ra các số nguyên
tố có giá trị True.
 Sau đó sài hàm len để đếm số lượng các số nguyên tố,kết quả
được lưu vào prime_count.
 Sử dụng vòng lặp for để tìm lượng số nguyên tố lớn nhất trong
4

mảng.
 Sau khi tìm được thì lưu vào max_rows.
 In ra các hàng có trong max_rows.

h) Regarding the matrix A, find the rows which have the longest contiguous
odd numbers sequence, and print the rows to the screen.
 Gọi hàm kiemtrasole() để kiểm tra xem số đó là số lẻ hay
không.
 Gọi hàm demso() để đếm số lượng lẻ liên tiếp trong một hàng
của ma trận.
 Trong hàm demo(), sử dụng vòng lặp để duyệt qua từng số
trong hàng.
+ Nếu số là lẻ thì count tăng lên 1.
+Nếu số là số chẵn thì count sẽ về 0 và đếm lại từ đầu
khi gặp số lẻ tiếp theo.
+ Nếu count lớn hơn số tìm trước đó thì max sẽ được
gán với giá trị count.
 Sử dụng vòng lặp for trong đoạn tiếp theo để tìm thông tin về
hàng nào trong ma trận chứa lượng số lẻ liên tiếp lớn nhất.
 Biến maxOdd ban đầu được gán bằng lượng số lẻ liên tiếp
trong hàng đầu tiên của ma trận.
 Nếu demso(D[i]) lớn hơn maxOdd, thì maxOdd sẽ được cập
nhật với giá trị tương ứng.
 In các hàng trong ma trận có chứa lượng số lẻ liên tiếp lớn
nhất.
5

CHAPTER 2 –SOURCE CODES AND OUTPUTS


Task 1

Task1A
6

Task1b
7

Task1C
8

Task1D
9

Task1E

Task1F
10

Task1G
11

Task1H
12

You might also like