CTRR_CK

You might also like

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

Báo cáo cuối kì

Cấu trúc rời rạc


Quy định

- Bạn nên giải quyết và nộp báo cáo này vào tài khoản elearning của mình trong
vòng 14 ngày, từ đầu ngày 21/5/2024 đến hết ngày 3/6/2024. Việc gửi trễ không
được chấp nhận.
- Đây là báo cáo cuối cùng của nhóm. Số lượng học sinh trong một nhóm không
được nhiều hơn 3
- Trong bài kiểm tra, có những câu hỏi cần được tùy chỉnh theo ID sinh viên.Chỉ thẻ
sinh viên nhỏ nhất trong nhóm của bạn mới được sử dụng cho mục đích này. Ví
dụ, trong nhóm 3 học sinh, có 52200123, 52200136 và 52201001, thì chỉ sử dụng
52200123.
- Sinh viên cần gửi một tệp nén có tên với ID sinh viên của bạn, ví dụ:
52200123_52200136_52201001.zip/rar, bao gồm cấu trúc này:
 Tệp tài liệu có định dạng Word (.doc / docx), được đặt tên theo ID sinh viên
của bạn, ví dụ: 52200123_52200136_52201001.docx, sử dụng định dạng của
giảng viên của chúng tôi, từ 25 đến 35 trang.
o Nhiệm vụ của từng thành viên và tự đánh giá nhóm của bạn nên được
tuyên bố ở cuối báo cáo này.
o Tiếng Anh là bắt buộc cho các lớp học chất lượng cao. Vi phạm định
dạng sẽ phải trả giá từ 10% đến 50% tổng số điểm của bạn.
o Bất kỳ trường hợp đạo văn nào cũng sẽ bị 0.
 Các tệp mã nguồn Python được đặt tên theo ID sinh viên và Số nhiệm vụ của
bạn, ví dụ: 52200123_52200136_52201001_8.py và
52200123_52200136_52201001_9.py.
Câu 1: Thuật toán Euclid và danh tính của Bezout

a. Sử dụng thuật toán của Euclid để tính gcd (2024, 1000 + m) và lcm (2024, 1000 +
m), trong đó m là 3 chữ số cuối của thẻ sinh viên của bạn. Ví dụ: nếu ID sinh viên
của bạn 52200123 thì bạn cần tính gcd (2024, 1123) và lcm (2024, 1123).
b. Áp dụng (các) kết quả trên để tìm 5 cặp nghiệm số nguyên (x,y) của phương trình
này:
2024x + (1000 + m)y = gcd(2024, 1000 + m)
Ví dụ: nếu ID sinh viên của bạn 52000123 thì phương trình của bạn là:
2024x + 1123y = gcd(2024, 1123)

Câu 2: Quan hệ lặp lại

Giải quyết mối quan hệ lặp lại này.

an = 8.an−1 – 15.an−2

với a0 = 5 và a1 = m,

trong đó m là 2 chữ số cuối của thẻ sinh viên của bạn. Ví dụ: nếu ID sinh viên của bạn
52200123 thì a1 = 23.

Câu 3: Tập hợp

a. Tạo một tập hợp Γ ký tự từ tên đầy đủ không phân biệt chữ hoa chữ thường của
bạn. Ví dụ, tập hợp tương ứng với "Tôn Đức Thắng" là Δ = {A, C, D, G, H, N, O,
T, U}.
b. Tìm hợp, giao nhau, hiệu không đối xứng và hiệu đối xứng của Γ và Δ, trong đó Γ
và Δ nằm từ câu hỏi 3a.

Câu 4: Quan hệ

Cho R là một quan hệ nhị phân được định nghĩa trên 2 số nguyên như sau:

∀a,b∈N (aRb↔m|( a.b))


trong đó m là 2 chữ số cuối của thẻ sinh viên của bạn.

Ví dụ: nếu ID sinh viên của bạn 52200123 thì quan hệ nhị phân hợp lệ là

