Bài 6: Phép toán, biểu thức, câu lệnh gán


1. Phép gán

Trong Toán học

Các phép toán số học với số nguyên: + (cộng), - (trừ), . (nhân), div (chia nguyên), mod (lấy phần div)

+ Các phép toán số học với số thực: + (cộng). - (trừ), . (nhân),: (chia)

+ Các phép toán quan hệ: < (nhỏ hơn), < (nhỏ hơn hoặc bằng), > (lớn hơn hoặc bằng). = (bằng), * (khác)

+ Các phép toán logic: -1 (phủ định), \(\vee\) (hoặc), \(\wedge\) (và)

- Trong Pascal:

Các phép toán số học với số nguyên: +, -,*, div, mod

+ Các phép toán số học với số thực: +,-, *,/

+ Các phép toán quan hệ: <, <=, >=, =, < >

+ Các phép toán logic: not, or, and

Chú ý 1:

- Kết quả của phép toán quan hệ cho giá trị logic.

- Một trong những ứng dụng của phép toán logic là để tạo ra các biểu thức phức tạp từ các quan hệ đơn giản.

2. Biểu thức số học

- Chỉ dùng cặp ngoặc tròn để xác định trình tự thực hiện phép toán trong trường hợp cần thiết.

- Viết lần lượt từ trái qua phải

- Không được bỏ qua dấu nhân (*) trong tích.

- Các phép toán được thực hiện theo thứ tự:

+ Thực hiện các phép toán trong ngoặc trước;

+ Trong dãy các phép toán không chứa ngoặc thì thực hiện từ trái sang phải, theo thứ tự các phép toán nhân (*), chia nguyên (div), lấy phần dư (moiỉ) thực hiện trước và các phép toán cộng (+), trừ (-) thực hiện sau.

Chú ý 2:

- Nếu biểu thức thứa một hằng hay biến kiểu thực thì ta có biểu chức số học thực, giá trị của biểu thức cũng thuộc kiểu thực.

- Trong một số trường hợp nên dùng biến trung gian để có thể tránh được việc tính một biểu thức nhiều lần.

3. Hàm số học chuẩn

- Hàm sổ học chuẩn là những hàm tính giá trị những hàm toán học thường dùng trong các ngôn ngữ lập trình.

- Mỗi hàm chuẩn có tên chuẩn riêng. Đối số của hàm là một hay nhiều biểu thức số học và được đặt trong cặp ngoặc tròn (và) sau tên hàm.

- Kết quả của hàm có thể là nguyên hoặc thực hay phụ thuộc vào kiểu của đối số.

- Một số hàm chuẩn thường dùng:

 Bảng 2. Một số hàm chuẩn thường dùng

4. Biểu thức quan hệ

- Hai biểu thức cùng kiểu liên kết với nhau bởi phép toán quan hệ cho ta một biểu thức quan hệ.

- Biểu thức quan hệ có dạng: ​< biểu thức 1 > < phép toán quan hệ > < biểu thức 2 >

- Biểu thức quan hệ được thực hiện theo trình tự:

+ Tính giá trị các biểu thức;

+ Thực hiện phép toán quan hệ.

+ Kết quả của biểu thức quan hệ là giá trị logic: true (đúng) hoặc false (sai)

5. Biểu thức logic

- Biêu thức lôgic đơn giản là biến lôgic hoặc lôgic.

- Biểu thức lôgic là các biểu thức logic đơn giản, các biểu thức quan hệ liên kết với nhau bởi phép toán logic. Giá trị biểu thức logic là true hoặc false. Các biểu thức quan hệ thường đặt trong cặp ngoặc (và ).

- Dấu phép toán not được viết trước biểu thức cần phủ định.

- Các phép toán and và or dùng để kết hợp nhiều biểu thức lôgic hoặc quan hệ, thành một biểu thức thường được dùng để diễn tả các điều kiện phức tạp.

- Ta có bảng giá trị phép toán logic:

 

Bảng 3. Bảng giá trị phép toán logic

6. Câu lệnh gán

- Lệnh gán trong Pascal có dạng: < tên biến > := < biểu thức >;

- Trong trường hợp đơn giản, tên biếntên của biến đơn.

- Lệnh gán có chức năng gán giá trị cho một biến, nghĩa là thay giá trị cũ trong ô nhớ (tương ứng với biến) bởi giá trị mới. Giá trị mới là giá trị của một biểu thức. Biểu thức này đã có giá trị xác định thuộc phạm vi của biến. Kiểu giá trị của biểu thức phải phù hợp với kiểu của biến. Một biến chỉ được coi là đã xác định giá trị khi đã nhận được giá trị từ ngoài (đọc từ bàn phím hoặc từ tệp,...) hoặc trực tiếp qua lệnh gán trong chương trình.

