You are on page 1of 15

DANH SÁCH ĐỀ TÀI - ĐỒ ÁN CƠ SỞ

Bộ môn Công nghệ phần mềm

Đề tài 101: Dùng sơ đồ Horner để ước lượng đa thức P(x) =anxn+an-1xn-1+...+a1x+a0 tại x=c.
Khai báo dữ liệu: Danh sách đặc A (mảng A) gồm n+1 hệ số của đa thức P(x).
Yêu cầu:
- Đọc n và các hệ số từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả P(c) ra file *.OUT hoặc màn hình.
Đề tài 102: Dùng sơ đồ Horner để ước lượng đa thức P(x) =anxn+an-1xn-1+...+a1x+a0 tại x=c.
Khai báo dữ liệu: Danh sách liên kết A (một chiều hoặc hai chiều) gồm n+1 hệ số của đa thức P(x).
Yêu cầu:
- Đọc n khá lớn và các hệ số từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả P(c) ra file *.OUT hoặc màn hình.
Đề tài 103: Biến đổi đa thức P(x) =anxn+an-1xn-1+...+a1x+a0 theo (x-c)
nghĩa là Q(x-c) = P (x) = bn(x-c)n+bn-1(x-c)n-1+...+b1(x-c) +b0 theo sơ đồ Horner tổng quát.
Khai báo dữ liệu: Mảng 2 chiều A gồm n+1 hàng và n+1 cột để tính các hệ số (x-c)k theo quy tắc “nhân
ngang cộng chéo”.
Yêu cầu:
- Đọc n và các hệ số từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả là c các hệ số của P(x-c) ra file *.OUT hoặc màn hình.
Đề tài 104: Tìm nghiệm đa thức P(x) =anxn+an-1xn-1+...+a1x+a0 bằng phương pháp chia đôi.
Khai báo dữ liệu: Danh sách đặc A (mảng A) gồm n+1 hệ số của đa thức P(x).
Yêu cầu:
- Đọc n và các hệ số từ file *.INP hoặc tạo ngẫu nhiên.
- Nhập a, b cho khoảng nghiệm [a, b] với P(a)P(b)<0.
- Ghi kết quả là nghiệm x=c ra file *.OUT hoặc màn hình.
Đề tài 105: Tìm hạng ma trận.
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A cần tính hạng gồm m hàng và n cột.
Yêu cầu:
- Dùng các phép biến đổi sơ cấp để đưa ma trận về dạng hình thang.
- Đọc m, n và ma trận A từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả số r là hạng của ma trận A ra file *.OUT hoặc màn hình.
Đề tài 106: Tính định thức của ma trận vuông cấp n.
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A vuông cần tính định thức gồm n hàng và n cột.
Yêu cầu:
- Dùng các phép biến đổi để đưa định thức về dạng tam giác.
- Đọc n và ma trận A từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả số d là định thức của ma trận A ra file *.OUT hoặc màn hình.
Đề tài 107: Tính định thức của ma trận vuông cấp n.
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A vuông cần tính định thức gồm n hàng và n cột.
Yêu cầu:
- Dùng kỹ thuật đệ quy bằng cách khai triển theo một hàng hoặc cột để hạ cấp định thức.
- Đọc n và ma trận A từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả số d là định thức của ma trận A ra file *.OUT hoặc màn hình.
Đề tài 108: Tính ma trận nghịch đảo.
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A vuông cần tính nghịch đảo gồm n hàng và n cột.
Yêu cầu:
- Biến đổi sơ cấp về hàng trên ma trận [A|E] n hàng và 2n cột sao cho A trở thành E thì E trở thành
A-1.
- Đọc n và ma trận A từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả là ma trận nghịch đảo A-1 ra file *.OUT hoặc màn hình.
Đề tài 109: Giải hệ phương trình Crame cấp n (n phương trình, n ẩn)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A vuông cấp n và mảng một chiều B gồm n số.
Yêu cầu:
- Dùng công thức Crame để tính nghiệm qua định thức.
- Đọc n, ma trận A và cột B từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả n số x1, x2, ..., xn là nghiệm của phương trình ra file *.OUT hoặc màn hình.
Đề tài 110: Giải hệ phương trình Crame cấp n (n phương trình, n ẩn)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A vuông cấp n và mảng một chiều B gồm n số.
Yêu cầu:
- Dùng phương pháp Cholesky để tách ma trận A thành tích hai ma trận tam giác.
- Đọc n, ma trận A và cột B từ file *.INP hoặc tạo ngẫu nhiên.
- Ghi kết quả n số x1, x2, ..., xn là nghiệm của phương trình ra file *.OUT hoặc màn hình.
Đề tài 201: Tính toán trên đa thức
Cho đa thức bậc n, p(x) = a0xn+a1xn-1+...+an-1x+an
Tính q1 = p(1) + p(2) + … + p(m)
Tính q2 = p(x1) + p(x2) + … + p(xm)
Khai báo dữ liệu:
Danh sách đặc a (mảng a) gồm n+1 hệ số của đa thức P(x).
Danh sách đặc x (mảng x) gồm m phần tử của vec tơ x
Yêu cầu:
Đọc n, m, các hệ số đa thức & các phần tử vec tơ x từ file *.IN
Ghi kết quả q1, q2 ra file *.OUT hoặc màn hình.
Đề tài 202: Tính toán trên đa thức
Cho 2 đa thức: p(x) = a0xn+a1xn-1+...+an-1x+an
q(y) = b0ym+b1ym-1+...+bm-1y+bm
Tính res1 = p(z) + q(z)
Tính res2 = q(z) + q(t)
Tính res3 = p(z) + q(t)
Khai báo dữ liệu:
Danh sách đặc a (mảng a) gồm n+1 hệ số của đa thức p(x).
Danh sách đặc b (mảng b) gồm m+1 hệ số của đa thức q(x).
Yêu cầu:
Đọc n, m, z, t và các hệ số của 2 đa thức từ file *.IN
Ghi kết quả res1, res2, res3 ra file *.OUT hoặc màn hình.
Đề tài 203: Tìm nghiệm đa thức p(x) =a0xn+a1xn-1+...+an-1x+an bằng phương pháp dây cung.
Khai báo dữ liệu: Danh sách đặc A (mảng A) gồm n+1 hệ số của đa thức p(x).
Yêu cầu:
- Đọc n và các hệ số từ file *.INP hoặc tạo ngẫu nhiên.
- Cho phép thay đổi a, b & kiểm tra ràng buộc (a, b) là khoảng nghiệm.
- Ghi kết quả là nghiệm gần đúng ra file *.OUT hoặc màn hình.
Đề tài 204: Giải hệ phương trình đại số tuyến tính bằng phương pháp Gauss (n phương trình, n ẩn)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A cấp n,n+1.
Yêu cầu:
- Thực hiện biến đổi ma trận A về dạng tam giác trên, tìm nghiệm theo quá trình ngược.
- Đọc n, ma trận A từ file *.INP
- Ghi kết quả n số x1, x2, ..., xn là nghiệm của hệ phương trình ra file *.OUT hoặc màn hình.
Đề tài 205: Giải hệ phương trình đại số tuyến tính bằng phương pháp tự sửa sai (n phương trình, n ẩn)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A cấp n,n+1.
Yêu cầu:
- Đọc n, ma trận A từ file *.INP
- Nhập vec tơ nghiệm ban đầu & cho phép thay đổi vec tơ này.
- Ghi kết quả n số x1, x2, ..., xn từ bước đầu (vec tơ nghiệm sai) cho đến bước cuối ( là vec tơ nghiệm
gần đúng của hệ phương trình).
Đề tài 206: Giải hệ phương trình đại số tuyến tính bằng phương pháp giảm dư (n phương trình, n ẩn)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A cấp n,n+1.
Yêu cầu:
- Đọc n, ma trận A từ file *.INP
- Nhập vec tơ nghiệm ban đầu & cho phép thay đổi vec tơ này.
- Ghi kết quả n số x1, x2, ..., xn từ bước đầu (gây ra các số dư) cho đến bước cuối (các số dư tiến về
0, và là vec tơ nghiệm gần đúng của hệ phương trình).
Đề tài 207: Tìm trị riêng của ma trận vuông (cấp n)
Khai báo dữ liệu: Mảng 2 chiều cho ma trận A cấp n.
Yêu cầu:
Đọc n, ma trận A từ file *.INP
Thực hiện biến đổi ma trận A về ma trận P (có dạng Phơrebemit).
Tìm nghiệm phương trình đại số với các hệ số lấy từ ma trận P.
Ghi kết quả là ma trận P, trị riêng của ma trận A ra file *.OUT hoặc màn hình.
Đề tài 208: Cho hàm f(x) nhận giá trị yi tại các điểm tương ứng xi (i=0,1, 2, …, n) và giá trị c. Viết chương
trình tính và in ra bảng nội suy Ayken (theo 2 dạng: Ayken 1, Ayken 2)
Khai báo dữ liệu:
Danh sách đặc x (mảng x) gồm n+1 phần tử.
Danh sách đặc y (mảng y) gồm n+1 phần tử.
Yêu cầu:
Đọc n, các phần tử của vec tơ x, vec tơ y từ file *.IN
Cho phép thay đổi giá trị c ϵ (x0, xn).
Ghi kết quả là bảng nội suy Ayken và giá trị gần đúng f(c) ra màn hình.
Đề tài 209: Cho hàm f(x) nhận giá trị yi tại các điểm tương ứng xi (i=1, 2, …, n). Xây dựng biểu thức dạng
phi tuyến tính f(x)=aebx bằng phương pháp bình phương tối thiểu.
Khai báo dữ liệu:
Danh sách đặc x (mảng x) gồm n phần tử.
Danh sách đặc y (mảng y) gồm n phần tử.
Yêu cầu:
Đọc n, các phần tử của vec tơ x, vec tơ y từ file *.IN
Ghi kết quả là hệ số a, b của biểu thức hàm f(x) ra màn hình.
Đề tài 210: Cho hàm f(x) nhận giá trị yi tại các điểm tương ứng xi (i=1, 2, …, n). Xây dựng biểu thức dạng
phi tuyến tính f(x)=axb bằng phương pháp bình phương tối thiểu.
Khai báo dữ liệu:
Danh sách đặc x (mảng x) gồm n phần tử.
Danh sách đặc y (mảng y) gồm n phần tử.
Yêu cầu:
Đọc n, các phần tử của vec tơ x, vec tơ y từ file *.IN
Ghi kết quả là hệ số a, b của biểu thức hàm f(x) ra màn hình.
Đề tài 211: Cho các hàm đa thức p(x) bậc n. Tính gần đúng tích phân xác định của hàm p(x) trên [a, b] theo
các công thức: Hình thang, Parabol, Newton Cotet.
Khai báo dữ liệu:
Danh sách đặc a (mảng a) gồm n +1 hệ số của đa thức.
Mảng 2 chiều lưu trữ các hệ số pni
Yêu cầu:
Nhập n (số đoạn cần chia).
Nhập a, b (cận tính tích phân).
Đọc các hệ số pni tương ứng từ file *.IN
Ghi kết quả là bảng tính tích phân xác định của hàm đa thức (theo 3 công thức) ra màn hình.
Đề tài 212: Cho các hàm siêu việt f(x), g(x) và h(x). Tính gần đúng tích phân xác định của các hàm đó trên
[a, b] theo các công thức: Hình thang, Parabol, Newton Cotet.
Khai báo dữ liệu:
Mảng 2 chiều lưu trữ các hệ số pni
Yêu cầu:
Khai báo 3 hàm f(x), g(x) và h(x).
Nhập n (số đoạn cần chia).
Nhập a, b (cận tính tích phân).
Đọc các hệ số pni tương ứng từ file *.IN
Ghi kết quả là bảng tính tích phân xác định của 3 hàm trên (theo 3 công thức) ra màn hình.

