Bài giảng Tin học chuyên ngành - Chương 1: Các khái niệm cơ bản - Hoàng Xuân Dương
Bài giảng Tin học chuyên ngành
9
Õ
CHƯƠNG 1:
Hoàng Xuân Dương
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
10
I. HOẠT ĐỘNG CỦA MATLAB
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
III. SƠ LƯỢC VỀ ĐỒ HỌA TRONG MATLAB
IV. ÂM THANH TRONG MATLAB
5
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
11
I. HOẠT ĐỘNG CỦA MATLAB:
Khi chạy Matlab, một màn hình nền xuất hiện:
Cửa sổ thư mục hiện hành
Cửa sổ lệnh
Cửa sổ không gian làm việc
Cửa sổ lịch sử lệnh
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
12
I. HOẠT ĐỘNG CỦA MATLAB:
Cửa sổ lệnh (Command window):
Với dấu nhắc >> dùng để chạy các lệnh, viết chương
trình, chạy chương trình.
Cửa sổ Lịch sử lệnh (Command history)
Liệt kê tất cả các lệnh đã sử dụng trước đó kèm theo
thời gian làm việc
Cửa sổ thư mục hiện tại (Current Directory)
Cho biết thư mục hiện tại đang làm việc. Mặc định khi
cài đặt là MATLAB701\work (version 7.01)
Cửa sổ không gian làm việc (workspace)
Cho biết các biến được sử dụng trong chương trình
6
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
I. HOẠT ĐỘNG CỦA MATLAB:
1. Các phép toán đơn giản:
13
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
14
I. HOẠT ĐỘNG CỦA MATLAB:
2. Một số lệnh hệ thống:
Lệnh
Ý nghĩa
clc
xóa cửa sổ lệnh
clf
xóa cửa sổ đồ họa
help
xem phần trợ giúp một số lệnh
thoát Matlab
quit, exit
Ctrl+c
pause
edit
dừng chương trình
ngừng tạm thời chương trình
gọi chương trình soạn thảo
đọc nội dung file .m
type
input
demo
nhập dữ liệu từ bàn phím
Gọi chương trình demo
echo on/off Tắt mở hiển thị các lệnh trong M-files
7
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
15
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
1. Biến trong Matlab:
Tên biến có thể dài 31 ký tự, bắt đầu là chữ
Matlab phân biệt chữ thường và chữ hoa
Sử dụng dấu = để định nghĩa biến
Tên biến có thể trùng với tên hàm có sẵn, khi đó hàm
không còn sử dụng được cho đến khi biến được xóa
Ví dụ:
>> x=1
x=1
>> ten_truong='Dai hoc DL Cong Nghe Sai Gon'
ten_truong = Dai hoc DL Cong Nghe Sai Gon
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
16
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
1. Biến trong Matlab (tt)
Một số hàm liên quan đến biến:
Lệnh
Ý nghĩa
clear
who
xóa tất cả các biến
hiển thị danh sách các biến trong worksapce
hiển thị các biến cùng kích thước của chúng, có
phải số phức ?
whos
clear name1, name2,… xóa biến có tên được khai báo
exist (‘item’)
save
Kiểm tra sự tồn tại của đối tượng ‘item’
Lưu các biến trong workspace ra file
Tải các biến vào trong workspace từ file
load
8
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
17
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
2. Độ lớn của biến:
Xác định độ lớn hay chiều dài của biến vector cũng như
ma trận thông qua một số hàm:
Hàm
size(A)
Ý nghĩa
Trả về 1 vector chứa kích thước A,
gồm số hàng và số cột của A
[m n]=size(A)
size(A,p)
giá trị trả về chứa trong m và n
p=1 Î trả về số hàng
p=2 Î trả về số cột
Trả về chiều dài của A, giá trị lớn
nhất của hàng và cột
length(A)
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
18
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
2. Độ lớn của biến (tt)
Ví dụ:
>> A=[1 2 3; 4 5 6]
A= 1 2 3
4 5 6
>> [m n]=size(A)
m = 2
n = 3
>> length(A)
ans = 3
>> size(A,1)
ans = 2
Gảng nàng Xuân Dưng
9
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
19
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
3. Một số biến được định nghĩa trước:
Một số biến được Matlab sử dụng để chỉ các hằng số hay
ký hiệu, nên tránh dùng chúng:
>> 1/0
Warning: Divide by zero.
(Type "warning off MATLAB:divideByZero" to suppress this warning.)
ans = Inf
>> 0/0
Warning: Divide by zero.
(Type "warning off MATLAB:divideByZero" to suppress this warning.)
ans = NaN
>> eps
ans = 2.2204e-016
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
20
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
3. Một số biến được định nghĩa trước (tt)
Ký hiệu
Ý nghĩa
=
Gán giá trị cho biến
+ - * / ^
Các phép tính
;
Nhập giá trị, dấu cách khi nhập nhiều trị trên một dòng
Dấu cách khi xuất nhiều giá trị trên một dòng
Đáp số mới nhất
,
ans
eps
pi
Cấp chính xác tương đối khi dùng dấu phẩy động
số π = 3,14159265…
i j
Toán tử ảo
inf
NaN
vô cùng
không phải số (0/0 hay inf/inf)
Gảng nàng Xuân Dưng
10
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
21
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
4. Số phức:
Các hàm đặc biệt của số phức:
real(x)
phần thực của x
imag(x)
conj(x)
phần ảo của x
liên hợp phức của x
độ lớn, trị tuyệt đối của x
góc pha của số phức
tạo số phức từ phần thực và ảo
abs(x)
angle(x)
complex(a,b)
Giảng viên: Hoàng Xuân Dương
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
22
Ví dụ:
>> a=1+3i
a = 1.0000 + 3.0000i
>> b=2-4i
b = 2.0000 - 4.0000i
>> a+b
ans = 3.0000 - 1.0000i
>> abs(a)
ans = 3.1623
>> real(b)
ans = 2
>> imag(b)
ans = -4
>> complex(2,2)
ans = 2.0000 + 2.0000i
Gảng nàng Xuân Dưng
11
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
23
II. BIẾN VÀ CÁC THAO TÁC CỦA CÁC BIẾN
5. Một số hàm toán:
Hàm
sqrt(x)
exp(x)
abs(x)
sign(x)
Ý nghĩa
Căn bậc 2
Hàm mũ cơ số e
Giá trị tuyệt đối
Hàm dấu (=1 nếu x>0; = -1 nếu x<0; = 0 nếu x=0)
rem(x,y) Số dư phép chia x/y
sum(v)
prod(v)
min(v)
max(v)
Tổng các phần tử vector
Tích các phần tử vector
Phần tử vector bé nhất
Phần tử vector lớn nhất
mean(v) Giá trị trung bình cộng
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
24
Ví dụ 1:
>> x=4;
>> sqrt(x)
ans = 2
>> exp(x)
ans = 54.5982
>> sign(x)
ans = 1
>> rem(x,3)
ans = 1
>> v=[1 2 3];
>> min_v=min(v)
min_v = 1
>> mean(v)
ans = 2
>> sum(v)
ans = 6
12
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
25
Ví dụ 2: Tìm nghiệm của phương trình x2-3x+2=0
Trong command window:
>> a=1; b=-3; c=2;
>> x1=(-b+sqrt(b^2-4*a*c))/(2*a)
x1 =
2
>> x2=(-b-sqrt(b^2-4*a*c))/(2*a)
x2 =
1
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
26
III. SƠ LƯỢC VỀ ĐỒ HỌA TRONG MATLAB:
Các lệnh thông dụng trong đồ họa Matlab:
plot(x,y)
plot(x,y,z)
title
vẽ đồ thị theo tọa độ x-y
vẽ đồ thị theo tọa độ x-y-z
đưa các title vào trong hình vẽ
đưa các nhãn theo chiều x của đồ thị
đưa các nhãn theo chiều y của đồ thị
đưa các nhãn theo chiều z của đồ thị
vẽ lưới trên đồ thị
xlabel
ylabel
zlabel
grid
plot(y)
plot(x,y,’S’)
vẽ đồ thị theo y, bỏ qua chỉ số theo x
S dùng để qui định màu, nét vẽ…
Gảng nàng Xuân Dưng
13
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
27
III. SƠ LƯỢC VỀ ĐỒ HỌA TRONG MATLAB:
Các loại màu vẽ
Các loại Marker (điểm)
y
m
c
yellow
.
điểm
magenta
cyan
o
chữ o
dấu x
dấu +
dấu #
x
r
red
+
#
g
b
w
k
green
blue
Các loại nét vẽ
white
black
-
:
dấu -
dấu :
-. dấu -.
-- dấu --
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
28
III. SƠ LƯỢC VỀ ĐỒ HỌA TRONG MATLAB:
Ví dụ 1: Vẽ hàm sin2x, sinx2, (sinx)2
>> hold on
>> x=linspace(0,10);
>> y1=sin(2*x);
>> y2=sin(x.^2);
>> y3=(sin(x)).^2;
>> plot(x,y1,'g');
>> plot(x,y2,'m');
>> plot(x,y3,'b');
% green
% magenta
% blue
Gảng nàng Xuân Dưng
14
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
29
Giảng viên: Hoàng Xuân Dương
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
30
III. SƠ LƯỢC VỀ ĐỒ HỌA TRONG MATLAB:
Ví dụ 2: Vẽ đường Helix trong không gian 3D
>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t);
>> title(‘Vi du ve plot3 trong Matlab’);
Gảng nàng Xuân Dưng
15
CHƯƠNG 1: CÁC KHÁI NIỆM CƠ BẢN
31
IV. ÂM THANH TRONG MATLAB
sound(y)
gởi vector y ra loa, vector được sắp xếp
với biên độ lớn nhất
sound(y,f)
f dải tần (Hz)
Ví dụ: âm thanh với lệnh load
>> load train;
>> sound(y);
>> load chirp;
>> sound(y);
% giá trị âm thanh tàu hỏa
% được đưa vào tham số y
% tiếng chim kêu
Bài giảng Tin học chuyên ngành
32
Õ
CHƯƠNG 2:
16 2 3 13
1 1 1 1
⎤ ⎡
⎡
⎤
⎥
⎥
⎥
⎥
⎦
⎢
⎢
⎢
⎢
⎣
⎥ ⎢
1 2 3 4
⎥ ⎢
5 11 10 8
9 7 6 12
4 14 16 1
×
⎥ ⎢
1 3 6 10
⎥ ⎢
1 4 10 20
⎦ ⎣
Giảng viên: Hoàng Xuân Dương
16
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
33
I. MA TRẬN
II. CÁC MA TRẬN ĐẶC BIỆT
III. CÁC PHÉP TOÁN TRÊN MẢNG
IV. CÁC PHÉP TOÁN MA TRẬN
V. GIẢI HỆ PHƯƠNG TRÌNH ĐỘC LẬP TUYẾN TÍNH
VI. BÀI TẬP
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
34
I. MA TRẬN:
1. Vector-Đại lượng vô hướng-Ma trận:
Ma trận là đối tượng chủ yếu của Matlab
Các phần tử của ma trận được xếp theo hàng và cột
Đại lượng vô hướng (giá trị đơn) là ma trận có 1
hàng và một cột
Ma trận chỉ có 1 hàng hoặc một cột được gọi là vector
Để truy cập một phần tử của ma trận, sử dụng chỉ số
hàng và cột
17
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
35
I. MA TRẬN:
2. Một số qui ước về ma trận:
Tên ma trận phải bắt đầu bằng chữ cái
Bên phải dấu bằng là các giá trị ma trận được viết theo
thứ tự hàng trong dấu ngoặc vuông
Dấu chấm phẩy (;) phân cách hàng. Các giá trị trong
hàng được phân cách bằng dấu phẩy (,) hoặc khoảng
trắng. Dấu thập phân là dấu chấm (.). Kết thúc ma trận
là dấu (;)
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
36
I. MA TRẬN:
Ví dụ:
>> a=[1 2 3; 4 5 6; 7 8 9]
% ma trận 3 hàng 3 cột
a = 1
2
5
8
3
6
9
4
7
>> b=[1 2 3 4]
b = 1
% vector hàng
2
3
4
>> c=[1;2]
c = 1
% vector cột
2
>> d=[1]
d = 1
% giá trị đơn
>> a(2,3)
ans = 6
% phần tử ở hàng 2 cột 3
18
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
37
I. MA TRẬN:
3. Khai báo vector và ma trận:
Khai báo
Ý nghĩa
[x1 x2…; x3 x4…]
Nhập giá trị cho vector và ma trận
Toán tử (:)
start:increment:destination
linspace(start,dest,number) Khai báo tuyến tính cho vector
logspace(start,dest,number) Khai báo logarithm cho vector
rand(line,column)
randn(line,column)
Ma trận nhận giá trị ngẫu nhiên 0->1
Ma trận nhận giá trị ngẫu nhiên
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
38
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Kiểu liệt kê trực tiếp:
Các phần tử được liệt kê trong dấu ngoặc vuông:
>> A=[3,5];
>> B=[1.7,3.2];
>> C=[-1 0 0 ; -1 1 0 ; 1 -1 0; 0 0 2]; Hoặc:
>> C = [-1 0 0
-1 1 0
1 -1 0
0 0 2 ];
Gảng vnHng Xuân Dưng
19
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
39
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Kiểu liệt kê trực tiếp (tt)
>> F = [1, 52, 45, 84, 94, 5, 65, 42, 85,…
23, 52, 65, 21, 74];
Định nghĩa ma trận từ ma trận khác:
>> B=[1 2 4];
>> S=[3 B];
% S=[3 1 2 4]
Mở rộng ma trận:
>> S(5)=9;
>> S(8)=3;
% S(6), S(7) nhận giá trị 0
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
40
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Kiểu liệt kê trực tiếp (tt)
Khai báo tuyến tính:
>> x=linspace(2,20,10)
x = 2
>> logspace(1,2,5)
ans = 10.0000 17.7828 31.6228 56.2341 100.0000
4
6
8
10 12 14 16 18 20
>> y=linspace(1,10);
% y=vector 100 phần tử
Gảng vnHng Xuân Dưng
20
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
41
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Từ một file dữ liệu:
Một file văn bản matran.dat có nội dung:
2 5 9 1
4 6 8 3
2 4 5 1
>> load c:\matran.dat
>> matran
matran=
2 5 9 1
4 6 8 3
2 4 5 1
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
42
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Sử dụng toán tử (:)
Tại vị trí dấu (:) trong ma trận, nó đại diện cho tất cả các
hàng hoặc tất cả các cột
>> x=A(:,1);
>> y=A(:,2);
% đưa dữ liệu ở cột 1 vào vector x
% đưa dữ liệu ở cột 2 vào vector y
Dấu (:) sử dụng làm ký hiệu tổng quát cho ma trận mới
>> H=1:5
H = 1 2 3 4 5
>> TIME=0.0:0.5:2.5;
TIME = 0.0 0.5 1.0 1.5 2.0 2.5
Gảng vnHng Xuân Dưng
21
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
43
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Sử dụng toán tử (:)
Dấu (:) dùng chọn các ma trận con từ ma trận khác
Ví dụ:
>> C=[-1 0 0
C_1= [ 0 0
-1 0
-1 2
2 -1];
1 -1 0
1 -1 2
0 2 -1];
>> C_1=C(:,2:3);
>> C_2=C(3:4,1:2);
C_2= [ 1 -1
0 2];
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
44
I. MA TRẬN:
3. Khai báo vector và ma trận (tt)
¾
Sử dụng toán tử (:)
C(:) tương đương vector có một cột, phần tử của cột
chính là các cột của ma trận C
ans =
>> C = [ 1 4 7
2 5 8
1
2
3
4
5
6
7
8
9
3 6 9];
>> C(:)
22
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
45
I. MA TRẬN:
3. Khai báo vector và ma trận:
¾
Trực tiếp từ bàn phím:
>> z=input(‘Nhap gia tri cho z:’);
Nếu không có dữ liệu, z là ma trận rỗng
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
46
I. MA TRẬN:
4. Hiển thị ma trận:
Kết quả tính toán có thể được định dạng bằng lệnh format.
long
số chấm cố định là 15 con số
số dấu chấm động 15 con số
số chấm cố định là 5 con số (mặc định)
số dấu chấm động 5 con số
long e
short
short e
Ví dụ:
>> pi
ans = 3.1416
>> format long
>> pi
ans = 3.14159265358979
Gảng vnHng Xuân Dưng
23
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
47
I. MA TRẬN:
4. Hiển thị ma trận (tt)
disp Î Xuất chuỗi ký tự ra màn hình
fprintf Î cho phép xuất ra theo định dạng. Với cú pháp:
>> fprintf(định dạng, ma trận);
Kiểu loại
%c
Dạng in ra
Ký tự
\n
Ý nghĩa
Xuống dòng
tab
Kiểu ký tự
Kiểu chuỗi
%s
\t
%d
Kiểu số nguyên thập phân
Kiểu số dấu chấm tĩnh
Kiểu số dấu chấm động
Kiểu số Hex
\b
Backspace
Carriage return
From feed
%
%f
\r
%e
\f
%x
%%
%bx
Kiểu chấm tĩnh trong Hex 64 bits '' or \'' '
CHƯƠNG 2: MA TRẬN VÀ CÁC PHÉP TOÁN MA TRẬN
48
I. MA TRẬN:
4. Hiển thị ma trận (tt)
Ví dụ 1:
>> disp('Hello')
Hello
>> disp(pi)
3.1416
>> x=[1 2 3 4];
>> disp(x)
1
2
3
4
>> temp=78;
>> fprintf(‘Nhiệt độ là: \n %6.1f độ F’,temp);
Nhiệt độ là:
78.0 độ F
24
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tin học chuyên ngành - Chương 1: Các khái niệm cơ bản - Hoàng Xuân Dương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_tin_hoc_chuyen_nganh_chuong_1_cac_khai_niem_co_ban.pdf

