Bài kiểm tra thực hành cuối kỳ Kỹ thuật lập trình - Khoa Khoa học và Kỹ thuật máy tính
Câu 1: (3.5đ)
a. (0.5đ) Đề xuất một cấu trúc dữ liệu (dùng struct hoặc class) để lưu một đa thức
có bậc không âm (bậc 0, 1, 2, …). Gợi ý: có thể dùng mảng để lưu các hệ số, kể
cả khi hệ số đó bằng 0.
b. (1đ) Xây dựng hàm nhận vào hai đa thức (P1 và P2) có bậc M và N và trả về
một đa thức (P3). Hàm nhân hai đa thức P1 và P2 để tạo ra P3, và trả về P3.
c. (1đ) Xây dựng hàm nhận vào một đa thức. Hàm này in ra đa thức theo định
dạng như ví dụ sau:
P(x) = 3x^4 + 2x + 1
(Nghĩa là không in ra các thành phần có hệ số bằng 0, bậc in ra giảm dần)
a. (0.5đ) Đề xuất một cấu trúc dữ liệu (dùng struct hoặc class) để lưu một đa thức
có bậc không âm (bậc 0, 1, 2, …). Gợi ý: có thể dùng mảng để lưu các hệ số, kể
cả khi hệ số đó bằng 0.
b. (1đ) Xây dựng hàm nhận vào hai đa thức (P1 và P2) có bậc M và N và trả về
một đa thức (P3). Hàm nhân hai đa thức P1 và P2 để tạo ra P3, và trả về P3.
c. (1đ) Xây dựng hàm nhận vào một đa thức. Hàm này in ra đa thức theo định
dạng như ví dụ sau:
P(x) = 3x^4 + 2x + 1
(Nghĩa là không in ra các thành phần có hệ số bằng 0, bậc in ra giảm dần)
Bạn đang xem tài liệu "Bài kiểm tra thực hành cuối kỳ Kỹ thuật lập trình - Khoa Khoa học và Kỹ thuật máy tính", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_kiem_tra_thuc_hanh_cuoi_ky_ky_thuat_lap_trinh_khoa_khoa.pdf
Nội dung text: Bài kiểm tra thực hành cuối kỳ Kỹ thuật lập trình - Khoa Khoa học và Kỹ thuật máy tính
- TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG TPHCM Khoa Khoa học và Kỹ thuật Máy tính sách các thông số. Khi gọi hàm này và truyền mảng và các thông số cần thiết vào thì hàm sẽ tính tổng và in ra. Ví dụ: Mảng vào: 1,5,7,8 (4 phần tử). Hàm tính và in ra: 9, 12. Lưu ý: 9 = 1 + 8; 12 = 5 + 7. Mảng vào: 1,5, 4, 7,8 (4 phần tử). Hàm tính và in ra: 9, 12, 4. Lưu ý: 9 = 1 + 8; 12 = 5 + 7, 4 không cặp với phần tử nào nên kết quả vẫn là 4. Câu 4: a. (0.5đ) Đề xuất cấu trúc dữ liệu để lưu được một mảng 2 chiều (dùng struct hoặc class), gọi tên kiểu này là Matrix. b. (1đ) Xây dựng một hàm nhận vào một mảng 2 chiều, gọi là A, có N hàng và M cột (N và M bất kỳ). Sinh viên có thể truyền số hàng, số cột cùng với con trỏ đến phần tử đầu tiên hoặc chỉ truyền vào một đối tượng Matrix – tuỳ cách dùng class hay struct. Hàm tính và trả về một ma trận có 1 hàng và M cột, gọi là B. Phần tử ở cột thứ i của ma trận B sẽ là tổng các phần tử phần ở cột thứ i của ma trận A. Ví dụ: A = 1, 2 3, 4 5, 6 B = 9, 12 (Lưu ý: 9 = 1 + 3 + 5; 12 = 2 + 4 + 6) c. (0.5đ) Viết chương trình, hàm main: i. Khai báo và khởi động một mảng 2 chiều có 4 hàng và 3 cột, các phần tử trong khởi động có giá trị tuỳ ý. ii. Gọi hàm ở câu (b) để tính ra ma trận kết quả; in ra ma trận kết quả. iii. Giải phóng các vùng nhớ đã xin được. Câu 5: (1.5đ) Xây dựng lớp (class) Date cho phép người lập trình thực hiện công việc như đoạn chương trình sau: int main(){ Date d; std::cin >> d; //nhập: 14 7 2017 và gõ ENTER 2