Ví dụ 1: 

i := i + 1;

S := S + 1;

Một số điểm chú ý khi sử dụng lệnh gán:

- Phải viết đúng kí hiệu lệnh gán. Ví dụ 2: trong Pascal kí tự hai dấu chấm phải viết liền kí tự dấu bằng (:);

- Biểu thức bên phải cần được xác định giá trị trước khi gán, nghĩa là mọi biến trong biểu thức đã được xác định giá trị và các phép toán trong biểu thức có thể thực hiện được trong miền giá trị của biến.

- Kiểu của biến phải phù hợp với kiểu dữ liệu của giá trị biểụ thức bên phải.

Trong lập trình, biểu thức số học là một biến kiểu số hoặc một hằng số hoặc các biến kiểu số và các hằng số liên kết với nhau bởi một số hữu hạn phép toán số học, các dấu ngoặc tròn (và) tạo thành một biểu thức có dạng tương tự như cách viết trong toán học với những quy tắc sau:

7. Bài tập

7.1. Bài tập 1:

Biểu diễn biểu thức sau sang ngôn ngữ lập trình Pascal:

a. 2a + 3b +c;

b. \(\frac{x+y}{1-\frac{2}{z}}+\frac{x^2}{2z}\)

c. \(\frac{-b+\sqrt{b^2-4ac}}{2a}\)

Gợi ý làm bài:

a. 2*a + 3*b + c;

b. ((x+y)/(1-(2/z)))+(x*x/(2*z));

c. (-b+sqrt(b*b-4*a*c))/(2*a).

7.2. Bài tập 2:

Ví dụ biểu thức quan hệ và biểu thức logic.

Gợi ý làm bài:

Biểu thức quan hệ:

x > 5;

2*x +1 >= y

Biểu thức logic:

(A > B) or ((X + 1) > Y)

(5 > 2) and ((3 + 2) < 4)

(x >= 5) and (x <= 11)

Not(x < 1)

7.3. Bài tập 3:

Ví dụ câu lệnh gán.

Gợi ý làm bài:

(A > B) or ((X + 1) > Y)

(5 > 2) and ((3 + 2) < 4)

(x >= 5) and (x <= 11)

Not(x < 1)

1. Phép gán

Trong Toán học

Các phép toán số học với số nguyên: + (cộng), - (trừ), . (nhân), div (chia nguyên), mod (lấy phần div)

+ Các phép toán số học với số thực: + (cộng). - (trừ), . (nhân),: (chia)

+ Các phép toán quan hệ: < (nhỏ hơn), < (nhỏ hơn hoặc bằng), > (lớn hơn hoặc bằng). = (bằng), * (khác)

+ Các phép toán logic: -1 (phủ định), \(\vee\) (hoặc), \(\wedge\) (và)

- Trong Pascal:

Các phép toán số học với số nguyên: +, -,*, div, mod

+ Các phép toán số học với số thực: +,-, *,/

+ Các phép toán quan hệ: <, <=, >=, =, < >

+ Các phép toán logic: not, or, and

Chú ý 1:

- Kết quả của phép toán quan hệ cho giá trị logic.

- Một trong những ứng dụng của phép toán logic là để tạo ra các biểu thức phức tạp từ các quan hệ đơn giản.

2. Biểu thức số học

- Chỉ dùng cặp ngoặc tròn để xác định trình tự thực hiện phép toán trong trường hợp cần thiết.

- Viết lần lượt từ trái qua phải

- Không được bỏ qua dấu nhân (*) trong tích.

- Các phép toán được thực hiện theo thứ tự:

+ Thực hiện các phép toán trong ngoặc trước;

+ Trong dãy các phép toán không chứa ngoặc thì thực hiện từ trái sang phải, theo thứ tự các phép toán nhân (*), chia nguyên (div), lấy phần dư (moiỉ) thực hiện trước và các phép toán cộng (+), trừ (-) thực hiện sau.

Chú ý 2:

- Nếu biểu thức thứa một hằng hay biến kiểu thực thì ta có biểu chức số học thực, giá trị của biểu thức cũng thuộc kiểu thực.

- Trong một số trường hợp nên dùng biến trung gian để có thể tránh được việc tính một biểu thức nhiều lần.

3. Hàm số học chuẩn

- Hàm sổ học chuẩn là những hàm tính giá trị những hàm toán học thường dùng trong các ngôn ngữ lập trình.

- Mỗi hàm chuẩn có tên chuẩn riêng. Đối số của hàm là một hay nhiều biểu thức số học và được đặt trong cặp ngoặc tròn (và) sau tên hàm.

