Ta có thể dùng MATLAB để lập trình.
Ngoài các phép toán số học ta cần chú ý đến
Những phép toán quan hệ: < nhỏ hơn, <= nhỏ hơn hoặc bằng, > lớn hơn, >= lớn hơn hoặc bằng,
== bằng, ~= không bằng;
Những phép toán logic : & và, | hoặc, ~ không;
10.1. Thủ tục vào và xuất dữ liệu
Nhập dữ liệu
Để nhập dữ liệu từ bàn phím sử dụng lệnh input
a = input(‘Nhap vao gia tri cua bien a = ’);
Khi đó trên cửa sổ lệnh sẽ xuất hiện dòng nhắc: Nhap vao gia tri cua bien a =
cho phép nhập từ bàn phím giá trị của a.
Xuất dữ liệu
Sử dụng lệnh disp
disp(‘noi dung’) % Hiện thị ra màn hình nội dung văn bản giữa hai dấu ‘ ’
disp([danh sach các biến]) % Hiển thị ra m/hình g/trị các biến trong danh sách % các biến trong danh sách được ngăn cách nhau bởi dấu phẩy hoặc dấu cách
10.2. Các cấu trúc vòng lặp
for : vòng lặp for cho phép lặp lại một nhóm các lệnh một số lần đã xác định trước, nó đi kèm với end để kết thúc các lệnh.
for i = array Nhóm lệnh
end
Các lệnh trong nhóm lệnh được thực hiện một lần cho tất cả các cột của mảng array, cuối mỗi vòng lặp i được gán cho giá trị của phần tử cột tiếp theo.
Thí dụ 99: Tính tổng 1 +1/2 + 1/3 + . . . + 1/1000.
Thí dụ 100: Đảo ngược dãy số 7 5 3 6 4 2 1 0 9 8.
Vòng lặp for không thể kết thúc bằng cách gán lại biến điều khiển trong vòng lặp.
Các vòng lặp for có thể lồng vào nhau
Thí dụ 102: Viết chương trình cho ra một ma trận cỡ 3x4 mà phần tử ở hàng i cột j là 1/(i+j)
Thí dụ 103: Ma trận Vandermonde là ma trận có các cột là lũy thừa của một véc tơ v tức là A(i,j) = v(i)^(n-j). Hãy viết ma trận Vandermonde với v=(1:0.5:3).
While : vòng lặp while cho phép lặp lại một nhóm các lệnh theo một điều kiện nào đó một số lần nhưng không biết trước số lần đó. Nó đi kèm với end để kết thúc các lệnh.
while <biểu thức logic> Nhóm lệnh
Thí dụ 104: Lập chương trình tính số Esp là số dương nhỏ nhất có thể ghi trong máy (tức là số mà 1+Eps vẫn cho giá trị lớn hơn 1 ở trong máy. Tính số lần lặp.
Thí dụ 105: Tìm số n lớn nhất để giai thừa của nó (n!) là một số không vượt quá 10100.
10.3. Các cấu trúc điều khiển luồng
Câu lệnh điều kiện if đánh giá một biểu thức logic và thực hiện một nhóm các lệnh khi biểu thức đó là đúng.
if <biểu thức logic> Nhóm lệnh
Lệnh if có thể bổ sung thêm else cho phép thực hiện nhóm các lệnh thứ 2 khi biểu thức logic sai.
if <biểu thức điều kiện> Nhóm lệnh 1
else
Nhóm lệnh 2
end
Nếu có nhiều biểu thức logic thì ta có thể dùng chuỗi các lệnh
if biểu thức logic 1 Nhóm lệnh 1
elseif biểu thức logic 2 Nhóm lệnh 2
elseif biểu thức logic 3 Nhóm lệnh 3
...
else
Nhóm lệnh n
Thí dụ 106: Tính tiền nước sạch sinh hoạt của hộ gia đình theo khung giá sau: Sử dụng 20m³ đầu tiên: 5.300 đồng/m³; Sử dụng từ 21m³ - 30m³: 7.500 đồng/m³; Sử dụng từ 31m³ - 40m³: 8.300 đồng/m³; Sử dụng trên 40m³: 10.000 đồng/m³
Thí dụ 107: Tìm số n lớn nhất để giai thừa của nó (n!) là một số không vượt quá 10100.
Bài tập: Lập trình tính giá điện sinh hoạt theo khung giá bán lẻ:
Số TT Mức sử dụng của một hộ trong tháng Giá (đồng/kWh) 1 Cho 50 kWh (cho hộ nghèo và thu nhập thấp) 993