18
Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn 1. Söû duïng leänh ñieàu kieän if vieát haøm ñeå tính giaù trò haøm g(x) nhö sau: 2. Vieát moät haøm(functon) saép xeáp laïi giaù trò cuûa moät maûng töø nhoû deán lôùn (theo coät) vaø ngöôïc laïi vaø xuaát ra giaù trò trung bình cuûa maûng Ví duï : input A=[5 9 6 3 -5 4] Output B=[-5 3 4 5 6 9] vaø C=[9 6 5 4 3 -5] 3. Moät Rocket ñöôïc phoùng leân töø maët ñaát vaø ñöôïc moâ taû bôûi heä phöông trình sau: 0.4 1.8 0 52 y x x = a) Taïo moät Script file ñeå veõ quyõ ñaïo cuûa Rocket treân. b) Hieäu chænh script file treân thaønh function vôùi hai thoâng soá nhaäp vaøo laø a,b vaø phöông trình quyõ ñaïo cuûa Rocket theo phöông y la ø y a bx = 4. Öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân cuûa thanh bò keùo neùn theo goùc alpha theo coâng thöùc nhö sau: ÖÙng suaát phaùp treân maët caét xieân 2 2 cos cos z z z N F σ α σ α = = Öùng suaát tieáp treân maët caét xieân sin 2 sin 2 2 2 z z z N F σ τ α α = = Yeâu caàu : Vieát 1 function tính öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân. Kieåm tra tham soá ñöa vaøo haøm, Ñoái vôùi 3 tham soá(N z ,F,Alpha) vaø hai tham soá ñöa vaøo( z σ ,alpha) duøng bieán nargin vaø 1 function ñoåi ñoä sang rad Vieát 1 script file veõ ñoà thò bieán thieân cuûa öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân nhö hình sau. 5. Giaûi heä phöông trình phi tuyeán sau :

Bài tập Matlab căn bản

Embed Size (px)

Citation preview

Page 1: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

1. Söû duïng leänh ñieàu kieän if vieát haøm ñeå tính giaù trò haøm g(x) nhö sau:

2. Vieát moät haøm(functon) saép xeáp laïi giaù trò cuûa moät maûng töø nhoû deán lôùn

(theo coät) vaø ngöôïc laïi vaø xuaát ra giaù trò trung bình cuûa maûng Ví duï : input A=[5 9 6 3 -5 4] Output B=[-5 3 4 5 6 9] vaø C=[9 6 5 4 3 -5] 3. Moät Rocket ñöôïc phoùng leân töø maët ñaát vaø ñöôïc moâ taû bôûi heä phöông trình

sau: 0.4 1.8

0 52y x

x

⎧ =⎪⎨

≤ ≤⎪⎩

a) Taïo moät Script file ñeå veõ quyõ ñaïo cuûa Rocket treân. b) Hieäu chænh script file treân thaønh function vôùi hai thoâng soá nhaäp vaøo laø

a,b vaø phöông trình quyõ ñaïo cuûa Rocket theo phöông y la ø y a bx= 4. Öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân cuûa thanh bò keùo neùn theo

goùc alpha theo coâng thöùc nhö sau:

ÖÙng suaát phaùp treân maët caét xieân 2 2cos coszz z

NF

σ α σ α′ = =

Öùng suaát tieáp treân maët caét xieân sin 2 sin 22 2

z zz

NF

στ α α′ = =

Yeâu caàu : Vieát 1 function tính öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân. Kieåm tra tham soá ñöa vaøo haøm, Ñoái vôùi 3 tham soá(Nz,F,Alpha) vaø hai tham soá ñöa vaøo( zσ ,alpha) duøng bieán nargin vaø 1 function ñoåi ñoä sang rad Vieát 1 script file veõ ñoà thò bieán thieân cuûa öùng suaát phaùp vaø öùng suaát tieáp treân maët caét xieân nhö hình sau.

5. Giaûi heä phöông trình phi tuyeán sau :

Page 2: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Duøng x=A\b

6. Moät ngöôøi ñang chaïy töø treân moät doác coù ñoä nghieân alpha=20o ñeå traùnh moät hoøn ñaù Neáu ngöôøi naøy ñeán vò trí x=0 tröôùc vieân ñaù thì thoaùt ñöôïc. Haõy vieát chöông trình moâ phoûng chuyeån ñoäng cuûa ngöôøi vaø hoøn ñaù.

