Chuyển đến nội dung chính

Toán Tử Trong C++

Trong C++, toán tử là các ký hiệu dùng để thực hiện các phép toán với biến.

Toán tử số học

Toán tử số học dùng để thực hiện các phép toán cơ bản như:

+: Cộng, tính tổng của hai số.
-: Trừ, lấy hiệu của hai số.
*: Nhân, tìm tích của hai số.
/: Chia, lấy thương của số thứ nhất chia cho số thứ hai.
%: Chia lấy phần dư, lấy phần dư sau dấu phẩy của thương.

Ví dụ:

int a = 10;
int b = 2;
cout << "Tổng: " << (a + b) << endl;	// 10 + 2 = 12
cout << "Hiệu: " << (a - b) << endl;	// 10 - 2 = 8
cout << "Tích: " << (a * b) << endl;	// 10 x 2 = 20
cout << "Thương: " << (a / b) << endl;	// 10 ÷ 2 = 5
cout << "Phần dư: " << (a % b) << endl;	// 10 ÷ 2 = 0

đối với phép chia / giữa số nguyên, C++ chỉ lấy phần nguyên của kết quả.

int a = 7;
int b = 3;
cout << (a / b) << endl;	// kết quả trả về 3

Khi làm việc với số thực (float hoặc double), phép chia sẽ trả về giá trị đây đủ của kết quả, bao gồm cả phần thập phân phía sau

float x = 10.0;
float y = 3.0;
cout << (x / y) << endl;     // kết quả trả về 3.33333

phép chia lấy dư % sẽ trả về phần thập phân phía sau của kết quả.

int a = 5;
int b = 2;
cout << (a % b) << endl;
// Kết quả là 2.5 
// Vì là lấy phần dư nên kết quả trả về là 5
Chú ý! đối với phép chia lấy dư % thì nó chỉ thực hiện được với kiểu dữ liệu là số nguyên int.

Toán tử so sánh

Toán tử so sánh trong C++ được dùng để so sánh hai giá trị, rồi trả về kết quả là true hoặc fasle.

==: So sánh bằng, kiểm tra xem hai giá trị có bằng nhau không.
!=: Khác nhau, kiểm tra xem hai giá trị có khác nhau không.
>: Lớn hơn, kiểm tra xem giá trị số bên trái có lớn hơn số bên phải không.
<: Bé hơn, kiểm tra xem giá trị số bên trái có bé hơn số bên phải không.
>=: Lớn hơn hoặc bằng, kiểm tra xem giá trị số bên trái có hơn hoặc bằng số bên phải không.
<=: Bé hơn hoặc bằng, kiểm tra xem giá trị của số bên trái có bé hơn hoặc bằng số bên phải không.

Ví dụ:

int x = 5;
int y = 10;
cout << (x > y) << endl;	// Kết quả: 0 (false)
cout << (x < y) << endl;	// Kết quả: 1 (true)

Kết quả của toán tử so sánh luôn là kiểu dữ liệu bool (là true hoặc false), toán tử so sánh thường được sử dụng trong các câu lệnh điều kiện.

Toán tử logic

Toán tử logic được dùng để kiểm tra điều kiện và kết hợp các điều kiện lại với nhau, kết quả của toán tử logic luôn là kiểubool trả về là true hoặc false.

&&: toán tử AND, trả về kết quả là true khi cả hai điều kiện đều đúng, nếu một trong hai điều kiện sai thì sẽ trả về false.
||: toán tử OR, trả về kết quả là true khi ít nhất một trong hai điều kiện là đúng.
!: toán tử NOT, đảo ngược lại giá trị của điều kiện, nếu điều kiện là true thì kết quả trả về là false và ngược lại.

Ví dụ toán tử AND:

bool x = true;
bool y = false;

cout << (x && y) << endl;	// Kết quả là false
cout << (x || y) << endl;	// Kết quả là true
cout << (!y) << endl;		// Kết quả là true

Ứng dụng của toán tử logic dùng trong Kiểm tra nhiều điều kiện cùng lúc, tối ưu hóa điều kiện trong vòng lặp, xây dựng các thuật toán kiểm tra trạng thái.

Toán tử gán

Toán tử gán trong C++ được sử dụng để gán giá trị cho biến, ngoài ra toán tử gán còn có thể sử dụng kết hợp với phép toán và gán kết quả cùng một lúc.

=: phép gán cơ bản, dùng để gán giá trị cho một biến.
+=: phép cộng rồi gán, dùng để tăng giá trị cho biến.
-=: phép trừ rồi gán, dùng để giảm giá trị của biến.
*=: phép nhân rồi gán, nhân giá trị của biến lên.
/=: phép chia rồi gán, chia giá trị của biến.
%=: phép lấy dư rồi gán, chia giá trị của của biến, rồi lấy phần dư gán vào biến.

Ví dụ:

int a = 5;		// Gián giá trị 5 cho biến a
a += 3;			// Tương đương với a = a + 3; Kết quả: a = 8
a -= 2;			// Tương đương với a = a - 3; Kết quả: a = 6
a *= 4;			// Tương đương với a = a * 4: Kết quả: a = 24
a /= 2;			// Tương đương với a = a / 2: Kết quả: a = 12
a %= 5;			// Tương đương với a = a % 5: Kết quả: a = 2

Toán tử gán kết hợp giúp cho đoạn code ngắn gọn và dễ đọc hơn.

Lưu ý! Khi sử dụng toán tử /= hoặc %= cần đảm bảo rằng giá trị khác số "0" để tránh lỗi chia cho số 0.