∀a,b∈N (aRb↔23|( a.b))

R có phản xạ, đối xứng, phản đối xứng, bắc cầu không? Chứng minh câu trả lời của bạn.

Câu 5: Thuật toán Kruskal

Đề xuất giải pháp kiểm tra mạch trong thuật toán của Kruskal. Cho một ví dụ.

Câu 6: Mạch Eulerian

a. Đồ thị sau đây có mạch Eulerian hay đường đi Eulerian không? Tại sao?

b. Nghiên cứu và trình bày kiến thức của bạn về thuật toán của Hierholzer để tìm
mạch Eulerian.
c. Nếu đồ thị có mạch Eulerian, hãy sử dụng thuật toán Hierholzer để tìm mạch Euler
của đồ thị đó khi mạch ban đầu R1 là:
i. Nếu abcd % 4 = 0 thì R1 là EINME
ii. Nếu abcd % 4 = 1 thì R1 là abhga
iii. Nếu abcd % 4 = 2 thì R1 là UVbaU
iv. Nếu abcd % 4 = 3 thì R1 là XCdX

Trong đó abcd là số gồm 4 chữ số được kết hợp bởi 4 chữ số cuối trong ID sinh viên của
bạn. Ví dụ: Thẻ sinh viên 52201234 có abcd = 1234.

Câu 7: Tô màu bản đồ

Với bản đồ này:


a. Mô hình hóa bản đồ này bằng một biểu đồ.
b. Tô màu bản đồ (đồ thị) với số lượng màu tối thiểu. Trình bày giải pháp của
bạn từng bước.
Hãy để abcd là số gồm 4 chữ số được kết hợp bởi 4 chữ số cuối trong ID
sinh viên của bạn. Ví dụ: StudentID 52201234 có abcd = 1234.
i. Nếu abcd % 4 = 0 thì bắt đầu từ Bihar.
ii. Nếu abcd % 4 = 1 thì bắt đầu từ Orissa.
iii. Nếu abcd % 4 = 2 thì bắt đầu từ Rajasthan.
iv. Nếu abcd % 4 = 3 thì bắt đầu từ Meghalaya.

Câu hỏi 8: Tìm một modulo nghịch đảo n

 Tiến hành nghiên cứu về Tìm một Modulo nghịch đảo n bằng thuật toán Euclid
mở rộng. Đưa ra ví dụ của riêng bạn.
 Triển khai một chương trình Python để tìm một Inverse Modulo n bằng thuật toán
Euclide mở rộng. Các thư viện liên quan KHÔNG được phép.
 Kiểm tra chương trình đã triển khai bằng cách sử dụng dữ liệu mẫu và xác minh
kết quả. Ghi lại kết quả màn hình của bạn và giải thích chúng trong tài liệu báo cáo
của bạn.

Câu hỏi 9: Hệ thống mật mã RSA

 Tiến hành nghiên cứu về hệ thống mật mã RSA. Hiểu các khái niệm toán học đằng
sau hệ thống mật mã RSA, bao gồm tạo số nguyên tố, số học mô-đun, thuật toán
Euclid mở rộng, thừa số nguyên tố, v.v. Đưa ra ví dụ của riêng bạn.
 Triển khai chương trình Python để mã hóa và giải mã tin nhắn bằng hệ thống mật
mã RSA. Thư viện mật mã được cho phép.
 Kiểm tra hệ thống mật mã RSA đã triển khai bằng cách sử dụng các tin nhắn mẫu
và xác minh kết quả. Ghi lại kết quả màn hình của bạn và giải thích chúng trong
tài liệu báo cáo của bạn.
 Phân tích hiệu quả và bảo mật của hệ thống mật mã RSA được triển khai.
 Thảo luận về các mối đe dọa và hạn chế bảo mật tiềm ẩn của hệ thống mật mã
RSA.
 Kết luận với các khuyến nghị để cải thiện việc triển khai hệ thống mật mã RSA.

You might also like