Bài thực hành môn Phương pháp tính
BÀI THỰC HÀNH PHƯƠNG PHÁP TÍNH
Bài số 1.
• Viết chương trình tính giá trị đa thức p(x) bậc n tổng quát theo sơ đồ Hoocner.
• Thuật toán:
- Nhập : bậc đa thức n, giá trị cần tính c, các hệ số ai ()
- Xử lý: Gán p = a0
Lặp i = 1 n : p = p * c + ai
- Xuất kết quả: p
• Viết chương trình thực hiện:
• Khai báo (định nghĩa) hàm tính giá trị đa thức p(x) bậc n tổng quát theo sơ đồ Hoocner
• Nhập vào đa thức p(x) bậc n và 2 giá trị thực y, z. Tính:
• S1 = p(y) + p(z)
• S2 = p(1) + p(2) + … + p(n)
• Nhập vào 2 đa thức pn(x) bậc n, pm(y) bậc m và giá trị c. Tính pn(c) + pm(c)
• Cho đa thức p(x) bậc n, viết chương trình xác định các hệ số của đa thức p(y+c) theo sơ đồ
Hoocner tổng quát.
• Thuật toán:
- Nhập : n, c, ai (i = )
- Lặp k = n → 1
Lặp i = 1 → k : ai = ai-1 * c + ai
- Xuất : ai (i = )
• Viết chương trình tìm nghiệm gần đúng cho phương trình có dạng tổng quát:
f(x) = a0xn + a1xn-1 + … + an-1x + an = 0 bằng phương pháp chia đôi
• Thuật toán:
- Khai báo f(x) là hàm tính giá trị đa thức bậc n
- Nhập khoảng nghiệm a, b sao cho f(a)<0 và f(b)>0
- Lặp
c = (a+b)/2
nếu f(c) > 0 b = c
ngược lại a = c
trong khi (f(c)> ) /* a - b > và f(c) != 0 */
- Xuất nghiệm: c
Bài số 2.
• Viết chương trình tìm nghiệm gần đúng cho phương trình có dạng tổng quát:
f(x) = a0xn + a1xn-1 + … + an-1x + an = 0 bằng phương pháp dây cung
• Thuật toán:
- Khai báo hàm f(x) là hàm tính giá trị đa thức bậc n
- Nhập khoảng nghiệm a, b
- Tính x = a – (b-a)f(a) / (f(b)-f(a))
- Nếu f(x)*f(a) <0
Lặp b = x
x = a – (b-a)f(a) / (f(b)-f(a))
trong khi x - b>
Ngược lại
Lặp a = x
x = a – (b-a)f(a) / (f(b)-f(a))
trong khi x - a>
- Xuất nghiệm: x
• Viết chương trình tìm nghiệm cho phương trình ex - 10x + 7 = 0 (có thể thay phương trình khác)
bằng phương pháp tiếp tuyến.
• Thuật toán:
- Khai báo hàm f(x), hàm fdh(x) tính f’(x)
- Nhập xấp xỉ nghiệm ban đầu x ϵ khoảng nghiệm a,b
- Lặp y= x
x = y – f(y)/fdh(y)
trong khi x - y>
- Xuất nghiệm: x (hoặc y)
• Viết chương trình giải hệ đại số tuyến tính bằng phương pháp Gauss
• Thuật toán:
- Nhập n, aij () (nhập trực tiếp hoặc từ file)
- Biến đổi A A’ (ma trận tam giác trên)
Lặp i = 1 n -1
Tìm j sao cho aji # 0 , j = i+1n
• Nếu aii = 0
Nếu j<=n thì hoán đổi dòng i và dòng j cho nhau
ngược lại thì kết thúc (vì dữ liệu ko hợp lệ)
• Lặp j = i + 1 n
m = -aji /aii
Lặp k = i n +1 ajk = ajk + aik * m
- Tìm nghiệm
( i =n 1)
Lặp i = n 1
s = 0
lặp j = i + 1 n s = s + aij * xj
xi = (ain+1 - s)/aii
- Xuất vectơ nghiệm: xi (i=1n)
• Viết chương trình giải hệ đại số tuyến tính bằng phương pháp lặp Gauss Siedel
• Thuật toán:
- Nhập n, aij (i=1 n, j=1 n+1) (nhập trực tiếp hoặc từ file)
- Nhập xấp xỉ nghiệm ban đầu: xi (i =1n)
- Lặp
t = 0 /* cho thoat */
lap i = 1 n
{ s = 0
lap j = 1 n do
if (j i) s = s + aij * xj
yi = (ain + 1 - s ) / aii
if ( | yi – xi | > = ) t =1 /* cho lap */
xi = yi }
trong khi (t)
- Xuất vectơ nghiệm: xi hoặc yi (i =1n)
Bài số 3.
• Cho hàm f(x) thoả mãn bảng giá trị:
x
x0 x1 x2 … … xn
y0 y1 y2 … … yn
f(x)
Viết chương trình tính giá trị hàm f(x) tại điểm x=t cho trước (t ϵ [x0, xn], dùng bảng nội suy
Ayken dạng 1)
• Thuật toán:
- Nhập: n, xi, yi (i = 0n), t
- w = 1; s = 0;
- Lặp i = 0 n
{ w = w*(t - xi)
d = t - xi
Lặp j = 0 n
Nếu j != i thì d = d * (xi - xj)
s = s + yi/d }
- Xuất kết qủa: w*s
• Viết chương trình tính gần đúng tích gần đúng phân xác định của hàm f(x) trên đoạn [a, b] trong
3 trường hợp:
• Áp dụng công thức Hình thang
• Thuật toán:
• Khai báo hàm f(x)
• Nhập a, b, n (số đoạn cần chia)
• Tính h = (b-a)/n, J = (f(a) + f(b))/2
• Lặp i = 1 n-1 : J+ = f(a+i*h)
• Xuất kết quả : h*J
• Áp dụng công thức Parabol
• Thuật toán:
• Khai báo hàm f(x)
• Nhập a, b, n (số đoạn cần chia)
• Tính h = (b-a)/2n, J = f(a) + f(b)
• Lặp i = 1 2n-1
if (i%2) J+ = 4*f(a+i*h)
else J+ = 2*f(a+i*h)
• Xuất kết quả : h*J /3
• Áp dụng công thức Newton-cotet
i
• Thuật toán: Dùng file heso.txt lưu trữ các giá trị pn
• Khai báo hàm f(x)
• Nhập a, b, n (số đoạn cần chia)
• Quét dòng n của file heso.txt và gán cho pi (i=0,1, …n)
• J = 0
• Lặp i = 0 n : J = J + yi*pi
• Xuất kết quả : (b-a)*J
• Viết chương trình (có sử dụng hàm) tính gần đúng tích phân xác định trên đoạn [a, b] của một số
hàm cụ thể (trong đó có hàm đa thức bậc n) theo 3 cách (tương ứng với 3 công thức trên). So
sánh kết quả, nhận xét.
Bạn đang xem tài liệu "Bài thực hành môn Phương pháp 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_thuc_hanh_mon_phuong_phap_tinh.doc