- Kết quả của hàm có thể là nguyên hoặc thực hay phụ thuộc vào kiểu của đối số.

- Một số hàm chuẩn thường dùng:

 Bảng 2. Một số hàm chuẩn thường dùng

4. Biểu thức quan hệ

- Hai biểu thức cùng kiểu liên kết với nhau bởi phép toán quan hệ cho ta một biểu thức quan hệ.

- Biểu thức quan hệ có dạng: ​< biểu thức 1 > < phép toán quan hệ > < biểu thức 2 >

- Biểu thức quan hệ được thực hiện theo trình tự:

+ Tính giá trị các biểu thức;

+ Thực hiện phép toán quan hệ.

+ Kết quả của biểu thức quan hệ là giá trị logic: true (đúng) hoặc false (sai)

5. Biểu thức logic

- Biêu thức lôgic đơn giản là biến lôgic hoặc lôgic.

- Biểu thức lôgic là các biểu thức logic đơn giản, các biểu thức quan hệ liên kết với nhau bởi phép toán logic. Giá trị biểu thức logic là true hoặc false. Các biểu thức quan hệ thường đặt trong cặp ngoặc (và ).

- Dấu phép toán not được viết trước biểu thức cần phủ định.

- Các phép toán and và or dùng để kết hợp nhiều biểu thức lôgic hoặc quan hệ, thành một biểu thức thường được dùng để diễn tả các điều kiện phức tạp.

- Ta có bảng giá trị phép toán logic:

 

Bảng 3. Bảng giá trị phép toán logic

6. Câu lệnh gán

- Lệnh gán trong Pascal có dạng: < tên biến > := < biểu thức >;

- Trong trường hợp đơn giản, tên biếntên của biến đơn.

- Lệnh gán có chức năng gán giá trị cho một biến, nghĩa là thay giá trị cũ trong ô nhớ (tương ứng với biến) bởi giá trị mới. Giá trị mới là giá trị của một biểu thức. Biểu thức này đã có giá trị xác định thuộc phạm vi của biến. Kiểu giá trị của biểu thức phải phù hợp với kiểu của biến. Một biến chỉ được coi là đã xác định giá trị khi đã nhận được giá trị từ ngoài (đọc từ bàn phím hoặc từ tệp,...) hoặc trực tiếp qua lệnh gán trong chương trình.

Ví dụ 1: 

i := i + 1;

S := S + 1;

Một số điểm chú ý khi sử dụng lệnh gán:

- Phải viết đúng kí hiệu lệnh gán. Ví dụ 2: trong Pascal kí tự hai dấu chấm phải viết liền kí tự dấu bằng (:);

- Biểu thức bên phải cần được xác định giá trị trước khi gán, nghĩa là mọi biến trong biểu thức đã được xác định giá trị và các phép toán trong biểu thức có thể thực hiện được trong miền giá trị của biến.

- Kiểu của biến phải phù hợp với kiểu dữ liệu của giá trị biểụ thức bên phải.

Trong lập trình, biểu thức số học là một biến kiểu số hoặc một hằng số hoặc các biến kiểu số và các hằng số liên kết với nhau bởi một số hữu hạn phép toán số học, các dấu ngoặc tròn (và) tạo thành một biểu thức có dạng tương tự như cách viết trong toán học với những quy tắc sau:

7. Bài tập

7.1. Bài tập 1:

Biểu diễn biểu thức sau sang ngôn ngữ lập trình Pascal:

a. 2a + 3b +c;

b. \(\frac{x+y}{1-\frac{2}{z}}+\frac{x^2}{2z}\)

c. \(\frac{-b+\sqrt{b^2-4ac}}{2a}\)

Gợi ý làm bài:

a. 2*a + 3*b + c;

b. ((x+y)/(1-(2/z)))+(x*x/(2*z));

c. (-b+sqrt(b*b-4*a*c))/(2*a).

7.2. Bài tập 2:

Ví dụ biểu thức quan hệ và biểu thức logic.

Gợi ý làm bài:

Biểu thức quan hệ:

x > 5;

2*x +1 >= y

Biểu thức logic:

(A > B) or ((X + 1) > Y)

(5 > 2) and ((3 + 2) < 4)

(x >= 5) and (x <= 11)

Not(x < 1)

7.3. Bài tập 3:

Ví dụ câu lệnh gán.

Gợi ý làm bài:

(A > B) or ((X + 1) > Y)

(5 > 2) and ((3 + 2) < 4)

(x >= 5) and (x <= 11)

Not(x < 1)

Bài học tiếp theo

Bài 7: Các thủ tục vào/ra đơn giản
Bài 8: Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
Bài tập và thực hành 1

Bài học bổ sung