Báo cáo thực hành tin học ứng dụng
Mẫu BỘ MÔN ĐIỆN TỬ – VIỄN THÔNG Lớp ĐTV 50 - ĐH -o0o- BÁO CÁO THỰC HÀNH TIN HỌC ỨNG DỤNG Họ tên sinh viên: ĐỖ TRỌNG BÁCH Giáo viên hướng dẫn: NGUYỄN MẠNH CƯỜNG Hải phòng, tháng 11 năm 2011 NỘI DUNG Bài 1: Tính tay biểu thức sau, thử lại Matlab: a / * b – / + ^ – c 10 / \ – + * d ^ / e ^ ^ f + round(6 / + * 2) / – Trả lời: Thực phép tính matlab: a / * =3 b – / + ^ – =53.6000 c 10 / \ – + * =6 d ^ / =2.2500 e ^ ^ =81 f + round(6 / + * 2) / – =2.500 Bài 2: Dùng Matlab tính biểu thức sau: 3+ 5+ b 2π 2 1− 3+ c 1+ 3− d 1000(1 + 0.15 /12)60 a Trả lời: a (3+4)/(5+sqrt(2))=1.0943 b 2*pi*pi=19.7392 c.(1-(2/(3+2)))/(1+(2/(3-2)))=0.2 d.1000*(1+0.15/12)^60=2.1072e+0.03 Bài 3:Giải phương trình bậc hai sau cách thực bước, sau kiểm tra với hàm Matlab? x − x + =0; Trả lời: >> a=input('nhap a=') b=input('nhap b=') c=input('nhap c=') if a==0 & b==0 disp('pt co vo so no') elseif a==0 & b~=0 disp('pt co no la') x=-c/b elseif a~=0 d=b*b-4*a*c; if d0 x1=(-b+sqrt(d))/(2*a) x2=(-b-sqrt(d))/(2*a) end end( ấn enter) nhap a=1 a= nhap b=-3 b= -3 nhap c=2 c= x1 = x2 = Bài 4: Tạo số ngẫu nhiên có giá trị từ đến 10? Trả lời: x=randint(1,1,[0 10]) ( ấn enter) x =2 Bài 5: Tạo số ngẫu nhiên có giá trị từ đến 100? Trả lời: x=randint(1,1,[0 100]) ( ấn enter) x= 49 Bài 6: Tạo vector chứa số nguyên từ 31 đến 75? Trả lời: a=[31:1:75] ( ấn enter) a= Columns through 16 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 Columns 17 through 32 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 Columns 33 through 45 63 64 65 66 67 68 69 70 71 72 73 74 75 Bài 7: Cho x = [3 6], dự đoán kết dòng lệnh sau thử lại Matlab: a x(3) b x(1:7) c x(1:end) d x(1:end-1) e x(6:-2:1) f x([1 1]) g sum(x) Trả lời: >> x=[3 6] ( ấn enter) x= >> x(3) ( ấn enter) ans = >> x(1:7) ( ấn enter) ans = 6 >> x(1:end) ( ấn enter) ans = >> x(1:end-1) ( ấn enter) ans = >> x(6:-2:1) ( ấn enter) ans = >> x([1 1]) ( ấn enter) ans = 3 >> sum(x) ( ấn enter) ans = 33 Bài 8: 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ử Trả lời: >> x=[2 6] ( ấn enter) x= >> x+16( ấn enter) ans = 18 21 17 22 >> x([1 3])+3( ấn enter) ans = >> sqrt(x) ( ấn enter) ans = 1.4142 2.2361 1.0000 2.4495 >> x.^2( ấn enter) ans = 25 36 Bài 9: Cho x, y vector cột x = [3 8]’, y = [4 5]’ a Lấy tổng phần tử x cộng thêm vào phần tử y b Luỹ thừa phần tử x với số mũ tương ứng phần tử y c Chia phần tử y với phần tử tương ứng x d Nhân phần tử x với phần tử tương ứng y, đặt vector z e Tính tổng phần tử z, gán cho w f Tính x.* y – w g.Tích vô hướng x y Lưu ý: x’ ma trận chuyển vị x Trả lời: >> x=[3;2;6;8] ( ấn enter) x= >> y=[4;1;3;5] ( ấn enter) y= >> sum(x)+y( ấn enter) ans = 23 20 22 24 >> x.^y( ấn enter) ans = 81 216 32768 >> y./x( ấn enter) ans = 1.3333 0.5000 0.5000 0.6250 >> z=x.*y z= 12 18 40 >> w=sum(z) w= 72 >> x.*y-w ans = -60 -70 -54 -32 >> sum(x.*y) ans = 72 >> n=input('nhap n=') nhap n=4 n= >> a=[2:2:2*n] a= >> b=[10:-2:-2*n] ( ấn enter) b= 10 -2 -4 -6 -8 >> c=[1/1 1/2 1/3 1/4] ( ấn enter) c= 1.0000 0.5000 0.3333 0.2500 >> d=[0 1/2 2/3 3/4] ( ấn enter) d= 0.5000 0.6667 0.7500 Bài 10: Cho x = [1 8], y = [2 5] A = [3 ; 7] Xét xem dòng lệnh hợp lệ, dự đoán kết quả, giải thích; thử lại Matlab : a x + y b x + A c x’ + y d A – [x’ y’] e [x ; y’] f [x ; y] g A – h x*A; x.*A; A*x; A.*x i A/y; A./y Trả lời: >> x=[1 8] ( ấn enter) x= >> y=[2 5] ( ấn enter) y= >> A=[3 6;5 7] ( ấn enter) A= >> x+y( ấn enter) ans = 13 >> x+A( ấn enter) ??? Error using ==> plus Matrix dimensions must agree >> x'+y( ấn enter) ??? Error using ==> plus Matrix dimensions must agree >> A-[x' y'] ( ấn enter) ??? Error using ==> minus Matrix dimensions must agree >> [x,y'] ( ấn enter) ??? Error using ==> horzcat CAT arguments dimensions are not consistent >> [x;y] ( ấn enter) ans = >> A-3( ấn enter) ans = -2 -1 Bài 11: Cho A = [2 ; ; 5], dự đoán kết quả, giải thích; thử lại Matlab: a A’ b A(:,[1 4]) c A([2 3], [3 1]) d reshape(A, 2, 6) e A(:) f flipud(A) g fliplr(A) h [A; A(end,:)] i A(1:3,:) j [A; A(1:2, :)] k sum(A) l sum(A’) m sum(A, 2) n [ [ A ; sum(A) ] [ sum(A,2) ; sum(A(:)) ] ] Trả lời: >> a=[2 7;3 6;8 5] ( ấn enter) a= 1 >> a'( ấn enter) ans = >> a(:,[1 4]) ( ấn enter) ans = >> a([2 3],[3 1]) ( ấn enter) ans = -0.9868 -0.9985 -0.9635 -0.8835 -0.7622 -0.6052 -0.4199 Columns 29 through 30 -0.2150 -0.0000 Bài 17:Vẽ đồ thị hình sin vói điều kiện điểm đầu đồ thị điểm cuối đồ thị kia? Trả lời: >> x=linspace(0,2*pi,30) y=sin(x) plot(x,y) hold on x=linspace(2*pi,4*pi,30) z=sin((pi/4)*x) plot(x,z) ( ấn enter) x= Columns through 0.2167 0.4333 0.6500 0.8666 1.0833 1.3000 Columns through 14 1.5166 1.7333 1.9500 2.1666 2.3833 2.5999 2.8166 3.6832 3.8999 4.1166 4.3332 5.1999 5.4165 5.6332 5.8499 Columns 15 through 21 3.0333 3.2499 3.4666 Columns 22 through 28 4.5499 4.7666 4.9832 Columns 29 through 30 6.0665 6.2832 y= Columns through 0.2150 0.4199 0.6052 0.7622 0.8835 0.9635 Columns through 14 0.9985 0.9868 0.9290 0.8277 0.6877 0.5156 0.3193 Columns 15 through 21 0.1081 -0.1081 -0.3193 -0.5156 -0.6877 -0.8277 -0.9290 Columns 22 through 28 -0.9868 -0.9985 -0.9635 -0.8835 -0.7622 -0.6052 -0.4199 Columns 29 through 30 -0.2150 -0.0000 x= Columns through 6.2832 6.4998 6.7165 6.9332 7.1498 7.3665 7.5832 8.4498 8.6665 8.8831 9.0998 Columns through 14 7.7998 8.0165 8.2331 Columns 15 through 21 9.3164 9.5331 9.7498 9.9664 10.1831 10.3998 10.6164 Columns 22 through 28 10.8331 11.0497 11.2664 11.4831 11.6997 11.9164 12.1330 Columns 29 through 30 12.3497 12.5664 z= Columns through -0.9754 -0.9239 -0.8458 -0.7432 -0.6192 -0.4773 -0.3216 Columns through 14 -0.1566 0.0129 0.1821 0.3460 0.4999 0.6393 0.7603 0.9997 0.9897 0.9511 0.8851 0.3949 0.2337 0.0656 -0.1043 Columns 15 through 21 0.8593 0.9335 0.9808 Columns 22 through 28 0.7935 0.6790 0.5448 Columns 29 through 30 -0.2712 -0.4303 Bài 18:Vẽ biểu đồ hình tròn biểu đồ hình cột biểu diễn số học sinh khá, giỏi , trung bình yếu lớp: Xếp loại Giỏi Khá Trung bình Yếu Trả lời +Vẽ biểu đồ hình tròn >> a=[2 26 27 15]; pie(a,a==max(a)); title('xep loai'); ( ấn enter) Số học sinh 26 27 15 +Vẽ biểu đồ hình cột >> a=[4 26 27 15]; pareto(a) title('xep loai'); ( ấn enter) Bài 19:Vẽ tam giác với đỉnh nhập từ bàn phím? Trả lời: ya=input('Nhap tung diem A ya = ' ); xb=input('Nhap hoanh diem B xb = '); yb=input('Nhap tung diem B yb = '); xc=input('Nhap hoanh diem C xc = '); yc=input('Nhap tung diem C yc = '); if xa==xb x1=ya:yb; y1=((xb-xa)*x1+yb*xa-xb*ya)/(yb-ya); x2=xa:xc; y2=((yc-ya)*x2+xc*ya-xa*yc)/(xc-xa); x3=xb:xc; y3=((yc-yb)*x3+xc*yb-xb*yc)/(xc-xb); plot(y1,x1,x2,y2,x3,y3) else x1=xa:xb; y1=((yb-ya)*x1+xb*ya-xa*yb)/(xb-xa); x2=xa:xc; y2=((yc-ya)*x2+xc*ya-xa*yc)/(xc-xa); x3=xb:xc; y3=((yc-yb)*x3+xc*yb-xb*yc)/(xc-xb); plot(x1,y1,x2,y2,x3,y3) end(ấn enter) Nhap hoanh diem A xa = Nhap tung diem A ya = Nhap hoanh diem B xb = Nhap tung diem B yb = Nhap hoanh diem C xc = Nhap tung diem C yc = 4(ấn enter) Bài 20:Vẽ đường tròn nội tiếp tam giác? Trả lời: >> disp('nhap toa diem a') xa=input('xa=') ya=input('ya=') disp('nhap toa diem b') xb=input('xb=') yb=input('yb=') disp('nhap toa diem c') xc=input('xc=') yc=input('yc=') ab=sqrt((xa-xb)^2+(ya-yb)^2) bc=sqrt((xb-xc)^2+(yb-yc)^2) ca=sqrt((xc-xa)^2+(yc-ya)^2) while ab+bc[...]... 0.5448 Columns 29 through 30 -0.2712 -0.4303 Bài 18:Vẽ biểu đồ hình tròn và biểu đồ hình cột biểu diễn số học sinh khá, giỏi , trung bình và yếu kém trong lớp: Xếp loại Giỏi Khá Trung bình Yếu kém Trả lời +Vẽ biểu đồ hình tròn >> a=[2 26 27 15]; pie(a,a==max(a)); title('xep loai'); ( ấn enter) Số học sinh 2 26 27 15 +Vẽ biểu đồ hình cột >> a=[4 26 27 15]; pareto(a) title('xep loai'); ( ấn enter) Bài... xa] v=[ya yb yc ya] plot(u,v,'linewidth',2) hold on %ve duong tron noi tiep tam giac disp('tam duong tron noi tiep tam giac,i=') x1=(bc*xa+ca*xb+ab*xc)/(ab+bc+ca) y1=(bc*ya+ca*yb+ab*yc)/(ab+bc+ca) disp('tinh ban kinh truong tron noi tiep tam giac,r:') p=(ab+bc+ca)/2;%nua chu vi tam giac s=sqrt(p*(p-bc)*(p-ca)*(p-ab));%dien tich tam giac r=s/p t=0:0.01:360 x=r*cos(t)+x1 y=r*sin(t)+y1 plot(x,y,'linewidth',2) ... vào phần tử y b Luỹ thừa phần tử x với số mũ tương ứng phần tử y c Chia phần tử y với phần tử tương ứng x d Nhân phần tử x với phần tử tương ứng y, đặt vector z e Tính tổng phần tử z, gán cho... diễn số học sinh khá, giỏi , trung bình yếu lớp: Xếp loại Giỏi Khá Trung bình Yếu Trả lời +Vẽ biểu đồ hình tròn >> a=[2 26 27 15]; pie(a,a==max(a)); title('xep loai'); ( ấn enter) Số học sinh... thử lại Matlab: a / * b – / + ^ – c 10 / – + * d ^ / e ^ ^ f + round(6 / + * 2) / – Trả lời: Thực phép tính matlab: a / * =3 b – / + ^ – =53.6000 c 10 / – + * =6 d ^ / =2.2500 e ^ ^ =81 f