Toán tử bitwise

Toán tử Bitwise là nhóm toán tử dùng để thao tác trực tiếp trên các bit của dữ liệu nhị phân, toán tử này thường được sử dụng trong các ứng dụng đòi hỏi hiệu suất cao hoặc thao tác trực tiếp với phần cứng.

&: Gọi là AND bit, đặt bit về 1 nếu cả hai bít tương ứng đều là 1, ngược lại thì là 0.
|: Gọi là OR bit, đặt bit về 1 nếu một trong hai bit là 1, nếu cả hai bit đều là 0 thì sẽ đặt bit về 0.
^: Gọi là XOR bit, đặt bit về 1 nếu hai bit khác nhau, ngược lại thì là 0.
~: Đảo bit NOT, đảo ngược toàn bộ bit 0 thành 1 và ngược lại.
<<: Dịch trái, dịch tất cả bit sang trái và thêm 0 vào cuối.
>>: Dịch phải, dịch tất cả bit sang phải, và loại bỏ bit cuối cùng.

Ví dụ:

int a = 5;		// 0101 (nhị phân)
int b = 3;		// 0011 (nhị phân)

cout << "AND: " << (a & b) << endl;		// Kết quả: 1
cout << "OR: " << (a | b) << endl;		// Kết quả: 0111 (7)
cout << "XOR: " << (a ^ b) << endl;		// Kết quả: 0110 (6)
cout << "NOT: " << (~a) << endl;		// Kết quả: -6
cout << "Dịch trái: " << (a << 1) << endl;	// Kết quả: 1010 (10)
cout << "Dịch phải: " << (a >> 1) << endl;	// Kết quả: 0010 (2)

Ứng dụng của thuật toán bitwise:
-Tối ưu hiệu suất: Thao tác trên bit nhanh hơn so với các phép toán số học thông thường.
-Quản lý quyền truy cập: Dùng bit để lưu trạng thái (bật / tắt) trong hệ thống.
-Xử lý đồ họa và dữ liệu: Dùng trong các thuật toán nén dữ liệu hoặc xử lý hình ảnh.
-Mã hóa và bảo mật: Sử dụng XOR để mã hóa dữ liệu một các đơn giản.

Toán tử điều kiện

Toán tử điều kiện, hay còn gọi là toán tử ba ngôi, nó là một cách ngắn gọn để viết câu lệnh điều kiện. Nó giúp code trở nên súc tích hơn, nhất là khi chỉ có một biều thức cần kiểm tra.

Cú pháp câu điều kiện:

(condition) ? value_if_true : value_if_false;

condition: Biểu thức điều kiện.
value_if_true: Giá trị trả về nếu điều kiện đúng.
value_if_false: Giá trị trả về nếu điều kiện sai.

Ví dụ về toán tử điều kiện:

int a = 10;
int b = 20;
int max = (a > b) ? a : b;	// Nếu a lớn hơn b thì max = a, không thì ngược lại.
// Kết quả: max = b

Ưu điểm của nó là ngắn gọn, dễ đọc. Nhưng nhược điểm là khó hiểu và không thể hoàn toàn thay thế cho hàm xử lý điều kiện được.

Kết bài

Toán tử trong C++ là một phần không thể thiếu, cho phép bạn thực hiện các phép toán, so sánh, kiểm tra điều kiện, và nhiều thao tác khác trên dữ liệu.
Toán tử số học: Thực hiện các phép tính cơ bản như cộng, trừ, nhân, chia và lấy phần dư, đóng vai trò nền tảng trong lập trình.
Toán tử so sánh: Giúp so sánh các giá trị và xác định mối quan hệ giữa chúng, trả về kết quả true hoặc false.
Toán tử logic: Cho phép kết hợp và xử lý nhiều điều kiện, thường được sử dụng trong các câu lệnh điều kiện.
Toán tử gán: Đơn giản hóa việc gán giá trị cho biến, đặc biệt khi kết hợp với các phép toán số học.
Toán tử bitwise: Thao tác trực tiếp trên các bit của dữ liệu, cực kỳ hữu ích trong xử lý nhị phân, tối ưu hiệu suất, và các ứng dụng liên quan đến mã hóa dữ liệu.
Toán tử điều kiện (?:): Giúp viết câu lệnh điều kiện ngắn gọn hơn, tăng tính súc tích cho mã nguồn.
Mỗi loại toán tử đều có vai trò cụ thể và ý nghĩa riêng trong việc xử lý dữ liệu và xây dựng thuật toán. Hiểu rõ và sử dụng chúng một cách hiệu quả sẽ giúp bạn viết mã nguồn tối ưu, dễ đọc và sáng tạo hơn trong lập trình.

Nhận xét

Bài đăng phổ biến từ blog này

Biến Trong Lập Trình C++

Trong lập trình, biến (variable) có thể hiểu là một công cụ dùng để chứa dữ liệu, khi ta đặt một biến thì một vùng nhớ trên RAM sẽ được cấp cho biến đó, chương trình có thể sử dụng, thay đổi hoặc lưu dữ liệu trên vùng nhớ này, cho nên giá trị của biển có thể được thay đổi trong suốt quá trình thực thi chương trình. Mỗi biến sẽ được gán một tên (identifier) để coder có thể sử dụng và thao tác với dữ liệu trong đó.

Tạo Usb Boot Cài Đặt Windows 11 Bằng Windows Media Creation Tool

USB boot Windows là một thiết bị lưu trữ USB được tạo để chứa hệ điều hành Windows, cho phép bạn khởi động và cài đặt Windows trên máy tính.