Bài đăng nổi bật

 

Biểu thức Boolean

Biểu thức boolean là bất kỳ biểu thức nào đánh giá hoặc trả về giá trị boolean.


// These expressions all evaluate to a boolean value.
// Therefore their values can be stored in boolean variables.
bool a = (2 > 1);
bool ba && true;
bool c = !false || (7 < 8);

Loại Boolean

Kiểu booldữ liệu có thể là một trong hai truehoặc falsevà dựa trên khái niệm rằng tính hợp lệ của tất cả các câu lệnh logic phải là đúng hoặc sai.

Boolean mã hóa khoa học logic vào máy tính, cho phép suy luận logic trong các chương trình. Theo nghĩa rộng, máy tính có thể mã hóa tính trung thực hay sai lệch của một số tuyên bố nhất định và dựa trên thông tin đó, hoàn toàn thay đổi hoạt động của chương trình.


bool skyIsBluetrue;
bool penguinsCanFlyfalse;
Console.WriteLine($"True or false, is the sky blue? {skyIsBlue}.");
// This simple program illustrates how booleans are declared. However, the real power of booleans requires additional programming constructs such as conditionals.

Toán tử logic

Toán tử logic nhận các biểu thức boolean làm đầu vào và trả về một giá trị boolean.

Toán tử &&nhận hai biểu thức boolean và truechỉ trả về nếu cả hai đều đánh giá đến true.

Toán tử ||nhận hai biểu thức boolean và trả về truenếu một trong hai có giá trị true.

Toán tử !nhận một biểu thức boolean và trả về giá trị ngược lại.


// These variables equal true.
bool atrue && true;
bool bfalse || true;
bool c = !false;

// These variables equal false.
bool dtrue && false;
bool efalse || false;
bool f = !true;

Toán tử so sánh

Một toán tử so sánh , như tên của nó, so sánh hai biểu thức và trả về một trong hai truehoặc falsetùy thuộc vào kết quả của phép so sánh. Ví dụ: nếu chúng tôi so sánh hai intgiá trị, chúng tôi có thể kiểm tra xem một số lớn hơn số kia hay cả hai số đều bằng nhau. Tương tự như vậy, chúng ta có thể kiểm tra một cái xem có stringbình đẳng với cái khác không string.


int x5;
Console.WriteLine(x < 6); // Prints "True" because 5 is less than 6.
Console.WriteLine(x > 8); // Prints "False" because 5 is not greater than 8.

string foo"foo";
Console.WriteLine(foo == "bar"); // Prints "False" because "foo" does not equal "bar".

Bảng chân lý

Bảng sự thật là một cách để hình dung logic boolean. Vì boolean chỉ có hai giá trị khả thi, điều đó có nghĩa là chúng ta có thể liệt kê gọn trong bảng tất cả các cặp đầu vào và đầu ra có thể có cho toán tử boolean đơn phân và nhị phân.

Hình ảnh dưới đây cung cấp các bảng sự thật cho các toán tử  , HOẶC và KHÔNG . Đối với mỗi hàng, cột cuối cùng đại diện cho đầu ra cho rằng các cột khác đã được cung cấp làm đầu vào cho toán tử tương ứng.

Các bảng chân trị cho VÀ, HOẶC và KHÔNG.  Mỗi ô trong bảng chứa True hoặc False.

Kiểm soát có điều kiện

Câu lệnh điều kiện hoặc cấu trúc điều khiển có điều kiện cho phép một chương trình có các hành vi khác nhau tùy thuộc vào các điều kiện nhất định được đáp ứng.

Về mặt trực giác, điều này bắt chước cách con người đưa ra các quyết định đơn giản và hành động theo chúng. Ví dụ, lý luận về việc có nên đi ra ngoài hay không có thể như sau:

  • Tình trạng: Bên ngoài trời có mưa không?
    • Nếu trời đang mưa, hãy mang theo ô.
    • Nếu không, đừng mang theo ô.

Chúng tôi có thể tiếp tục thêm các mệnh đề để làm cho lập luận của chúng tôi trở nên phức tạp hơn, chẳng hạn như "Nếu trời nắng thì hãy mặc kem chống nắng".

Kiểm soát dòng chảy

Trong lập trình, luồng điều khiển là thứ tự thực hiện các câu lệnh và lệnh. Người lập trình có thể thay đổi luồng điều khiển của chương trình bằng cách sử dụng các cấu trúc điều khiển như điều kiện.

Khả năng thay đổi luồng điều khiển của chương trình rất mạnh mẽ, vì nó cho phép chúng tôi điều chỉnh hành vi của chương trình đang chạy tùy thuộc vào trạng thái của chương trình. Ví dụ: giả sử một người dùng đang sử dụng ứng dụng ngân hàng và muốn rút 500 đô la. Chúng tôi chắc chắn muốn ứng dụng hoạt động khác nhau tùy thuộc vào việc người dùng có $ 20 hay $ 1000 trong tài khoản ngân hàng của họ!

Câu lệnh If

