- vừa được xem lúc

Bài 5. Các phép so sánh, phép toán logic và câu lệnh điều kiện trong C++

0 0 12

Người đăng: Vàng Văn Quyn

Theo Viblo Asia

1. Các phép so sánh (toán tử quan hệ).

  • Ví dụ: int a = 10, int b= 20;
TT Phép so sánh Kí hiệu (toán tử so sánh) Ví dụ Kết quả
1 Bằng == a==b false
2 Khác != a!=b true
3 Lớn hơn > a>b false
4 Nhỏ hơn < a<b true
5 Lớn hơn hoặc bằng >= a>=b false
6 Nhỏ hơn hoặc bằng <= a<=b true

2. Phép logic (toán tử logic).

Ví dụ: A = true; B = false

TT Phép Logic Kí kiệu (toán tử logic) Ví dụ Kết quả
1 AND (Và)
&&
A&&B false
2 OR (Hoặc)
||
A||B true
3 NOT (Phủ định)
!
!A false
!B true

Ví dụ:

#include <iostream>
using namespace std;
int main()
{ int a=0; int b=0; cout<<"Nhap a = "; cin>>a; cout<<"Nhap b = "; cin>>b; if((a>0)&&(b>0)) { cout<<"a va b deu lon hon 0"<<endl; } if((a>0)||(b>0)) { cout<<"a hoac b lon hon 0"<<endl; } if(!(a>0)) { cout<<"Xuat ra man hinh khi a nho hon 0"<<endl; } return 0;
}

3. Câu lệnh điều kiện.

3.1. Câu lệnh điều kiện if.

Dạng thiếu:

if (điều kiện)
{ nội dung khi đk đúng;
}

Ví dụ:

#include <iostream>
using namespace std;
int main()
{ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { cout<<"So a lon hon so b"; } return 0;
}

Dạng đủ:

if (điều kiện)
{ nội dung khi đk đúng;
}
else
{ nội dung khi đk sai;
}

Ví dụ:

#include <iostream>
using namespace std;
int main()
{ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { cout<<"So a lon hon so b"; } else { cout<<"So a nho hon hoac bang so b"; } return 0;
}

3.2. Câu lệnh điều kiện switch ... case.

switch (biến hoặc biểu thức kiểm tra) { case giá trị 1: Lệnh thứ 1; break; case giá trị 2: Lệnh thứ 2; break; case giá trị 3: Lệnh thứ 3; break; case giá trị thứ n: Lệnh thứ n; break; default: Lệnh thực hiện khi các lựa chọn trên đều sai; //phần default là không bắt buộc }

Ví dụ:

#include <iostream>
using namespace std;
int main()
{ char dau; int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; cout<<"Nhap dau phep toan la: "; cin>>dau; switch (dau) { case '+': S= a + b; break; case '-': S= a - b; break; case '*': S= a * b; break; case '/': if (b == 0) { cout << "Phep chia cho 0!"; } if (b != 0) { S= a / b; } default: cout << "Phep tinh khong hop le!"; } cout<<"Ket qua phep tinh la: "<<S; return 0;
}

3.3. Câu lệnh điều kiện thay thế cặp if ..else.

c = (a>b? giá trị khi đúng : giá trị khi sai);

Ví dụ:

#include <iostream>
using namespace std;
int main()
{ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; S=(a>b?a-b:a+b); cout<<S<<endl; return 0;
}

Nếu dùng lệnh if ...else thì như sau:

#include <iostream>
using namespace std;
int main()
{ int a=0, b=0, S=0; cout << "a = "; cin>>a; cout << "b = "; cin>>b; if(a>b) { S=a-b; } else { S=a+b; } cout<<S<<endl; return 0;
}
  • Ví dụ: Cho số nguyên N trong tệp Cau1.INP. Xuất ra màn hình kết quả kiểm tra xem N là số chẵn hay số ra màn hình
#include <iostream>
#include <fstream>
using namespace std;
int main()
{ ifstream fin; fin.open("BAI1.INP",ios::in); int N; if(fin.fail()) { cout<<"Loi mo tep"; fin.close(); } else { fin>>N; fin.close(); } if(N%2==0) { cout<<N<<" la so chan"; } else { cout<<N<<" la so le"; } return 0;
}
  • Phép so sánh trong C++ sẽ so sánh cùng với hai giá trị ở hai vế trái phải thành một biểu thức điều kiện, sau đó kiểm tra biểu thức điều kiện này là đúng hay sai và đưa ra kết quả. Kết quả của các phép so sánh trong C++ sẽ là kiểu boolean trong C++ với hai giá trị là True (đúng) hoặc False (sai), và phép toán so sánh trong C++ được sử dụng để cấu tạo biểu thức điều kiện được sử dụng trong câu lệnh if trong C++.
  • Để thực hiện các phép so sánh trong C++, chúng ta sử dụng các toán tử so sánh trong C++ được liệt kê trong bảng dưới đây.
  • Khi so sánh lớn nhỏ hai ký tự đơn, chúng ta đơn giản so sánh mã ký tự ASSCII của chúng. Ví dụ, do mã ký tự ASSCII của ký tự a là 97 sẽ lớn hơn của ký tự A là 65 nên phép so sánh sau sẽ cho ra kết quả True.
  • khi so sánh 2 chuỗi ký tự với nhau, chúng ta không thể đơn thuần so sánh các mã ký tự ASSCII của từng ký tự được. Lúc này, phép so sánh sẽ bắt đầu từ ký tự đầu tiên trong hai chuỗi, và nếu chúng giống nhau, các ký tự tiếp theo được so sánh cho tới khi xuất hiện một ký tự khác nhau đầu tiên trong hai chuỗi. Khi đó, mã ký tự ASSCII của ký tự này sẽ đại diện cho cả chuỗi và được dùng để so sánh lớn nhỏ.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Memory layout của một chương trình C/C++

1. Đặt Vấn Đề.

0 0 45

- vừa được xem lúc

Sự khác nhau giữa bộ nhớ Heap và bộ nhớ Stack trong lập trình

1. Giới thiệu. . Như chúng ta đã biết thì việc Quản lý bộ nhớ đối với một lập trình viên là rất quan trọng.

0 0 57

- vừa được xem lúc

Tích hợp thư viện C/C++ vào một dự án Flutter như thế nào?

Chào các bạn hôm nay rảnh rỗi thì mình viết một bài hướng dẫn về cách tích hợp một thư viện C/C++ vào một dự án Flutter. Thì cũng khá đơn giãn thôi vì Flutter đã cũng cấp cho chúng ta một thư viện khá

0 0 61

- vừa được xem lúc

Programming

Definition of Programming. .

0 0 35

- vừa được xem lúc

Gọi hàm của C++ trong Python bằng ctypes

Nếu đã từng dùng qua các thư viện liên quan đến toán học của Python như numpy, các bạn sẽ để ý thấy các nó có tốc độ xử lý rất nhanh. Điều này là do một phần của package này được viết bằng C/C++ và ph

0 0 40

- vừa được xem lúc

Build ứng dụng Cross Platform với Go và CGO

1. Giới thiệu.

0 0 37