Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
121,8 KB
Nội dung
TRƯỜNG ĐẠI HỌC XÂY DỰNG BAN KỸ SƯ CHẤT LƯỢNG CAO BÀI TẬP MƠN CƠNG CỤ MƠ HÌNH HĨA BẰNG SỐ GIẢNG VIÊN: DƯƠNG THANH QUỲNH Họ Tên: Trần Văn Chung Lớp: 63CLC1 MSSV:1506763 LÀM QUEN VỚI MATLAB Bài 1.1: Tính tay biểu thức sau thử lại matlab: BÀI LÀM function Bai11 disp('===================================================================') disp(' LAM QUEN VOI MATLAB ') disp('===================================================================') disp('Bai 1.1') disp('Phan a') 2*2/3 disp('Phan b') 6-2/5+7^2-1 disp('Phan c') 10/2\5-3+2*4 disp('Phan d') 3^2/4 disp('Phan e') 3^2^2 disp('Phan f') 2+round(6/9+3*2)/2-3 disp('Phan g') 2+floor(6/9+3*2)/2-3 disp('Phan h') 2+ceil(6/9+3*2)/2-3 disp('Phan k') fix(4/9)+fix(3*(5/6)) disp('ket thuc bai 1.1') ĐÁP ÁN ============================================================== LAM QUEN VOI MATLAB ============================================================== Bai 1.1 Phan a ans = 1.3333 Phan b ans = 53.6000 Phan c ans = Phan d ans = 2.2500 Phan e ans = 81 Phan f ans = 2.5000 Phan g ans = Phan h ans = 2.5000 Phan k ans = ket thuc bai 1.1 Bài 1.2: Dự đốn kết xuất hình: BÀI LÀM function bai12 disp('Bai 1.2') disp('Du doan ket qua xuat man hinh') disp ('Phan a') 2;4 disp ('Phan b') 2/4 disp ('Phan c') 2\4 disp ('Phan d') 2,4 disp ('Phan e') 2:4 disp('De dang doan duoc ket qua nhu tren da biet cac ki hieu cua dong lenh mang y nghia gi') disp('Ket thuc bai 1.2') end ĐÁP ÁN Bai 1.2 Du doan ket qua xuat man hinh Phan a ans = Phan b ans = 0.5000 Phan c ans = Phan d ans = ans = Phan e ans = De dang doan duoc ket qua nhu tren da biet cac ki hieu cua dong lenh mang y nghia gi Ket thuc bai 1.2 Bài 1.3: Cho x = 2, y = Dự đoán kết tiếp theo: BÀI LÀM function bai13 disp('Bai 1.3') disp('Cho x = 2, y = Du doan lan luot cac ket qua tiep theo:') x=2; y=3; z = x y = y +z x = y + x - z x + y - z disp('De dang doan duoc cac ket qua nhu tren') disp('Ket thuc bai 1.3') end ĐÁP ÁN Bai 1.3 Cho x = 2, y = Du doan lan luot cac ket qua tiep theo: z = y = x = ans = De dang doan duoc cac ket qua nhu tren Ket thuc bai 1.3 VECTOR Bài 2.2: Cho x= [3 6] dự đốn kết dịng lệnh sau thử lại matlab: BÀI LÀM function Bai22 disp('===================================================================') disp(' VECTOR ') disp('===================================================================') disp('Bai2.2') disp('cho x=[ 6]') x=[ 6] disp('phan a') x(3) disp('phan b') x(1:7) disp('phan c') x(1:end) disp('phan d') x(1:end-1) disp('phan e') x(6:-2:1) disp('phan f') x([1 1]) disp('phan g') sum(x) disp('Ket thuc bai 2.2') ĐÁP ÁN ============================================================== VECTOR ============================================================== Bai2.2 cho x=[ 6] x = 9 phan a ans = phan b ans = phan c ans = phan d ans = 7 3 phan e ans = phan f ans = phan g ans = 33 Ket thuc bai 2.2 Bài 2.3: Cho x = [2 6] a Cộng thêm 16 vào tất phần tử b Cộng thêm vào phần tử vị trí lẻ c Lấy bậc tất phần tử d Bình phương tất phần tử BÀI LÀM function bai23 disp('Bai 2.3') disp(' Cho x = [2 6]') x=[2 6] disp('a.Cong them 16 vao tat ca cac phan tu') x+16 disp('b.Cong them vao cac phan tu o vi tri le') x1=x([1,3])+3 disp('c.Lay can bac tat ca cac phan tu') sqrt(x) disp('d.Binh phuong tat ca cac phan tu') x.^2 disp('Ket thuc bai 2.3') end ĐÁP ÁN Bai 2.3 Cho x = [2 6] x = a.Cong them 16 vao tat ca cac phan tu ans = 18 21 17 22 b.Cong them vao cac phan tu o vi tri le x1 = c.Lay can bac tat ca cac phan tu ans = 1.4142 2.2361 1.0000 2.4495 d.Binh phuong tat ca cac phan tu ans = 25 36 Ket thuc bai 2.3 Bài 2.5: Tạo vector x sau: a [2, 4, 6, 8, … 2n] b [10, 8, 6, 4, 2, 0, -2, -4 .-2n] c [1, 1/2, 1/3, 1/4, 1/5, … 1/n] d [0, 1/2 2/3, 3/4, 4/5, … (n-1)/n] Lưu ý: nhập vào giá trị n BÀI LÀM function bai25 disp('Bai 2.5') disp('Tao cac vector x sau') disp('Luu y: nhap vao gia tri n') disp('Vi du n=10') disp('a [2, 4, 6, 8, … 2n]') n=input('Nhap n :') x=2:2:2*n disp('b [10, 8, 6, 4, 2, 0, -2, -4 .-2n]') n=input('Nhap n :') x=10:-2:-2*n disp('c [1, 1/2, 1/3, 1/4, 1/5, … 1/n]') n=input('Nhap n :') format rat disp('d [0, 1/2 2/3, 3/4, 4/5, … (n-1)/n]') n=input('Nhap n :') format rat x=((1:n)-1)./(1:n) disp('Ket thuc bai 2.5') end ĐÁP ÁN Bai 2.5 Tao cac vector x sau Luu y: nhap vao gia tri n Vi du n=10 a [2, 4, 6, 8, … 2n] Nhap n :10 n = 10 x = 10 12 14 16 18 20 -4 -6 -8 b [10, 8, 6, 4, 2, 0, -2, -4 .-2n] Nhap n :10 n = 10 x = 10 -10 -12 -14 -16 -18 -2 -20 c [1, 1/2, 1/3, 1/4, 1/5, … 1/n] Nhap n :10 n = 10 d [0, 1/2 2/3, 3/4, 4/5, … (n-1)/n] Nhap n :10 n = 10 x = 4/5 8/9 1/2 5/6 9/10 2/3 6/7 3/4 7/8 Ket thuc bai 2.5 MA TRẬN Bài 3.3: Cho ma trận A = [2 ; ; 9], viết lệnh Matlab để a Gán cho vector x dòng thứ A b Gán cho ma trận y hai dòng lại (cuối) A c Tính tổng theo dịng ma trận A d Tính tổng theo cột ma trận A e Tìm giá trị lớn nhỏ ma trận f Tính tổng phần tử A BÀI LÀM function bai33 disp('===================================================================') disp(' MA TRAN ') disp('===================================================================') disp('Bai 3.3') disp(' Cho ma tran A = [2 ; ; 9], viet lenh Matlab de') A = [2 ; ; 9] disp('a Gan cho vector x la dong thu nhat cua A') x=A(1,1:3) disp('b Gan cho ma tran y la hai dong lai (cuoi) cua A') y=A(2:3,:) disp('c Tinh tong theo dong ma tran A') sum(A) disp('d Tinh tong theo cot ma tran A') sum(A') disp('e Tm gia tri lon nhat va nho nhat cua ma tran') max(max(A)) min(min(A)) disp('f Tinh tong cac phan tu cua A') sum(sum(A)) disp('Ket thuc bai 3.3') end ĐÁP ÁN ============================================================== MA TRAN ============================================================== Bai 3.3 Cho ma tran A = [2 ; ; 9], viet lenh Matlab de A = a Gan cho vector x la dong thu nhat cua A x = b Gan cho ma tran y la hai dong lai (cuoi) cua A y = c Tinh tong theo dong ma tran A ans = 11 16 12 d Tinh tong theo cot ma tran A ans = 15 17 e Tm gia tri lon nhat va nho nhat cua ma tran ans = ans = f Tinh tong cac phan tu cua A ans = 39 Ket thuc bai 3.3 Bài 3.5: Cho vectơ x=[2 6], y=[5 0] Hãy tạo ma trận a 4x6 toàn số 0, b 4x5 toàn số 1, c ma trận đơn vị 5x5 b B có tính chất: dịng có giá trị vectơ x, dịng có giá trị vectơ y c C có tính chất: cột có giá trị vectơ x, cột có giá trị vectơ y BÀI LÀM function bai35 disp('Bai 3.5') disp('Cho vecto x=[2 6], y=[5 0] Hay tao ma tran') x=[2 6] y=[5 0] disp('a 4x6 toan la so 0, b 4x5 toan la so 1, c ma tran don vi 5x5') zeros(4,6) ones(4,5) eye(5,5) disp('b B co tinh chat: dong va co gia tri la vecto x, dong va co gia tri la vecto y') B=[x;y;y;x] disp('c C co tinh chat: cot va co gia tri la vecto x, cot va co gia tri la vecto y') C=[x' y' x' y'] disp('Ket thuc bai 3.5') end ĐÁP ÁN Bai 3.5 end a T = 50 h = ? Nhap gia tri cua T: T=50 T = 50 h = An tiep phim bat ky de lam phan b b T = 15 h = ? Nhap gia tri cua T: T=15 T = 15 h = 31 An tiep phim bat ky de lam phan b c T = h = ? Nhap gia tri cua T: T=0 T = h = Ket thuc bai 6.3 VÒNG LẶP Bài 7.6: Cho x = [4 6] y = [6 7], tính mảng/vector/ma trận sau a aij = xiyj b bij = xi/yj c ci = xiyi, tính tổng phần tử c d dij = xi/(2 + xi + yj) BÀI LÀM function bai76 disp(‘==============================================================’) disp(‘ VONG LAP ’) disp(‘==============================================================’) disp(‘Bai 7.6’) disp(‘Cho x = [4 6] y = [6 7], tinh cac mang/vector/ma tran sau:’) x=[4 6] y=[6 7] disp(‘a aij = xiyj’) for i=1:3 for j=1:3 a(I,j)=x(i)*y(j); end end a disp(‘b bij = xi/yj’) for i=1:3 for j=1:3 b(I,j)=x(i)/y(j); end end b disp(‘c ci = xiyi, tinh tong cac phan tu cua c.’) for i=1:3 c(i)=x(i)*y(i); end sumI disp(‘d dij = xi/(2 + xi + yj)’) for i=1:3 for j=1:3 d(I,j)=x(i)/(2+x(i)+y(j)); end end d disp(‘Ket thuc bai 7.6’) end ĐÁP ÁN ============================================================== VONG LAP ============================================================== Bai 7.6 Cho x = [4 6] y = [6 7], tinh cac mang/vector/ma tran sau: x = 6 y = a aij = xiyj a = 24 36 12 28 42 b bij = xi/yj b = 0.6667 0.1667 1.0000 2.0000 0.5000 3.0000 0.5714 0.1429 0.8571 c ci = xiyi, tinh tong cac phan tu cua c ans = 68 d dij = xi/(2 + xi + yj) d = 0.3333 0.1111 0.4286 0.5000 0.2000 0.6000 0.3077 0.1000 0.4000 Ket thuc bai 7.6 Bài 7.8: Viết script để tính vector số ngẫu nhiên (sử dụng lệnh rand): a Có phần tử đứng trước phần tử có giá trị nằm khoảng 0.8 đến 0.85 b Có phần tử khoảng [0.01, 0.5] đứng trước giá trị trung bình vector BÀI LÀM function bai78 disp(‘Bai 7.8’) disp(‘Viet script de tinh mot vector cac so ngau nhien (su dung lenh rand):’) disp(‘a Co bao nhieu phan tu dung truoc mot phan tu co gia tri nam khoang 0.8 den 0.85.’) x=rand(1,10) n=1; while (x(n)0.85) n=n+1; if n>10 break end end if n>10 disp(‘Vo nghiem’) else ketqua=n-1 end disp(‘b Co bao nhieu phan tu khoang [0.01;0.5] dung truoc gia tri trung binh cua vector do.’) x=rand(1,10) n=1; x TrungBinh=mean(x) while x(n)=0.1)&(x(1:n-1)