Đề 301: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N phần tử (chữ số). Xây dựng một danh sách liên kết đơn với các phần tử đã
N
đọc vào. Thực hiện xóa phần tử ở vị trí (làm tròn nếu N lẻ) , hiển thị kết quả và lưu kết quả ra
2
file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

a) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp chia đôi (với sai số e = 10-5) , hiển
thị kết quả và lưu kết quả ra file.
Đề 302:
Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử chữ số. Xây dựng một danh sách liên kết đơn với các phần tử đã
N
đọc vào. Thực hiện thêm một phần tử (số) vào vị trí (làm tròn nếu N lẻ) , hiển thị kết quả và
2
lưu kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp tiếp tuyến (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.

Đề 303: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách liên kết đơn ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm vào mỗi danh sách
M
liên kết đơn một phần tử tại vị trí (làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách đơn, mỗi danh sách đơn có N phần tử.
Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø

c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN ) của hệ phương trình A X = B bằng phương pháp lặp đơn, với
T

B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.

Đề 304: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N + 1). Xây dựng các
danh sách liên kết đơn ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm xóa bớt ở mỗi danh
M
sách đơn một phần tử tại vị trí (có làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được N danh sách đơn, mỗi danh sách đơn có N
phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp Gauss -
Siedel, với B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 305: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách liên kết đơn ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm một phần tử vào vị trí
M
(làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách đơn, mỗi danh sách đơn có N phần tử.
Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B bằng phương pháp lặp đơn, với
B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.

Đề 306: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N hàng ( N = 3), mỗi hàng có M phần tử chữ số ( M ³ 10). Xây dựng các
danh sách liên kết đơn ứng với mỗi hàng phần tử đã đọc vào. Thực hiện xóa hai phần tử vào vị trí
M M M
và (làm tròn nếu M lẻ) đối với dánh sách thứ nhất và thứ ba, xóa một phần tử vào vị trí
4 2 4
đối với danh sách thứ hai, hiển thị kết quả và lưu kết quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được các danh sách đơn thứ nhất (ai , i = 1...M - 2),
thứ hai (bi , i = 1...M -1)và thứ ba (ci , i = 1...M - 2). Biết rằng các phần tử này là các giá trị được biểu
diễn theo trận sau (ma trận có ba đường chéo chính):

æ b1 c1 0 0 0 0 ö
ç ÷
ç a1 b2 c2 0 0 0 ÷
ç0 a2 b3 c3 0 0 ÷
A=ç ÷
ç0 0 a3 ... ... 0 ÷
ç0 0 0 ... bM - 2 cM - 2 ÷
çç ÷
è0 0 0 0 aM - 2 bM -1 ÷ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B , với B = (b1 , b2 ,..., bN )T , hiển thị kết
quả và lưu kết quả ra file.

Đề 307: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N phần tử (chữ số). Xây dựng một danh sách liên kết kép với các phần tử đã
N
đọc vào. Thực hiện xóa phần tử ở vị trí (làm tròn nếu N lẻ) , hiển thị kết quả và lưu kết quả ra
2
file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp chia đôi (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 308: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử chữ số. Xây dựng một danh sách liên kết kép với các phần tử đã
N
đọc vào. Thực hiện thêm một phần tử (số) vào vị trí (làm tròn nếu N lẻ) , hiển thị kết quả và lưu
2
kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp tiếp tuyến (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 309: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách liên kết kép ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm vào mỗi danh sách liên
M
kết đơn một phần tử tại vị trí (làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách kép, mỗi danh sách kép có N phần tử.
Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp lặp đơn, với
B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 10: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N + 1). Xây dựng các
danh sách liên kết kép ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm xóa bớt ở mỗi danh
M
sách đơn một phần tử tại vị trí (có làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được N danh sách kép, mỗi danh sách kép có N
phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp Gauss -
Siedel, với B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 311: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách liên kết kép ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm một phần tử vào vị trí
M
(làm tròn nếu M lẻ) , hiển thị kết quả và lưu kết quả ra file.
2
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách kép, mỗi danh sách kép có N phần tử.
Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B bằng phương pháp lặp đơn, với
B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 312: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N = 3), mỗi hàng có M phần tử chữ số ( M ³ 10). Xây dựng các
danh sách liên kết kép ứng với mỗi hàng phần tử đã đọc vào. Thực hiện xóa hai phần tử vào vị trí
M M M
và (làm tròn nếu M lẻ) đối với danh sách thứ nhất và thứ ba, xóa một phần tử vào vị trí
4 2 2
đối với danh sách thứ hai, hiển thị kết quả và lưu kết quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được các danh sách kép thứ nhất (ai , i = 1...M - 2),
thứ hai (bi , i = 1...M -1)và thứ ba (ci , i = 1...M - 2). Biết rằng các phần tử này là các giá trị được biểu
diễn theo trận sau (ma trận có ba đường chéo chính):
æ b1 c1 0 0 0 0 ö
ç ÷
ç a1 b2 c2 0 0 0 ÷
ç0 a2 b3 c3 0 0 ÷
A=ç ÷
ç0 0 a3 ... ... 0 ÷
ç0 0 0 ... bM - 2 cM - 2 ÷
çç ÷
è0 0 0 0 aM - 2 bM -1 ÷ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B , với B = (b1 , b2 ,..., bN )T , hiển thị kết
quả và lưu kết quả ra file.
Đề 313: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử (chữ số). Xây dựng một danh sách kiểu hàng đợi với các phần tử
đã đọc vào. Thực hiện xóa một phần tử trong danh sách này, hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M (M=N-1)phần tử (a0 , a1 ,..., aM -1 ).
Biết rằng các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp chia đôi (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 314: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử chữ số. Xây dựng một danh sách kiểu hàng đợi với các phần tử đã
đọc vào. Thực hiện xóa một phần tử trong danh sách này , hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp tiếp tuyến (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 315: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách kiểu hàng đợi với các phần tử đã đọc vào. Thực hiện thêm vào mỗi danh sách một phần
tử, hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách kiểu hàng đợi, mỗi danh sách có N
phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp lặp đơn, với
B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.

Đề 316: Thực hiện các công việc sau bằng C/C++


a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N + 1). Xây dựng các
danh sách kiểu hàng đợi ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm xóa bớt ở mỗi danh
sách một phần tử, hiển thị kết quả và lưu kết quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được N danh sách hàng đợi, mỗi danh sách đơn có
N phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp Gauss -
Siedel, với B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 317: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N = 3), mỗi hàng có M phần tử chữ số ( M ³ 10). Xây dựng các
danh sách kiểu hàng đợi ứng với mỗi hàng phần tử đã đọc vào. Thực hiện xóa hai phần tử đối với
danh sách thứ nhất và thứ ba, xóa một phần tử đối với danh sách thứ hai , hiển thị kết quả và lưu kết
quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được các danh sách: thứ nhất (ai , i = 1...M - 2), thứ
hai (bi , i = 1...M -1)và thứ ba (ci , i = 1...M - 2). Biết rằng các phần tử này là các giá trị được biểu
diễn theo trận sau (ma trận có ba đường chéo chính):
æ b1 c1 0 0 0 0 ö
ç ÷
ç a1 b2 c2 0 0 0 ÷
ç0 a2 b3 c3 0 0 ÷
A=ç ÷
ç0 0 a3 ... ... 0 ÷
ç0 0 0 ... bM - 2 cM - 2 ÷
çç ÷
è0 0 0 0 aM - 2 bM -1 ÷ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B , với B = (b1 , b2 ,..., bN )T , hiển thị kết
quả và lưu kết quả ra file.
Đề 318: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử (chữ số). Xây dựng một danh sách kiểu ngăn xếp với các phần tử
đã đọc vào. Thực hiện xóa một phần tử trong danh sách này, hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M (M=N-1)phần tử (a0 , a1 ,..., aM -1 ).
Biết rằng các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp chia đôi (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 319: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N phần tử chữ số. Xây dựng một danh sách kiểu ngắn xếp với các phần tử đã
đọc vào. Thực hiện xóa một phần tử trong danh sách này, hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện câu a), chúng ta nhận được một danh sách có M phần tử (a0 , a1 ,..., aM -1 ). Biết rằng
các phần tử này là hệ số của đa thức sau:
M -1
G ( x) = å ai x i
i =0

c) Hãy tìm các nghiệm của phương trình G ( x) = 0 phương pháp tiếp tuyến (với sai số e = 10-5), hiển
thị kết quả và lưu kết quả ra file.
Đề 320: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N - 1) . Xây dựng các
danh sách kiểu ngăn xếp với các phần tử đã đọc vào. Thực hiện thêm vào mỗi danh sách một phần
tử, hiển thị kết quả và lưu kết quả ra file.
b) Sau khi thực hiện ở câu a), chúng ta nhận được N danh sách kiểu hàng đợi, mỗi danh sách có N
phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp lặp đơn, với
B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 321: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N > 4) , mỗi hàng có M phần tử chữ số ( M = N + 1). Xây dựng các
danh sách kiểu ngăn xếp ứng với mỗi hàng phần tử đã đọc vào. Thực hiện thêm xóa bớt ở mỗi danh
sách một phần tử, hiển thị kết quả và lưu kết quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được N danh sách hàng đợi, mỗi danh sách đơn có
N phần tử. Biết rằng các phần tử này là các giá trị được biểu diễn theo trận sau:
æ a11 a12 ... a1N ö
ç ÷
a a22 ... a2 N ÷
A = ç 21
ç ... ... ... ... ÷
ç ÷
è aN 1 aN 2 ... aNN ø
c) Hãy tìm nghiệm X = ( x0 , x1 ,..., xN )T của hệ phương trình A X = B bằng phương pháp Gauss -
Siedel, với B = (b1 , b2 ,..., bN )T , hiển thị kết quả và lưu kết quả ra file.
Đề 322: Thực hiện các công việc sau bằng C/C++
a) Đọc từ file (*.*) gồm N hàng ( N = 3), mỗi hàng có M phần tử chữ số ( M ³ 10). Xây dựng các
danh sách kiểu ngăn xếp ứng với mỗi hàng phần tử đã đọc vào. Thực hiện xóa hai phần tử đối với
danh sách thứ nhất và thứ ba, xóa một phần tử đối với danh sách thứ hai , hiển thị kết quả và lưu kết
quả ra file.
b) Kết quả sau khi thực hiện ở câu a), chúng ta nhận được các danh sách: thứ nhất (ai , i = 1...M - 2), thứ
hai (bi , i = 1...M -1)và thứ ba (ci , i = 1...M - 2). Biết rằng các phần tử này là các giá trị được biểu
diễn theo trận sau (ma trận có ba đường chéo chính):
æ b1 c1 0 0 0 0 ö
ç ÷
ç a1 b2 c2 0 0 0 ÷
ç0 a2 b3 c3 0 0 ÷
A=ç ÷
ç0 0 a3 ... ... 0 ÷
ç0 0 0 ... bM - 2 cM - 2 ÷
çç ÷
è0 0 0 0 aM - 2 bM -1 ÷ø
c) Hãy tìm nghiệm X ( x0 , x1,..., xN ) của hệ phương trình A X = B , với B = (b1 , b2 ,..., bN )T , hiển thị kết
quả và lưu kết quả ra file.
Đề tài 401:
Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x), cho dãy số thứ hai Q là m+1 hệ số của đa thức Q(x).
Tính dãy số thứ ba R là k+1 hệ số của đa thức R(x) = P(x) + Q(x) (với k=max{m, n}).
Khai báo dữ liệu: Dùng 3 mảng một chiều P, Q, R lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào mảng thứ nhất P.
Đọc các phần tử của dãy thứ hai trong file DATA2 và lưu vào mảng thứ hai Q.
Tính các phần tử của dãy thứ ba R và lưu vào mảng R, sau đó ghi vào file DATA3
Đề tài 402: Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x), cho dãy số thứ hai Q là m+1 hệ số của đa
thức Q(x). Tính dãy số thứ ba R là k+1 hệ số của đa thức R(x) = P(x) + Q(x) (với k=max{m, n}).
Khai báo dữ liệu: Dùng 3 mảng một chiều P, Q, R lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào danh sách liên kết thứ nhất P.
Đọc các phần tử của dãy thứ hai trong file DATA2 và lưu vào danh sách liên kết thứ hai Q.
Tính các phần tử của dãy thứ ba R và lưu vào danh sách liên kết thứ ba R, sau đó ghi vào file
DATA3.
Đề tài 403: Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x), cho dãy số thứ hai Q là m+1 hệ số của đa
thức Q(x). Tính dãy số thứ ba R là k+1 hệ số của đa thức R(x) = P(x)Q(x) (với k=m+n).
Khai báo dữ liệu: Dùng 3 mảng một chiều P, Q, R lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào mảng thứ nhất P.
Đọc các phần tử của dãy thứ hai trong file DATA2 và lưu vào mảng thứ hai Q.
Tính các phần tử của dãy thứ ba R và lưu vào mảng R, sau đó ghi vào file DATA3
Đề tài 404: Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x), cho dãy số thứ hai Q là m+1 hệ số của đa
thức Q(x). Tính dãy số thứ ba R là k+1 hệ số của đa thức R(x) = P(x)Q(x) (với k=m+n).
Khai báo dữ liệu: Dùng 3 mảng một chiều P, Q, R lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào danh sách liên kết thứ nhất P.
Đọc các phần tử của dãy thứ hai trong file DATA2 và lưu vào danh sách liên kết thứ hai Q.
Tính các phần tử của dãy thứ ba R và lưu vào danh sách liên kết thứ ba R, sau đó ghi vào file
DATA3.
Đề tài 405: Chia đa thức.
Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x) bậc n, chia đa thức P(x) cho (x-c) để có kết quả là đa
thức Q(x) bậc n lưu hệ số trong dãy số thứ hai Q gồm n hệ số với số dư r.
Khai báo dữ liệu: Dùng 2 mảng một chiều P, Q lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào mảng thứ nhất P.
Đọc dòng tiếp theo trong file DATA1 là số c.
Tính các phần tử của dãy thứ hai Q và lưu vào mảng Q, sau đó ghi vào file DATA2.
Tính số dư r và lưu vào dòng thứ hai của DATA2.
Đề tài 406: Chia đa thức.
Cho dãy số thứ nhất P là n+1 hệ số của đa thức P(x) bậc n, chia đa thức P(x) cho (x-c) để có kết quả là đa
thức Q(x) bậc n lưu hệ số trong dãy số thứ hai Q gồm n hệ số với số dư r.
Khai báo dữ liệu: Dùng 2 mảng một chiều P, Q lần lượt chứa các phần tử trong các dãy số.
Yêu cầu:
Đọc các phần tử của dãy thứ nhất trong file DATA1 và lưu vào danh sách liên kết thứ nhất P.
Đọc dòng tiếp theo trong file DATA1 là số c.
Tính các phần tử của dãy thứ hai Q và lưu vào danh sách liên kết Q, sau đó ghi vào file DATA2.
Tính số dư r và lưu vào dòng thứ hai của DATA2.
Đề tài 501: Xây dựng và tính toán tập hợp điểm của đường cong tham số Bézier
Mô tả: Đường cong Bézier là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết kế
CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả phương trình đường cong và các thông số khác
Output: Tập các điểm trên đường cong và đường cong Bézier được tạo từ các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 502: Xây dựng và tính toán tập hợp điểm của đường cong tham số B-spline đồng nhất
Mô tả: Đường cong Bézier là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết kế
CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả phương trình đường cong và các thông số khác
Output: Tập các điểm trên đường cong và đường cong B-spline được tạo từ các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 503: Xây dựng và tính toán tập hợp điểm của đường cong tham số B-spline không đồng nhất
Mô tả: Đường cong Bézier là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết kế
CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả phương trình đường cong và các thông số khác
Output: Tập các điểm trên đường cong và đường cong B-spline được tạo từ các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 504: Nội suy đường cong Bézier
Mô tả: Đường cong Bézier là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết kế
CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả tập điểm trên đường cong và các thông số khác
Output: Tập điểm dữ liệu biểu diễn đường cong đi qua các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 505: Nội suy đường cong Lagrange
Input: File dữ liệu mô tả tập điểm trên đường cong và các thông số khác
Output: Tập điểm dữ liệu biểu diễn đường cong đi qua các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 506: Xấp xỉ đường cong B-spline không đồng nhất
Mô tả: Đường cong B-spline là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết
kế CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả tập điểm trên đường cong và các thông số khác
Output: Tập điểm dữ liệu biểu diễn đường cong đi qua các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 507: Xấp xỉ đường cong B-spline đồng nhất
Mô tả: Đường cong B-spline là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết
kế CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả tập điểm trên đường cong và các thông số khác
Output: Tập điểm dữ liệu biểu diễn đường cong đi qua các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 508: Xấp xỉ đường cong B-spline không đồng nhất sử dụng phương pháp bình phương tối thiểu
Mô tả: Đường cong B-spline là một đường cong tham số thường được sử dụng trong đồ họa máy tính, thiết
kế CAD/CAM, mô hình hóa 3D và một số lĩnh vực khác.
Input: File dữ liệu mô tả tập điểm trên đường cong và các thông số khác
Output: Tập điểm dữ liệu biểu diễn đường cong đi qua các điểm này
Yêu cầu: Sử dụng các cấu trúc dữ liệu (mảng, danh sách, ...) và thuật toán để tính toán xử lý
Đề tài 601: Tính định thức bằng cách khai triển trên một dòng hoặc một cột, sử dụng định lý Laplace.

