Lập Trình C++ - Toán Tử 3 Ngôi Trong C++. - Toán tử là thành phần không thể thiếu trong bất cứ ngôn ngữ lập trình nào, hầu hết các hàm đều có ít nhất một câu lệnh sử dụng tới toán tử. Nắm được các dạng toán tử cùng độ ưu tiên và trật tự kết hợp sẽ giúp Các toán tử logic trên bit Thao tác luận lý cho hai kết quả, đó là đúng hoặc sai. Trong ký hiệu nhị phân, số 1 thể hiện cho Đúng và số 0 thể hiện cho sai. trữ trong bộ nhớ có thể được xem như một chuỗi của những giá trị đúng và sai. Những toán tử logic trên bít hoạt động trên những toán hạng mà theo đó có nhiệm vụ thực hiện Số ra trong tháng 1; Số ra trong tháng 2; Số ra trong tháng 3; Số ra trong tháng 4; Số ra trong tháng 5; Số ra trong tháng 6; Số ra trong tháng 7; Số ra trong tháng 8; Số ra trong tháng 9; Số ra trong tháng 10; Số ra trong tháng 11; Số ra trong tháng 12; Thông tin chuyên_đề » Thư mục các ngày lễ Toán tử logic AND hay còn gọi là toán tử logic tích trong C sẽ trả về kêt quả true nếu cả hai vế đều đúng và ngược lại là false nếu một trong hai vế là sai. true && true = true true && false = false false && true = false false && false = false Về quy trình xử lý, toán tử logic AND trong C sẽ kiểm tra biểu thức X bên vế trái trước. Toán tử logic trong C++. Bảng dưới đây chỉ rõ tất cả các toán tử logic được hỗ trợ bởi ngôn ngữ C. Giả sử biến A có giá trị 1 và biến B có giá trị 0: 1. Toán tử logic. Những toán tử này được áp dụng cho kiểu luận lý (bool). Kết quả của toán tử logic trả về true (1) hoặc false (0). Các toán tử logic là AND (&&), OR (||), NOT (!). Toán tử AND (&&) Gọi là toán tử "và". Nếu cả hai toán hạng đều có giá trị true thì kết quả là true. Một số trong số chúng là toán tử, một số là hàm, câu lệnh hoặc biến. Chi tiết của những cú pháp sẽ được chúng tôi giải thích trong từng cú pháp cụ thể bên dưới. Tuy nhiên, ST có một số quy tắc chung về cú pháp mà bạn nên biết. Bạn không cần phải ghi nhớ tất cả những quy tắc cú pháp này ngay lập tức, tuy nhiên nó sẽ giúp ích cho bạn sau này: Ðầu tiên là xử lý các tính toán số học. Sau đó, các toán tử logic được xem xét từ trái sang phải. Những biểu thức con có trong biểu thức cần xử lý (có các toán tử & và | ) cũng được xem xét từ trái sang phải với các toán tử & được xử lý trước các toán tử | Ví dụ: . Trong bài này chúng ta sẽ tìm hiểu một số toán tử thường gặp trong C như Toán tử số học, toán tử quan hệ, toán tử logic, và toán tử viết này được đăng tại không được copy dưới mọi hình thức. Nói về toán tử thì hầu như ngôn ngữ lập trình nào cũng có, và ý nghĩa sử dụng cũng giống nhau. Chỉ có điều mỗi ngôn ngữ sẽ có một cú pháp riêng nên có thể cách biểu diễn sẽ khác. Tuy nhiên, hầu hết các ngôn ngữ lập trình hiện nay đều có cú pháp sử dụng các toán tử giống nhau lên đến 90%. 1. Toán tử số học trong C Một toán tử số học thực hiện các phép toán như cộng, trừ, nhân, chia, trên các giá trị số hằng số và biến. Toán tử Ý nghĩa + Phép cộng - Phép trừ * Phép nhân / Phép chia % Phép chia lấy dư Những toán tử này tương đối dễ, chỉ có toán từ % là đặc biệt, nó sẽ lấy kết quả là phần dư của phép chia. Ví dụ 4 % 3 = 1 tại vì 4 chia cho 3 sẽ dư viết này được đăng tại [free tuts .net] Xem ví dụ dưới đây // Working of arithmetic operators include int main { int a = 9,b = 4, c; c = a+b; printf"a+b = %d \n",c; c = a-b; printf"a-b = %d \n",c; c = a*b; printf"a*b = %d \n",c; c = a/b; printf"a/b = %d \n",c; c = a%b; printf"Chia lay du = %d \n",c; return 0; } Kết quả a+b = 13 a-b = 5 a*b = 36 a/b = 2 Chia lay du =1 2. Toán tử tăng giảm 1 đơn vị trong C Trong C cho phép bạn tăng giá trị của biến lên 1 bằng phép ++, giảm xuống 1 đơn vị bằng phép -. Xem ví dụ sau để hiểu rõ hơn nhé. include int main { int a = 10, b = 100; float c = d = printf"++a = %d \n", ++a; printf"-b = %d \n", -b; printf"++c = %f \n", ++c; printf"-d = %f \n", -d; return 0; } Kết quả ++a = 11 -b = 99 ++c = ++d = Ngoài ra bạn có thể đặt toán tử này phía sau biến cũng được, tức là a- hoặc a++. Sự khác nhau giữa hai cách đặt này là như sau Nếu bạn đặt toán tử ở phía trước thì trình biên dịch sẽ ưu tiên chạy toán tử này trước, tức là giá trị sẽ tăng / giảm trước khi thực hiện các phép khác. Nếu đặt phía sau thì nó sẽ tính các phép toán khác rồi mới tăng / giảm cho biến. Ví dụ int a = 12; int b; b = ++a; // b = 13 b = a++; // b = 12 3. Toán tử gán trong C Toán tử gán dùng để gán / thay đổi giá trị cho biến. Trong C có tổng cộng 6 toán tử gán thường sử dụng nhất, đó là Toán tử Ví dụ Tương đương = a = b a = b += a += b a = a+b -= a -= b a = a-b *= a *= b a = a*b /= a /= b a = a/b %= a %= b a = a%b Khi bạn sử dụng các toán tử số học kèm với toán tử bằng thì đồng nghĩa với việc ghi tắt ở cột tương đương trong bảng trên. Ví dụ include int main { int a = 5, c; c = a; // c is 5 printf"c = %d\n", c; c += a; // c is 10 printf"c = %d\n", c; c -= a; // c is 5 printf"c = %d\n", c; c *= a; // c is 25 printf"c = %d\n", c; c /= a; // c is 5 printf"c = %d\n", c; c %= a; // c = 0 printf"c = %d\n", c; return 0; } Kết quả c = 5 c = 10 c = 5 c = 25 c = 5 c = 0 Đây là những toán tử được sử dụng rất thường xuyên trong lập trình C. 4. Toán tử quan hệ trong C Toán tử quan hệ dùng để trả về mối quan hệ giữa hai biểu thức hoặc hai toán hạng. Kết quả trả về của nó là TRUE hoặc FALSE. TRUE đồng nghĩa với 1 FALSE đồng nghĩa với 0 Đây là toán tử khá quan trọng bởi nó được dùng để kiểm tra tính logic của bài toán, kể cả trong thực tế hay lúc học đều đụng đến nó khá nhiều. Sau đây là bảng danh sách các toán tử quan hệ trong ngôn ngữ C. Toán tử Ý nghĩa Ví dụ == So sánh bằng 5 == 3 trả về 0 > So sánh lớn hơn 5 > 3 trả về 1 = Lớn hơn hoặc bằng 5 >= 3 trả về 1 int main { int a = 5, b = 5, c = 10; printf"%d == %d is %d \n", a, b, a == b; printf"%d == %d is %d \n", a, c, a == c; printf"%d > %d is %d \n", a, b, a > b; printf"%d > %d is %d \n", a, c, a > c; printf"%d = %d is %d \n", a, b, a >= b; printf"%d >= %d is %d \n", a, c, a >= c; printf"%d 5 is 0 5 > 10 is 0 5 = 5 is 1 5 >= 10 is 0 5 int main { int a = 5, b = 5, c = 10, result; result = a == b && c > b; printf"a == b && c > b is %d \n", result; result = a == b && c b is 1 a == b && c < b is 0 a == b c < b is 1 a != b c < b is 0 !a != b is 1 !a == b is 0 Trên là 5 loại toán tử được được sử dụng nhiều nhất khi làm việc với ngôn ngữ lập trình C. Bạn hãy thử chạy các ví dụ, thay giá trị cho các biến để hiểu rõ ý nghĩa của từng toán tử nhé. Sau khi học xong bài này là ta có thể học những kiến thức cao hơn đó chính là các lệnh rẻ nhánh và vòng lặp. Hẹn gặp lại bạn ở chương kế tiếp nhé. Trong toán học, một phép toán là một phép thực hiện tính toán từ một số lượng nào đó để tạo ra một kết quả cần tính toán. Chúng ta dễ dàng nhận thấy có một số phép toán mà ta hay sử dụng trong đời sống cộng, trừ, nhân, chia. Trong lập trình C cũng có những phép toán như vậy, ngoài ra ngôn ngữ C còn mở rộng thêm nhiều phép toán khác để thực hiện nhiều chức năng khác, chúng được gọi tắt là các toán tử. Ngôn ngữ C có nhiều toán tử cài sẵn và tôi sẽ cung cấp các loại toán tử căn bản sau Toán tử về số học Toán tử quan hệ Toán tử logic Toán tử gán Trong phạm vi căn bản chúng ta chỉ cần nắm được 4 toán tử trên là đã áp dụng được rất nhiều trong quá trình lập trình với C rồi, ngoài ra các bạn có thể tự tham khảo thêm đầy đủ các toán tử của C tại đây Operators in C and C++ tử về số học Toán tử về số học trong lập trình hay cũng chính là các phép toán mà ta vẫn thường sử dụng trong đời sống như Cộng, trừ, nhân, chia…… Ký hiệu Mô tả Ví dụ + Cộng các phần tử 1 + 6 = 7 – Trừ các phần tử 2 – 1 = 1 * Nhân các phẩn tử 5 * 7 = 35 / Chia các phần tử 10 / 2 = 5 % Chia lấy phần dư 10 / 8 = 2 kết quả chính là phần dư — Giảm một giá trị số nguyên xuống 1 đơn vị 5– = 5 – 1 = 4 ++ Tăng một giá trị số nguyên lên 1 đơn vị 9++ = 9 + 1 = 10 include int main{ // Khai bao 2 gia tri a, b co gia tri la 16, 8 va c, d gia tri 10, 8 int a = 16; int b = 8; int c = 10; int d = 8; // Thuc hien cac phep toan + - * / giua a va b int cong = a + b; int tru = a - b; int nhan = a * b; int chia = a / b; //Thuc hien cac phep toan % int chiaLayDu = c % d; a++; //Tang a len 1 don vi b-; // Giam b xuong 1 don vi // Hien thi ket qua printf"Cong = %d \n", cong; printf"Tru = %d \n", tru; printf"Nhan = %d \n", nhan; printf"Chia = %d \n", chia; printf"Chia lay phan du = %d \n", chiaLayDu; printf"a++ = %d \n", a; printf"b- = %d \n", b; return 0; } Cong = 24 Tru = 8 Nhan = 128 Chia = 2 Chia lay phan du = 2 a++ = 17 b– = 7 tử quan hệ Toán tử quan hệ hay có thể hiểu nôm na là phép so sánh giứa các đại lượng, các giá trị với nhau cho ra kết quả đúng hoặc sai. Ký hiệu Mô tả Ví dụ == So sánh giá trị có bằng nhau không 1 == 1 đúng, 2 == 1 sai != So sánh giá trị có không bằng nhau hay không 1 != 2 đúng, 1 != 1 sai > So sánh giá trị lớn hơn hay không 5 > 4 đúng, 5 > 6 sai = So sánh giá trị có lớn hơn hoặc bằng hay không 5 >= 4 đúng, 5 >= 5 đúng, 5 >= 6 sai int main{ // Khai bao 2 gia tri a, b co gia tri la 16, 8 int a = 16; int b = 8; // Hien thi ket qua so sanh ==,!=, >, =, b; printf"Nho hon %d \n", a = b; printf"Nho hon hoac bang %d \n", a int main{ // Khai bao 4 gia tri a, b, c, d co gia tri la 1,0,1,0 // Coi gia tri 1 la dung, gia tri 0 la sai int a = 1; int b = 0; int c = 1; int d = 0; printf"Gia tri cua a, b, c, d la %d %d %d %d \n", a,b,c,d; // Hien thi ket qua &&, , ! // Ket qua 1 la dung, 0 la sai printf"Menh de && giua a va b la %d \n", a && b; printf"Menh de && giua a va c la %d \n", a && c; printf"Menh de giua a va b la %d \n", a b; printf"Menh de giua b va d la %d \n", b d; printf"Phu dinh cua a, b, c, d la %d %d %d %d", !a,!b,!c,!d; return 0; } Gia tri cua a, b, c, d la 1 0 1 0 Menh de && giua a va b la 0 Menh de && giua a va c la 1 Menh de giua a va b la 1 Menh de giua b va d la 0 Phu dinh cua a, b, c, d la 0 1 0 1 tử gán Toán tử gán hay còn được hiểu là phép gán một giá trị cho một biến, hay gán một phép tính giá trị cho một biến…… Ký hiệu Mô tả Ví dụ = Gán cho giá trị bên trái bằng giá trị bên phải A = B += Cộng giá trị bên trái bằng một giá trị bên phải A += B tương đương A = A + B -= Trừ giá trị bên trái bằng một giá trị bên phải A -= B tương đương A = A – B *= Nhân giá trị bên trái bằng một giá trị bên phải A *= B tương đương A = A * B /= Chia giá trị bên trái bằng một giá trị bên phải A /= B tương đương A = A / B include int main{ // Khai bao 2 gia tri a, b co gia tri la 12,6 int a = 12; int b = 6; // Gan a = b a = b; printf"Gan a = b %d \n", a; // Khai bao 2 gia tri c, d co gia tri la 5,6 int c = 5; int d = 6; // Gan c += d hay con duoc hieu la c = c + d c += d; printf"c += d %d \n", c; // Khai bao 2 gia tri e, f co gia tri la 7,6 int e = 7; int f = 6; // Gan e -= f hay con duoc hieu la e = e - f e -= f; printf"e -= f %d \n", e; // Khai bao 2 gia tri g, h co gia tri la 8,6 int g = 8; int h = 6; // Gan g *= h hay con duoc hieu la g = g * h g *= h; printf"g *= h %d \n", g; // Khai bao 2 gia tri i, k co gia tri la 36,6 int i = 36; int k = 6; // Gan i /= k hay con duoc hieu la i = i / k i /= k; printf"i /= k %d \n", i; return 0; } Gan a = b 6 c += d 11 e -= f 1 g *= h 48 i /= k 6 Bài viết đăng tại dẫn cách sử dụng toán tử logic trong C. Bạn sẽ học được các phép toán logic trong C được biểu diễn thông qua các toán tử logic trong C sau bài học toán tử logic trong CĐể thực hiện các phép toán logic trong C, chúng ta sử dụng các toán tử logic trong C được liệt kê trong bảng dưới đâyToán tửTênBiểu thứcÝ nghĩa&&ANDX && Ytrue nếu cả X và Y đều đúngORX Ytrue nếu ít nhất một trong hai vế X hoặc Y đúng!NOT! Xtrue nếu X sai và false nếu X đúngPhép toán logic trong C sẽ kiểm tra hai vế của toán tử logic là đúng hay sai và kết hợp chúng lại để đưa ra kết quả. Kết quả của phép toán logic trong C sẽ là kiểu boolean trong C với hai giá trị là true đúng hoặc false sai.Toán tử logic AND trong CToán tử logic AND hay còn gọi là toán tử logic tích trong C sẽ trả về kêt quả true nếu cả hai vế đều đúng và ngược lại là false nếu một trong hai vế là && true = truetrue && false = falsefalse && true = falsefalse && false = falseVề quy trình xử lý, toán tử logic AND trong C sẽ kiểm tra biểu thức X bên vế trái trước. Nếu X true thì trả về giá trị của Y. Nếu X false thì trả về giá trị của dụ cụ thể về sử dụng toán tử logic AND trong C như sau2 10 && 2 10 && num 10 && num > 40Toán tử logic OR trong CToán tử logic OR hay còn gọi là toán tử logic tổng trong C sẽ trả về kêt quả true nếu một trong hai vế đúng, và false nếu cả hai vế đều true = truetrue false = truefalse true = truefalse false = falseVề quy trình xử lý, toán tử logic OR trong C sẽ ngược lại so với toán tử logic AND. Toán tử logic OR sẽ kiểm tra biểu thức X bên vế trái trước. Nếu X true thì trả về giá trị của X. Nếu X false thì trả về giá trị của dụ cụ thể về sử dụng toán tử logic OR trong C như sau2 402 > 10 2 > 40Bạn cũng có thể sử dụng toán tử logic AND trong C với biến như saunum = 20num > 10 num 10 num > 40num 40Toán tử logic NOT trong CToán tử logic NOT hay còn gọi là toán tử logic phủ đinh trong C sẽ trả về kêt quả true nếu một trong hai vế đúng, và false nếu cả hai vế đều sai.!true = false!false = trueVí dụ cụ thể về sử dụng toán tử logic NOT trong C như sau!2 40!2 > 40Bạn cũng có thể sử dụng toán tử logic NOT trong C với biến như saunum = 20!num 10Thứ tự ưu tiên toán tử logic trong CTrong trường hợp có nhiều toán tử logic trong C cùng tồn tại trong một biểu thức thì thứ tự ưu tiên xử lý của chúng như sauNOT > AND > ORNói cách khác, toán tử NOT có mức độ ưu tiên thực hiện cao nhất trong các toán tử logic dụ cụ thể thì ở dưới đây, toán tử AND && sẽ được đánh giá trước so với toán tử OR .4>3 22 Để thay đổi thứ tự ưu tiên các toán tử này trong biểu thức, chúng ta sử dụng tới cặp dấu ngoặc như sau4>3 22Lại nữa, do các toán tử logic có thứ tự ưu tiên thấp hơn so với các toán tử so sánh như , nên bạn không cần sử dụng tới các dấu ngoặc khi viết chúng cùng trong một biểu 2!10 == 10Ứng dụng của toán tử logic trong CToán tử logic trong C thường được sử dụng trong các biểu thức điều kiện trong các lệnh điều kiện if hoặc là trong vòng lặp. Trong các bài tiếp theo về các chuyên đề này, chúng ta sẽ gặp chúng nhiều sau đây là một số ví dụ cụ thể về sử dụng toán tử trong C để các bạn tham khảo dụ 1 Sử dụng toán tử logic trong lệnh điều kiện ifinclude int mainvoid{ int old = 17; if old > 15 && old 11 && old int mainvoid{ int num = 3; for int i = 0; i >08. lệnh điều kiện trong cBài sauIf trong CBài tiếpToán tử so sánh trong C và các phép so sánh chuỗi, số

toán tử logic trong c