1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Đề cương môn matlab và đáp án

18 3K 7

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Bài tập 1: Nhập vào 3 số? Kiểm tra xem có tạo thành tam giác hay không. Nếu có tính chu vi và diện tích tam giác đó clear all a=input (nhap vao do dai canh a : ); b=input (nhap vao do dai canh b : ); c=input (nhap vao do dai canh c : ); if (a>0)(b>0)(c>0)(a+b>c)(c+b>c)(a+c>b) cv=a+b+c; disp (chu vi tam giac la : ); cv p=cv2; disp (dien tich tam giac la : ); dt=sqrt(p(pa)(pb)(pc)) else disp (3 so khong tao thanh tam giac ); end; ======================================== Bài tập 2 : dùng hàm mfile để tính tổng bình phương của 2 số (x2+2) clear all function z=tbp(x,y) z=xx+yy; t1=input (nhap vao gia tri t1 : ); t2=input (nhap vao gia tri t2 : ); kq= tbp(t1,t2); disp (tong binh phuong cua 2 so la ); kq ======================================== Bài tập 3 :viết bằng hàm mfile :tính tổng , hiệu và tích của 2 số nhập vào từ bàn phím clear all function f=tong(x,y); f=x+y; a= input (nhap vao so a : ); b= input (nhap vao so b : ); disp (tong cua 2 so la ); kq= tong(a,b) tính hiệu và tích tương tự. ======================================== Bài tập 4: Viết chương trình nhập vào 2 số a, b tìm giá trị lớn nhất clear all a=input (nhap vao gia tri a : ); b=input (nhap vao gia tri b : ); max=a; if max0)&(b>0)&(c>0)&(a+b>c)&(c+b>c)&(a+c>b) cv=a+b+c; disp ('chu vi tam giac la : '); cv p=cv/2; disp ('dien tich tam giac la : '); dt=sqrt(p*(p-a)*(p-b)*(p-c)) else disp ('3 so khong tao tam giac '); end; ======================================== Bài tập : dùng hàm m-file để tính tổng bình phương số (x^2+^2) clear all function z=tbp(x,y) z=x*x+y*y; t1=input ('nhap vao gia tri t1 : '); t2=input ('nhap vao gia tri t2 : '); kq= tbp(t1,t2); disp ('tong binh phuong cua so la '); kq ======================================== Bài tập :viết hàm m-file :tính tổng , hiệu tích số nhập vào từ bàn phím clear all function f=tong(x,y); f=x+y; a= input ('nhap vao so a : '); b= input ('nhap vao so b : '); disp ('tong cua so la '); kq= tong(a,b) tính hiệu tích tương tự ======================================== Bài tập 4: Viết chương trình nhập vào số a, b tìm giá trị lớn clear all a=input ('nhap vao gia tri a : '); b=input ('nhap vao gia tri b : '); max=a; if max b a = a - b; else b = b - a; y = a; end; end; function x = BCNN(a, b) x = (a * b) / UCLN(a, b); %Script.file clear all a = input(‘Nhap a’); b = input(‘Nhap b’); kq = UCLN(a, b); disp(‘UCLN la’); kq kq1 = BCNN(a, b); disp(‘BCNN’); kq1 ======================================== %Xây dựng hàm kiểm tra số có phải số nguyên tố, hoàn hảo phương hay không function x = snt(n) d = 0; for i = : n if rem(n, i) = =0 d = d + 1; end; end; if d = 2; x = 1; else x = 0; end; %script.file clear all n = input(‘Nhap n’); if snt(n) = = 1; disp(‘La so nguyen to’); else disp(‘Khong la so nguyen to’); end; function y = hoanhao(n) tong = 0; for i = : n if rem(n, j) = = tong = tong + i; end; end; if tong = = n y = 1; else y = 0; end; %script.file clear all n = input(‘Nhap n’); if hoanhao(n) = = disp(‘La so hoan hao’); else disp(‘Khong la so hoan hao’); end; function z = cp(a) if sqrt(a) * sqrt(a) = a z = 1; else z = 0; end; %script.file clear all n = input(‘Nhap n’); if cp(n) = = disp(‘La so chinh phuong’); else disp(‘Khong la so chinh phuong’); end; ======================================== %Xây dựng hàm tính UCLN BCNN số a, b sau nhập vào matrận cỡ n x m In hình UCLN, BCNN ma trận function y = UCLN(a, b) while a ~= b if a > b a = a - b; else b = b - a; y = a; end; end; function x = BCNN(a, b) x = (a * b) / UCLN(a, b); %Script.file clear all n=input('nhap vao so dong cho ma tran : '); m=input('nhap vao so cot cho ma tran : '); for i=1:n for j=1:m a(i,j)=input ('a(i, j) = '); end; end; UCLN1 = UCLN(a(1, 1), a(1, 2)); BCNN1 = BCNN(a(1, 1), a(1, 2)); for i = : n for j = : m UCLN1 = UCLN(UCLN1, a(i, j)); BCNN1 = BCNN(BCNN1, a(i, j)); end; end; disp(‘UCLN cua ma tran la’); UCLN1 disp(‘BCNN cua ma tran la’); BCNN1 ===================================== MẢNG CHIỀU: %Nhập vào dãy gồm n phần tử clear all n=input('nhap vao so phan tu cua day : '); for i=1:n a(i)=input ('a(i) ='); end; disp ('day vua nhap la : '); a % In hình giá trị lớn dãy số max=a(1); for i=1:n if maxa(j) tg=a(i); a(i)=a(j); a(j)=tg; end; end; end; i=1; while a(i)==a(i+1) i=i+1; end; disp(‘Gia tri lon thu day la’) a(i+1) % In hình giá trị nhỏ dãy số min=a(1); for i=1:n if min>a(i) min=a(i); end; end; disp ('gia tri nho nhat cua day la') %Tính trung bình cộng số dương dãy s=0;dem=0; for i=1:n if a(i)>0 s=s+a(i); dem=dem+1; end; end; disp ('trung binh cong so duong day la : ') tbc=s/dem %Nhập vào số x bất kỳ, kiểm tra xem x có xuất dãy hay không clear all x=input ('nhap vao so x: '); d=0; for i=1:n if x==a(i) d=d+1; end; end; if d==0 disp ('so vua nhap khong xuat hien day'); else disp ('so vua nhap co day'); end; %In hình tất số nguyên tố dãy disp ('so nguyen to day: ') d1=0; for i=1:n d=0; for j=1:a(i) if rem(a(i),j)==0 d=d+1; end; end; if d==2 d1=d1+1; a(i) end; end; if d1==0 disp ('trong day khong co so nguyen to') end; %In hình tất số hoàn hảo dãy disp ('so hoan hao day : ') d1=0; for i=1:n d=0; for j=1:a(i) if rem(a(i),j)==0 d=d+j; end; end; if a(i)==d d1=d1+1; a(i) end; end; end; if d1==0 disp ('trong day khong co so hoan hao') end; %Sắp xếp dãy theo chiều tăng dần for i=1:n-1 for j=i+1:n if a(i)>a(j) tg=a(i); a(i)=a(j); a(j)=tg; end; end; end; disp ('day sau sap xep tang la : ' ) a ======================================== MẢNG CHIỀU %Nhập vào ma trận cỡ n x m clear all n=input('nhap vao so dong cho ma tran : '); m=input('nhap vao so cot cho ma tran : '); for i=1:n for j=1:m a(i,j)=input (‘a(i, j) = '); end; end; disp ('ma tran vua nhap la : '); a %In hình giá trị lớn ma trận max=a(1,1); for i=1:n for j=1:m if max m(i, j) max2 = m(i, j); end; end; for j = : m if (max2 < m(i, j) & m(i, j) < max) max2 = m(i, j); end; end; disp(max); end; %Tính trung bình cộng số chẵn chia hết cho s=0;d=0; for i=1:n for j=1:m if rem(a(i,j),6)==0; s=s+a(i,j); d=d+1; end; end; end; if d==0 disp ('trong ma tran khong co so chan va chia het cho '); else disp ('trung binh cong cac so chan va chia het cho la : '); tbc=s/d end; %In hình tất số nguyên tố ma trận disp ('so nguyen to ma tran: ') d1=0; for i=1:n for j=1:m d=0; for k=1:a(i,j) if rem (a(i,j),k)==0 d=d+1; end; end; if d==2 d1=d1+1; a(i,j) end; end; end; if d1==0 disp ('trong ma tran khong co so nguyen to') end; %Tính tổng số nguyên tố ma trận s=0; for i=1:n for j=1:m d=0; for k=1:a(i,j) if rem (a(i,j),k)==0 d=d+1; end; end; if d==2 s=s+a(i,j); end; end; end; disp ('tong cac so nguyen to ma tran la: '); s %In hình số hoàn hảo ma trận disp ('so hoan hao ma tran : ') d1=0; for i=1:n for j=1:m s=0; for k=1:a(i,j)-1 if rem(a(i,j),k)==0 s=s+k; end; end; if a(i,j)==s d1=d1+1; a(i,j) end; end; end; if d1==0 disp ('trong ma tran khong co so hoan hao') end; %Tính tổng số hoàn hảo ma trận d=0; for i=1:n for j=1:m s=0; for k=1:a(i,j)-1 if rem(a(i,j),k)==0; s=s+k; end; end; if s==a(i,j) d=d+a(i,j); end; end; end; disp ('tong ca so hoan hao ma tran la : ') d %Tính tổng số phương ma trận s = 0; for i = : n for j = : m for i = : a(i, j) if i * i = = a(i, j) s = s + a(i, j); end; end; end; disp(‘Tong cac so chinh phuong la’); s %Sắp xếp ma trận theo chiều tăng dần hàng for i = : n for j = : m - for k = j + : m if a(i, j) > a(i, k) tg = a(i, j); a(i, j) = a(i, k); a(i, k) = tg; end; end; end; disp(‘Ma tran tang theo hang la’); a %Sắp xếp ma trận theo chiều tăng dần cột for j = : m for i = : n - for k = i + : n if a(i, j) > a(k, j) tg = a(i, j); a(i, j) = a(k, j); a(k, j) = tg; end; end; end; disp(‘Ma tran tang theo cot la’); a ===================================== ĐẠI SỐ GIẢI TÍCH %Nhập vào vector biểu diễn hệ số hàm số bất kỳ, in hình đạo hàm hàm số n = input(‘Nhap dai vector’); for i = : n a(i) = input(‘Nhap a(i) =’); end; for i = : n - b(i) = a(i) * (n - 1); end; disp(‘Dao ham cua ham so la’); b ===================================== %Nhập vào vector biểu diễn hệ số đa thức bất kỳ, in hình tổng đa thức n = input(‘Nhap vector 1:’); for i = 1: n a(i) = input(‘a(i)=’); end; m = input(‘Nhap vector 2:’); for i = : m b(i) = input(‘b(i)=’); end; if n > m for i = : n - m c(i) = a(i); end; for i = n - m + : n c(i) = a(i) + b(i); end; else if m > n for i = : m - n c(i) = b(i); end; for i = m - n + : m c(i) = a(i) + b(i); end; else for i = : n c(i) = a(i) + b(i); end; end; disp(‘Tong da thuc la’); c ===================================== %Hàm tính tổng đa thức function y = polyadd(a, b) n = length(a); m = length(b); if n = = m c = a + b; else if n > m for i = : n - m c(i) = a(i); end; for i = n - m + : n c(i) = a(i) + b(i); end; else for i = : m - n c(i) = b(i); end; for i = m - n + : m c(i) = a(i) + b(i); end; end; y = c; %script.file a = input(‘Nhap vector a’); b = input(‘Nhap vector b’); kq = polyadd(a, b); disp(‘Tong vector la’); kq ===================================== %Nhập vào vector hệ số đa thức giá trị x bất kỳ, tính giá trị đa thức x clear all n=input('nhap vao so gia tri cua vec to: '); for i=1:n a(i)=input ('nhap vao phan tu vec to: '); end; disp ('vec to vua nhap la: ') a x=input('nhap vao gia tri x bat ky : '); disp ('gia tri cua da thuc tai x la : '); polyval (a,x) ===================================== %Xây dựng hàm giải phương trình: ax2 + bx + c = (a ≠ 0) function [x1, x2] = ptb2(a, b, c) delta = (a * a) - (4 * a * c); if delta < x1 = x = realmin; else if delta = = x1 = x = - b / (2 * a); else x1 = (- b + sqrt(delta)) / (2 * a); x2 = (- b - sqrt(delta)) / (2 * a); end; %script.file a = input(‘Nhap a’); b = input(‘ Nhap b’); c = input(‘Nhap c’); kq = ptb2(a, b, c); if x1 = x2 = realmin disp (‘Phuong trinh vo nghiem’); else disp(‘Nghiem la’); kq end; ===================================== %Tính tích phân: I = int(f, a, b); f = * x2 * cos(x) function I = C5(a, b, n) h = (b - a) / n; I = 0; for i = : n x = a + h * i; c = 2; if ((i = = 0) | (i = = 1)) c = 1; end; I = I * c *(2 * x^2 * cos(x)); end; I = I * h / 2; ===================================== function s = simpson(f, a, b, n) if mod (n, 2) ~= n = n + 1; end; h = (b - a) / (2 * n); s1 = 0; s2 = 0; for k = : n x = a + h *(2* k - 1); s1 = s1 + f(x); end; for k = : (n - 1) x = a + h * * k; s2 = s2 + f(x); end; s = h * (f(a) + f(b) + * s1 + 2* s2) / 3; clc clear all, clc f = inline(‘exp(x) * sin(x)’, ‘x’); a = 0; b = 1; n = 6; s = simpson(f, a, b, n); ... gia tri n '); n=input(''); end; ======================================== % Nhập vào tháng năm bất kỳ, in số ngày tháng clear all thang = input(‘Nhap thang’); nam = input(‘Nhap nam’); switch thang... disp(‘so thang la’); ======================================== % Nhập vào số thực phép toán (+, -, *, /) sau cho biết kết phép toán lên số clear all a = input(‘Nhap a =’); b = input(‘Nhap b =’);... end; disp(‘Ma tran tang theo cot la’); a ===================================== ĐẠI SỐ VÀ GIẢI TÍCH %Nhập vào vector biểu diễn hệ số hàm số bất kỳ, in hình đạo hàm hàm số n = input(‘Nhap dai vector’);

Ngày đăng: 25/09/2017, 14:29

Xem thêm: Đề cương môn matlab và đáp án

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w