Bài viết này trình bày cách hoạt động của hàm ratio_greater_equal trong C++.
Hàm ratio_greater_equal kiểm tra xem giá trị của ratio1 có lớn hơn hoặc bằng ratio2 hay không. Nó trả về hằng boolean value là true nếu ratio1 >= ratio2, ngược lại false.
Cú pháp
template <class R1, class R2> struct ratio_greater_equal;
Tham số
Hàm chấp nhận hai tham số template: ratio1 và ratio2 cần so sánh.
Giải thích
Nếu giá trị của ratio1 lớn hơn hoặc bằng ratio2, hàm trả về true (1), ngược lại trả về false (0).
Giải thích typedef
typedef dùng để đặt tên mới cho kiểu dữ liệu, ở đây dùng để khai báo các ratio. typedef tạo alias có thể dùng thay cho tên kiểu, có thể khai báo nhiều identifier trên cùng một dòng, cũng dùng cho mảng, con trỏ, tham chiếu, kiểu lớp, v.v.
Ví dụ minh họa
Input: 1/3 và 3/9 → Output: 3/9 lớn hơn hoặc bằng 1/3. Input: 4/16 và 4/16 → Output: 4/16 bằng 4/16.
Cách tiếp cận
- Khai báo hai ratio.
- Gán giá trị cho hai ratio.
- Kiểm tra
ratio1 >= ratio2bằngratio_greater_equal.
Ví dụ code
// C++ code demo ratio_greater_equal
#include <iostream>
#include <ratio>
using namespace std;
int main() {
typedef ratio<10, 100> ratio1;
typedef ratio<1, 10> ratio2;
if (ratio_greater_equal<ratio1, ratio2>::value)
cout << "ratio1 lớn hơn hoặc bằng ratio2";
else
cout << "ratio1 không lớn hơn hoặc bằng ratio2";
cout << endl;
return 0;
}
Kết quả
ratio1 lớn hơn hoặc bằng ratio2