HD: Phöông trình chuyeån ñoäng cuûa vieân ñaù Trong ñoù : m khoái löôïng vieân ñaù v& Vaän toác hoøn ñaù B heä soá ma saùt G gia toác troïng tröôøng Vaän toác vaø vò trí hoøn ñaù

, Hai pt naøy cuõng ñuùng cho ngöôøi dt : böôùc thôøi gian v(i) : vaän toác taïi thôøi ñieåm t=to+t*i v(i-1) : vaän toác taïi thôøi ñieåm t=to+t*(i-1) Giaù trò: B1=10, m1=1000, T=10 (thôøi gian moâ phoûng) B2=0.2, m2=100, gia toác =1.5 , v_max=5 m/s 7. Xaây döïng ma traän 16x16 sau:

Page 3: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

8. Vieát function I=trap(f,a,b,n) duøng tính tích phaân. Vôùi I=

Trong ñoù : h=(a-b)/n vaø xi = a+i*h Kieåm tra keát quaû cuûa haøm treân vôùi haøm f=cos(x)+sin(x) cho a=0,b=pi/3 9. Kieåm tra keát quaû baøi treân baèng quy luaät Simpson I=

10. Döïa vaøo löu ñoà sau haõy xaây döïng moät script file duøng caùc leänh input,

sprinft

11. Söû duïng voøng laëp for vaø caùc leänh treân ñeå xaây döïng script file döïa treân löu ñoà sau:

Page 4: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

12. Söû duïng voøng laëp while xaây döïng script file döïa treân löu ñoà sau:

Page 5: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

13. Chuyeån ñoåi caùc script file(8,9,10) treân thaønh haøm (function) 14. Veõ hình troøn 15. Veõ caùc maët (surface ) sau:

16. Veõ maët döïa treân phöông trình tham soá sau :

Vôùi u,v=0 :2*pi HD : Tính u,v sau ñoù söû duïng leänh surf(X,Y,Z) 14. Veõ maët contour sau :

Page 6: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Vôùi

söû duïng haøm contour 17. Döôùi ñaây laø baûn döõ leäu thu ñöôïc töø moät thí nghieäm maø moâ hình toaùn hoïc coù

coâng thöùc : Trong ñoù xm,ym laø giaù trò ño ñöôïc coøn yδ laø sai soá taïi giaù trò xm

Söû duïng haøm errorbar ñeå theå hieän keát quaû treân.

16. Xaây döïng structure sau :

Page 7: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

BÀI TẬP MATLAB CĂN BẢN 1. Viết chương trình tính tiền điện cho một gia đình biết rằng nếu số Kwh điện sử

dụng:

- < 100 thì giá 1 Kwh là 500đ.

- 100 ≤ Kwh < 200 thì giá 1 Kwh là 700đ.

- 200 ≤ Kwh < 500 thì giá 1 Kwh là 1000đ.

- Kwh > 500 thì giá 1 Kwh là 1200đ.

Đồng thời:

+ Nếu Kwh < 0 thì in ra: không hợp lệ.

+ Nếu Kwh sử dụng ≥ 500 thì sau dòng in tổng số tiền có ghi kèm theo

câu: Hạn chế sử dụng điện.

2. Viết chương trình giải và biện luận bất phương trình : ax > 3x + 6

3. Viết chương trình tính doanh thu trung bình DTTB trong 1 năm của Công ty X

theo doanh thu của 4 quý: Q1, Q2, Q3 và Q4, đơn vị tính là Triệu đồng. Nếu

DTTB < 100 thì in ra: Phá sản, từ 100 đến nhỏ hơn 200 thì in ra: Doanh thu kém.

Từ 200 đến nhỏ hơn 300 thì in ra: Doanh thu trung bình, từ 300 đến nhỏ hơn 500

thì in ra: Doanh thu khá, từ 500 trở lên thì in ra: Doanh thu tốt.

4. Viết chương trình tính n!

5. Viết chương trình tính căn bậc 2 của 1 số:

- Lấy nx = x/2

- Sử dụng công thức: ⎟⎟⎠

⎞⎜⎜⎝

⎛+=+

nnn x

xxx21

1

- Kiểm tra điều kiện: ε<−+

n

nn

xxx 1

6. Viết chương trình tính căn bậc 3 của 1 số:

