Tại các điểm mà giá trị công suất lớn hơn 0.2mW, đánh dấu bằng ký tự ’X’ lên đồ thị...7 Câu 3: viết hàm có dạng thong_ke_diemdiem với tham số điểm truyền vào là mảng chứa điểm của nhiều
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA ĐIỆN TỬ- VIỄN THÔNG
-o0o -THỰC HÀNH PHƯƠNG PHÁP TÍNH VÀ MATLAB
BÁO CÁO THỰC HÀNH TUẦN 2
GVHD: CN PHẠM THẾ HÙNG
LỚP: 22DTV1
Tp Hồ Chí Minh, 2024
1
Sinh viên thực hiện MSSV
Trang 2Câu 1 : cho các ma trận: 3
a Từ ma trận A, tạo ra ma trận C = 3
b Từ A, tạo ra ma trận D = 3
c Từ ma trận A, tạo ra ma trận E = 4
d Tính F là tích của ma trận A và B kết quả F là ma trận gì? vì sao? 4
e Từ ma trận A và B, tạo ra ma trận G = 5
Câu 2: cho biểu thức điện áp và dòng điện theo thời gian: 5
a Viết script.m vẽ đồ thị V theo t trên cùng một đồ thị Đồ thị V là màu hồng, nét đứt đồ thị I là màu đen, nét đứt và chấm tiêu đề là “A lovely plot” Tiêu đề trục hoành là “time(s)” trục tung là “Voltage” and Current(mA)” Đồ thị cần chú thích rõ ràng 6
b Tính và vẽ thêm đồ thị công suất P đồ thị P màu xanh dương, nét liền, kích thước đường đồ thị là 3 Bổ sung chú thích cho P 6
c Tại các điểm mà giá trị công suất lớn hơn 0.2mW, đánh dấu bằng ký tự ’X’ lên đồ thị 7
Câu 3: viết hàm có dạng thong_ke_diem(diem) với tham số điểm truyền vào là mảng chứa điểm của nhiều sinh viên Hàm này có nhiệm vụ sẽ thống kê ra số lượng điểm của sinh viên, điểm thấp nhất, cao nhất và điểm trung bình làm tròn đến chữ số thập phân thứ 2 Truyền vào [9.0 5.5 7.5 3.0 6.0 6.5 10.0 8.5 4.5 9.0 9.5] và kiểm tra 10
Câu 4: tạo một ma trận có kích thước 5x5 gồm các phần tử là số nguyên bé hơn hoặc bằng 100 Tìm và in ra phần tử lớn nhất trong ma trận và vị trí (hàng ,cột) của phần tử đó, (yêu cầu: chỉ dùng hàm randi, max, fprintf) 11
Trang 3Thực hành:
Câu 1 : cho các ma trận:
Cú pháp: thực hiện trích dữ liệu trong ma trận
3
Trang 4b Từ A, tạo ra ma trận D =
Trang 5Cú pháp:
Cú pháp:
5
Trang 6d Tính F là tích của ma trận A và B kết quả F là ma trận gì? vì sao?
Nhận xét:
với A là ma trận có kích thước 4x5 và B có kích thước 5x2 => khi thực hiện phép nhân 2 ma trận sẽ cho ra ma trận F với kích thước 4x2
cú pháp:
e Từ ma trận A và B, tạo ra ma trận G =
Cú pháp:
Trang 8Câu 2: cho biểu thức điện áp và dòng điện theo thời gian:
0 ( ) 0,5sin(111 30 ) 0,3cos(217 )
( ) 0,7 cos(173 ) 0,02
Cho t chạy từ 0 ->10s, bước nhảy 10ms
a Viết script.m vẽ đồ thị V theo t trên cùng một đồ thị Đồ thị V là màu hồng, nét đứt đồ thị I là màu đen, nét đứt và chấm tiêu đề là “A lovely plot” Tiêu đề trục hoành là “time(s)” trục tung là “Voltage” and Current(mA)” Đồ thị cần chú thích
rõ ràng
Cú pháp:
kết quả:
Trang 9b Tính và vẽ thêm đồ thị công suất P đồ thị P màu xanh dương, nét liền, kích thước đường đồ thị là 3 Bổ sung chú thích cho P
Cú pháp:
Kết quả:
10
Trang 10c Tại các điểm mà giá trị công suất lớn hơn 0.2mW, đánh dấu bằng ký tự ’X’ lên đồ thị
Quan sát đồ thị ta thấy được ở các thời điểm t thì có 4 giá trị t làm cho P có giá trị lớn hơn 0.2(mW)
Để kiểm tra tại 4 điểm t thì giá
trị của trục tung là bao nhiêu ta
sử dụng công cụ “Data cursor”
trong “Tools” của đồ thị để
kiểm tra tọa độ
Sau đó thực hiện đưa trỏ chuột vào đỉnh của đồ thị và sẽ
hiện ra tọa độ:
Ta thu được 4 điểm: P(0.08,0.4199),
Trang 11Để đánh dấu các giá trị lớn
hơn 0.2mW tại các thời điểm
tương ứng bằng ‘x’, ta thực
hiện cú pháp hàm
text(a,b,sym):
( Với a là hoành độ, b là tung
độ và sym là ký tự đánh dấu )
13
Trang 12Kết quả:
Trang 13Câu 3: viết hàm có dạng thong_ke_diem(diem) với tham số điểm truyền vào là mảng chứa điểm của nhiều sinh viên Hàm này có nhiệm vụ sẽ thống kê ra số lượng điểm của sinh viên, điểm thấp nhất, cao nhất và điểm trung bình làm tròn đến chữ số thập phân thứ
2 Truyền vào [9.0 5.5 7.5 3.0 6.0 6.5 10.0 8.5 4.5 9.0 9.5] và kiểm tra
Chú ý:
dùng hàm max(diem) để tìm ra số lớn nhất của mảng diem;
dùng hàm min(diem) để tìm ra số nhỏ nhất của mảng diem;
dùng hàm mean(diem) để tìm giá trị trung bình của mảng diem;
dùng hàm round(diem,x) để làm tròn đến x chữ số
dùng hàm num2str(x) để chuyển giá trị số về ký t
cú pháp:
Kết quả:
15
Trang 14Câu 4: tạo một ma trận có kích thước 5x5 gồm các phần tử là số nguyên bé hơn hoặc bằng 100 Tìm và in ra phần tử lớn nhất trong ma trận và vị trí (hàng ,cột) của phần tử đó, (yêu cầu: chỉ dùng hàm randi, max, fprintf)
Cú pháp thực hiện:
Phân tích cú pháp:
tạo ra ma trận với 5 hàng và 5 cột
và các phần tử được giới hạn
dưới 100 và gán vào biến a:
Trang 15 Gán [x,y] = max(a,[],1) để truy
xuất giá trị lớn nhất của từng cột
và y sẽ lưu vị trí của từng giá trị
đó theo hàng tương ứng
*(hàm [giatri,vitri] = max( a, [], t) dùng để truy xuất giá trị lớn nhất của ma trận với 2 tùy chọn, khi t = 1 sẽ truy xuất giá trị lớn nhất theo cột và xuất ra vị trí của các phần tử đó theo hàng Cả 2 kết quả sẽ được biểu diễn dưới dạng ma trận khi t = 2, sẽ truy xuất giá trị lớn nhất theo hàng và vị trí từng phần tử lớn nhất theo cột)
Như vậy, chúng ta đã tìm được ra những giá trị lớn nhất của từng cột, chỉ cần biết được cột nào có giá trị lớn nhất trong 5 giá trị của 5 cột đó Đó là cột của giá trị lớn nhất của ma trận
Tương tự ta gán [gt, cot] = max(x , [], 2) để
truy xuất giá trị lớn nhất theo hàng và vị trí lớn
nhất của cột của ma trận x ta vừa tìm vị trí cột
của ma trận đó
18
Trang 16 Ta tìm được cột 3 của ma trận chính là cột chứa giá trị lớn nhất là 98.
Vậy thì ta chỉ cần truy ra ở cột 3 có giá trị
hàng là bao nhiêu bằng bao nhiêu thì đó sẽ là
giá trị hàng của phần tử lớn nhất cú pháp thực
hiện: hang = y(cot)
Ta tìm được hàng và cột của phần tử lớn nhất
Sử dụng hàm fprintf('%5d la gia tri lon nhat va (%d,%d) la toa do\n',gt,hang,cot)
để in ra màng hình kết quả phần tử lớn nhất và tọa độ tương ứng: