[CPP] Các phép toán với kiểu dữ liệu logic

by | Aug 6, 2024 | C/C++, Ngôn ngữ lập trình | 0 comments

Các Phép Toán Logic trong C++: AND, OR, NOT

Trong C++, các phép toán logic được sử dụng để thao tác và kiểm tra các giá trị logic (bool). Dưới đây là mô tả và ví dụ về các phép toán logic cơ bản: AND, OR, và NOT.

1. Phép toán AND (&&)

Phép toán AND (&&) trả về true nếu và chỉ nếu cả hai toán hạng đều là true.

Bảng chân lý cho AND (&&):

ABA && B
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

Ví dụ:

#include <iostream>
using namespace std;

int main() {
    bool a = true;
    bool b = false;

    if (a && b) {
        cout << "Both a and b are true." << endl;
    } else {
        cout << "Either a or b is false." << endl;
    }

    return 0;
}

2. Phép toán OR (||)

Phép toán OR (||) trả về true nếu ít nhất một trong hai toán hạng là true.

Bảng chân lý cho OR (||):

ABAB
truetruetrue
truefalsetrue
falsetruetrue
falsefalsefalse

Ví dụ:

#include <iostream>
using namespace std;

int main() {
    bool a = true;
    bool b = false;

    if (a || b) {
        cout << "At least one of a or b is true." << endl;
    } else {
        cout << "Both a and b are false." << endl;
    }

    return 0;
}

3. Phép toán NOT (!)

Phép toán NOT (!) đảo ngược giá trị logic của toán hạng. Nếu toán hạng là true, nó sẽ trả về false, và ngược lại.

Bảng chân lý cho NOT (!):

A!A
truefalse
falsetrue

Ví dụ:

#include <iostream>
using namespace std;

int main() {
    bool a = true;

    if (!a) {
        cout << "a is false." << endl;
    } else {
        cout << "a is true." << endl;
    }

    return 0;
}

Kết hợp các phép toán logic

Các phép toán logic có thể được kết hợp để tạo ra các biểu thức điều kiện phức tạp hơn.

Ví dụ:

#include <iostream>
using namespace std;

int main() {
    bool a = true;
    bool b = false;
    bool c = true;

    if (a && (b || c)) {
        cout << "Expression is true." << endl;
    } else {
        cout << "Expression is false." << endl;
    }

    return 0;
}

Tóm tắt

  • Phép toán AND (&&) yêu cầu cả hai toán hạng phải true để trả về true.
  • Phép toán OR (||) yêu cầu ít nhất một trong hai toán hạng phải true để trả về true.
  • Phép toán NOT (!) đảo ngược giá trị logic của toán hạng.

Các phép toán này rất hữu ích trong việc kiểm tra các điều kiện và điều khiển luồng chương trình trong lập trình C++.