- Lấy nx = x/3

- Sử dụng công thức: ⎟⎟⎠

⎞⎜⎜⎝

⎛=

+

+ 2

3

12

31

n

x

n xxx

Page 8: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

- Kiểm tra điều kiện: ε<−+

n

nn

xxx 1

7. Sử dụng vòng lặp for và các lệnh đã biết để xây dựng một script file dựa trên lưu

đồ sau:

For j from 1 to 10 by

N = 0R = 0

Area = 0 Circ = 0

INPUTR

Area = 2* Rπ

Circ = R**2 π

IfArea > 20.0

OUTPUT N

N = N + 1

Stop

OUTPUT R, Area, Circ

False

True

Start

Page 9: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

8. Sử dụng vòng lặp while xây dựng script file dựa trên lưu đồ sau:

While R>0

N = 0R = 0

Area = 0 Circ = 0

INPUTR

Area = 2* Rπ

Circ = R**2 π

IfArea > 20.0

OUTPUTN

N = N + 1

Stop

OUTPUTR, Area, Circ

False

True

Start

INPUTR

Page 10: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

9. Viết chương trình tính diện tích hình thang theo đáy lớn a, đáy nhỏ b và chiều cao

h, có xét đến sự tồn tại hoặc không tồn tại của hình thang ( sử dụng toán tử &)

10. Viết chương trình thực hiện sự lựa chọn: tính diện tích hình vuông theo cạnh a

hoặc tính diện tích hình tròn theo đường kính d, có xét đến sự tồn tại hay không

tồn tại của hình vuông và hình tròn.

11. Viết chương trình hướng dẫn mua vé máy bay ( thực hiện việc lựa chọn): muốn đi

từ TPHCM đi Hà Nội: đến quầy số 1, TPHCM đi Đà Nẵng: đến quầy số 2,

TPHCM đi Nha Trang: đến quầy số 3, TPHCM đi Vũng Tàu: đến quầy số 4,

TPHCM đi Đà Lạt: đến quầy số 5, TPHCM đi Côn Đảo: đến quầy số 6.

12. Viết phương trình giải và biện luận phương trình:

⎩⎨⎧

=++=++

00

222

111

cybxacybxa

Theo các tham số 222111 ,,,,, cbacba

CÁC PHÉP TÍNH TRÊN MA TRẬN VÀ MẢNG 13. Cho:

⎥⎥⎥

⎢⎢⎢

⎡=

122420128542

A

a. Tính B = A + 12

b. Tính C = 4*A

c. Gõi D là ma trận chuyển trí của C. Xác định D

14. Cho:

⎥⎥⎥

⎢⎢⎢

⎡=

1086428542

A và ⎥⎥⎥

⎢⎢⎢

⎡=

2014412286410

B

a. Tính ma trận tổng C của A và B

b. Tính ma trận tích D = A*B

c. Xác định ma trận nghịch đảo E của D

15. Cho ma trận A và véctơ hàng B:

Page 11: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

⎥⎥⎥

⎢⎢⎢

⎡=

987654321

A [ ]8642=B

Viết chương trình thực hiện liên tiếp các công việc sau:

a. Nhập A và B

b. Tạo ma trận con C của ma trận A bằng cách lấy số hạng thứ 1, 2,

3 và 4

c. Tính ma trận tổng D của B và C

d. Tính ma trận E là ma trận chuyển trí của B

e. Tính F = D*E

Viết chương trình sao cho các kết quả được hiển thị trên màn hình.

16. Cho

⎥⎥⎥

⎢⎢⎢

⎡=

204182762451122

A và ⎥⎥⎥

⎢⎢⎢

⎡=

10209012564

B

Hãy thực hiện phép chia A./B và hãy cho biết INF nói lên điều gì ?

17. Viết chương trình tính các giá trị y = sin(x), trong đó giá trị của x

π≤≤ x0 và bước nhảy là 4/π .

18. Hãy sử dụng ones, eye và phương pháp xây dựng ma trận từ các khối để tạo nên

ma trận sau:

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

=

222400222040222004400222040222004222

A

19. Hãy sử dụng ones, eye và phương pháp xây dựng từ các khối để tạo nên ma trận

sau:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

1100110000110011

C

Page 12: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Biến đổi C thành:

⎥⎥⎥⎥

⎢⎢⎢⎢