Trong C #, câu lệnh if thực thi một khối mã dựa trên việc biểu thức boolean được cung cấp trong dấu ngoặc đơn có phải là truehoặc không false.

Nếu biểu thức là truekhối mã bên trong dấu ngoặc nhọn {}, sẽ được thực thi. Nếu không, khối sẽ bị bỏ qua.


if (true) {
  // This code is executed.
  Console.WriteLine("Hello User!");
}

if (false) {
  // This code is skipped.
  Console.WriteLine("This won't be seen :(");
}

Từ khóa break

Một trong những công dụng của breaktừ khóa trong C # là thoát khỏi switchcaseblocks và tiếp tục thực thi chương trình sau switchkhối mã. Trong C #, mỗi casekhối mã bên trong một switchcâu lệnh cần được thoát bằng breaktừ khóa (hoặc một số câu lệnh nhảy khác), nếu không chương trình sẽ không biên dịch. Nó sẽ được gọi sau khi tất cả các hướng dẫn cụ thể cho cụ thể đó caseđã được thực thi.


string color"blue";

switch (color) {
  case "red":
    Console.WriteLine("I don't like that color.");
    break;
  case "blue":
    Console.WriteLine("I like that color.");
    break;
  default:
    Console.WriteLine("I feel ambivalent about that color.");
    break;
}
// Regardless of where the break statement is in the above switch statement,
// breaking will resume the program execution here.
Console.WriteLine("- Steve");

Toán tử bậc ba

Trong C #, toán tử bậc ba là một cú pháp đặc biệt có dạng condition ? expression1 : expression2:.

Nó nhận một điều kiện boolean và hai biểu thức làm đầu vào. Không giống như một ifcâu lệnh, toán tử bậc ba chính nó là một biểu thức. Nó đánh giá biểu thức đầu vào đầu tiên hoặc biểu thức đầu vào thứ hai tùy thuộc vào điều kiện truetương falseứng.


bool isRainingtrue;
// This sets umbrellaOrNot to "Umbrella" if isRaining is true,
// and "No Umbrella" if isRaining is false.
string umbrellaOrNotisRaining"Umbrella""No Umbrella";

// "Umbrella"
Console.WriteLine(umbrellaOrNot);

Mệnh đề else

Tiếp elsetheo là dấu ngoặc nhọn, {}chứa một khối mã, được gọi là elsemệnh đề. elsemệnh đề luôn phải được đặt trước một ifcâu lệnh.

Khối bên trong dấu ngoặc nhọn sẽ chỉ chạy nếu biểu thức trong ifđiều kiện đi kèm là falseNó hữu ích cho việc viết mã chỉ chạy nếu mã bên trong ifcâu lệnh không được thực thi.


if (true) {
  // This block will run.
  Console.WriteLine("Seen!");
} else {
  // This will not run.
  Console.WriteLine("Not seen!");
}

if (false) {
  // Conversely, this will not run.
  Console.WriteLine("Not seen!");
} else {
  // Instead, this will run.
  Console.WriteLine("Seen!");
}

if và else if

Một mẫu phổ biến khi viết nhiều ifvà elsecâu lệnh là có một elsekhối chứa một ifcâu lệnh lồng nhau khác, có thể chứa một câu lệnh khác else, v.v. Một cách tốt hơn để thể hiện mẫu này trong C # là sử dụng các else ifcâu lệnh. Điều kiện đầu tiên được đánh giá là truesẽ chạy khối mã liên kết của nó. Nếu không có true, thì khối tùy chọn elsesẽ chạy nếu nó tồn tại.


int x100, y80;

if (x > y)
{
  Console.WriteLine("x is greater than y");
}
else if (x < y)
{
  Console.WriteLine("x is less than y");
}
else
{
  Console.WriteLine("x is equal to y");
}

   Câu lệnh switch

Câu switchlệnh là một cấu trúc luồng điều khiển đánh giá một biểu thức và quyết định khối mã nào sẽ chạy bằng cách cố gắng khớp kết quả của biểu thức với từng biểu thức caseNói chung, một khối mã được thực thi khi giá trị cho một casebằng biểu thức được đánh giá, tức là khi ==giữa hai giá trị trả về trueswitchcâu lệnh thường được sử dụng để thay thế if elsecấu trúc khi tất cả các điều kiện kiểm tra sự bằng nhau trên một giá trị.


// The expression to match goes in parentheses.
switch (fruit) {
  case "Banana":
    // If fruit == "Banana", this block will run.
    Console.WriteLine("Peel first.");
    break;
  case "Durian":
    Console.WriteLine("Strong smell.");
    break;
  default:
    // The default block will catch expressions that did not match any above.
    Console.WriteLine("Nothing to say.");
    break;
}

// The switch statement above is equivalent to this:
if (fruit == "Banana") {
  Console.WriteLine("Peel first.");
} else if (fruit == "Durian") {
  Console.WriteLine("Strong smell.");  
} else {
  Console.WriteLine("Nothing to say.");
}

Post a Comment

أحدث أقدم