(Sử dụng Phép khử Gaussian


Sử dụng Quy tắc Tam giác
Sử dụng Quy tắc của Sarrus
Sử dụng Công thức Leibniz
Sử dụng Phương pháp Montante (thuật toán Bareiss)

Đề tài 602: Giải các hệ phương trình tuyến tính.

Yêu cầu: Xây dựng lớp ma trận dùng để giải các bài toán hệ phương trình tuyến tính
Ma trận được nhập vào từ bàn phím hoặc từ tập tin (cho phép chọn lựa)
Kết quả xuất ra màn hình hoặc tập tin (cho phép chọn lựa)
Giải bằng cách sử dụng ma trận nghịch đảo
Giải bằng định lí Cramer
Giải bằng phép khử Gauss
Giải quyết bằng cách loại bỏ Gauss Jordan
Đề tài 603: Tìm giá trị riêng và vector riêng của ma trận.
Yêu cầu: Xây dựng lớp ma trận dùng để giải các bài toán trong đại số tuyến tính
Ma trận được nhập vào từ bàn phím hoặc từ tập tin (cho phép chọn lựa)
Kết quả xuất ra màn hình hoặc tập tin (cho phép chọn lựa)
Đề tài 604: Tính gần đúng tích phân xác định sử dụng các công thức gần đúng sau để tính tích phân:
- Công thức hình thang.
- Công thức Parabol
- Công thức Newton _Cotet
- Công thức Simpson
Đề tài 605: tìm nghiệm gần đúng của phương trình (sử dụng phương pháp chia đôi, phương pháp dây cung,
phương pháp tiếp tuyến, phương pháp lặp đơn)

You might also like