=

110110001001

D và ⎥⎥⎥

⎢⎢⎢

⎡=

110001001

E

20. Giải phương trình sau bằng phương pháp định thức:

⎩⎨⎧

=+=+4287244401315

yxyx

21. Giải hệ phương trình sau bằng phương pháp nghịch đảo ma trận:

⎪⎪⎩

⎪⎪⎨

=+++

=++=+++=+++

190820128

544612124810685

8848534

4321

321

4321

4321

xxxx

xxxxxxx

xxxx

22. Giải hệ phương trình sau bằng phương pháp chia trái ma trận:

⎪⎩

⎪⎨

=++=++=++

52438961074

82865

321

321

321

xxxxxx

xxx

23. Lieät keâ caùc phaàn töû vôùi ñieàu kieän. x = -0.4326 -1.6656 0.1253 0.2877 -1.1465 1.1909 1.1892 ind = (x >= 1) | (x < -0.2) ind = 1 1 0 0 1 1 1 y = x(ind) y = -0.4326 -1.6656 -1.1465 1.1909 1.1892 a = [1 1 3 4 1] a = 1 1 3 4 1 ind = (a == 1) ind = 1 1 0 0 1 b = a(ind) b = 1 1 1 24. Tìm phaàn töû ma traän vaø vectô vaø cho bieát vò trí cuûa chuùng %tim dia chi voi a = 1. ind = find(a == 1) ind =

Page 13: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

1 2 5 25. saép xeáp töø nhoû ñeán lôùn function [b, j] = descsort(a) [b ,j] = sort(-a); b = -b; % main program a = [pi –10 35 0.15]; [b, j] = descsort(a) ket qua: b = 35.0000 3.1416 0.1500 -10.0000 j = 3 1 4 2 26. taïo haøm vaø tính giaù trò haøm baèng “inline” vaø feval f = inline('sqrt(x.^2+y.^2)','x','y') f = Inline function: f(x,y) = sqrt(x.^2+y.^2) % tinh f: f(3,4) ans = 5 A = [1 2;3 4] A = 1 2 3 4 B = ones(2) B = 1 1 1 1 C = f(A, B) C = 1.4142 2.2361 3.1623 4.1231

Page 14: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

BÀI TẬP MATLAB CĂN BẢN

PHẦN ĐIỆN Baøi 1: cho maïch ñieän nhö hình veõ, tìm ñieän theá nuùt V1, V2, V3

Taïi nuùt 1:

Taïi nuùt 2:

Taïi nuùt 3:

Ta coù heä:

Baøi 2: cho maïch ñieän nhö hình veõ, tìm ñieän theá nuùt V1, V2, V3, V4

Page 15: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Taïi nuùt 1:

Taïi nuùt 2:

Nuùt 2, 3:

Taïi nuùt 4:

Cuoái cuøng ta coù heä:

Baøi 3: Xaùc ñònh giaù trò doøng ñieän chaïy qua ñieän trôû

Ta coù:

Page 16: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Voøng 1: Voøng 2:

Voøng 3: Ta coù heä phöông trình

Baøi 4: Tìm ñieän theá nuùt trong maïch ñieän

Phaân tích maïch ñieän ta coù heä phöông trình:

Page 17: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Theá soá ta ñöôïc:

Baøi 5: cho maïch ñieän nhö hình veõ:

Töø maïch ñieän ta coù phöông trình:

Cho 10C Fμ= söû duïng Matlab ñeå veõ ñieän theá ñi qua tuï ñieän vôùi giaù trò cuûa ñieän trôû

1 , 10 , 0.1R k R k R k= Ω = Ω = Ω Baøi 6: Cho maïch ñieän RLC nhö hình veõ. Neáu

( ) ( ) ( )010 , 400 , 100 , 0, 0 4 , 15 /s

diL H R C F v t i A A s

dtμ= = Ω = = = =

Tìm ( )i t

Cho

Baøi 7: Cho maïch ñieän nhö hình veõ. Neáu taïi thôøi ñieåm ban ñaàu 0t = coâng taéc môû. Tìm ñieän theá ( )v t . Vôùi 1/ 32 , 10 , 50 , 2sL H R C F I Aμ= = Ω = =

Page 18: Bài tập Matlab căn bản

Baøi taäp Matlab caên baûn Nguyeãn Hoaøi Sôn

Cho