Giới thiệu
Trong bài học trước, chúng ta đã tìm hiểu về kiểu dữ liệu ký tự trong C++ và những vấn đề liên quan khi sử dụng. Ngoài các kiểu dữ liệu như số nguyên, số thực và ký tự, trong C++ còn có một loại kiểu dữ liệu quan trọng khác. Trong bài học hôm nay, chúng ta sẽ tìm hiểu về "Kiểu luận lý và cơ bản về Câu điều kiện If trong C++".
Nội dung
Để hiểu bài này tốt nhất, bạn nên có kiến thức cơ bản về các khái niệm sau:
- Biến trong C++
- Các kiểu dữ liệu cơ bản trong C++ (số nguyên, số thực, ký tự)
Trong bài viết này, chúng ta sẽ tìm hiểu về:
- Tổng quan về kiểu luận lý (Boolean)
- Cơ bản về câu điều kiện If trong C++ và kiểu luận lý
Tổng quan về kiểu luận lý (Boolean)
Trong bài học trước, bạn đã học về các kiểu dữ liệu số nguyên và số thực để giải quyết các bài toán trong chương trình và lưu trữ dữ liệu. Kiểu dữ liệu ký tự được sử dụng để lưu trữ các ký tự. Ngoài ra, trong C++ còn có một kiểu dữ liệu khác được sử dụng để lưu trữ giá trị đúng hoặc sai của một mệnh đề trong máy tính, được gọi là kiểu luận lý (Boolean).
Trong C++, kiểu luận lý (Boolean) có kích thước 1 byte và chỉ lưu được 2 giá trị: true (1) và false (0).
Để khai báo một biến kiểu boolean, bạn sử dụng từ khóa "bool":
bool ; // Khai báo biến có kiểu bool
Để khởi tạo và gán giá trị cho một biến boolean trong C++, bạn sử dụng từ khóa true (1) hoặc false (0):
bool b1(true); // true = 1
bool b2{ false }; // false = 0
bool b3 = 1; // 1 = true
Bạn cũng có thể phủ định giá trị luận lý từ true sang false và ngược lại bằng cách sử dụng toán tử "!" (NOT):
bool b1(!true); // b1 = NOT true = false (0)
bool b2{ !false }; // b2 = NOT false = true (1)
bool b3 = !1; // b3 = NOT 1 = false (0)
Giá trị của biến kiểu bool trong máy tính được biểu diễn dưới dạng 0 (false) hoặc 1 (true). Vì vậy, khi in một biến kiểu bool, giá trị sẽ được in ra là 0 (false) hoặc 1 (true).
#include
using namespace std;
int main() {
bool b1{ true }; // b1 is true
cout << b1 << endl; // in 1 ra màn hình
cout << !b1 << endl; // in 0 ra màn hình
bool b2{ false }; // b2 is false
cout << b2 << endl; // in 0 ra màn hình
cout << !b2 << endl; // in 1 ra màn hình
return 0;
}
Chú ý: Khi khởi tạo hoặc gán giá trị dưới dạng số nguyên cho biến kiểu bool, mọi giá trị khác 0 sẽ mặc định là true.
bool b1(6); // b1 = true (1)
bool b3 = !-9; // b3 = NOT true = false (0)
Nếu bạn muốn giá trị của biến boolean khi được in ra là "true" hoặc "false" thay vì 0 hoặc 1, bạn có thể sử dụng "std::boolalpha". Nếu bạn muốn in giá trị biến kiểu boolean như mặc định, bạn có thể sử dụng "std::noboolalpha".
#include
using namespace std;
int main() {
cout << std::boolalpha; // in "true" hoặc "false" với kiểu bool
cout << true << endl; // in "true" ra màn hình
cout << false << endl; // in "false" ra màn hình
cout << std::noboolalpha; // in 1 hoặc 0 với kiểu bool
cout << true << endl; // in 1 ra màn hình
cout << false << endl; // in 0 ra màn hình
return 0;
}
Cơ bản về câu điều kiện If và Boolean
Một trong những ứng dụng phổ biến nhất của các biến boolean là sử dụng bên trong câu điều kiện If. Cấu trúc câu điều kiện If được mô tả như sau:
If thiếu:
if (condition) // nếu condition là true
statement; // thực thi câu lệnh này
If đủ:
if (condition) // nếu condition là true
statement1; // thực thi câu lệnh này
else
statement2; // nếu condition là false, thực thi câu lệnh này
Xét ví dụ về cú pháp câu điều kiện If bên trên, nếu condition là một mệnh đề true, statement1 sẽ được thực thi, ngược lại thì statement2 sẽ được thực thi.
#include
using namespace std;
int main() {
bool b1{ true };
if (b1)
cout << "b1 is true" << endl;
else
cout << "b1 is false" << endl;
bool b2{ false };
if (b2)
cout << "b2 is true" << endl;
else
cout << "b2 is false" << endl;
return 0;
}
Mệnh đề condition trong câu điều kiện If có thể là một biến kiểu boolean, một giá trị đúng sai của một biểu thức hoặc kết quả trả về của một hàm.
Các vấn đề này sẽ được hướng dẫn kỹ hơn trong bài viết "Câu điều kiện If trong C++ (If statements)".
Kết luận
Qua bài học này, bạn đã tìm hiểu về Kiểu luận lý và cơ bản về Câu điều kiện If trong C++ và cách sử dụng chúng. Hy vọng rằng bạn đã có những kiến thức bổ ích từ bài viết này.
Đừng quên để lại bình luận hoặc góp ý của bạn để chúng tôi có thể cải thiện bài viết trong tương lai. Hãy tiếp tục khám phá và không ngại khó!
Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc nào về khóa học, đừng ngần ngại đặt câu hỏi trong phần bình luận bên dưới hoặc trong mục Hỏi & Đáp trên trang web để nhận được sự hỗ trợ từ cộng đồng.