Computer >> Máy Tính >  >> Lập trình >> C ++

Hàm mô-đun trong C ++ STL


Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và ví dụ của các hàm mô-đun trong C ++.

Hàm modulus C ++ là gì?

lớp đối tượng hàm modulus trong C ++, được định nghĩa trong tệp tiêu đề . modulus function là một lớp đối tượng hàm nhị phân được sử dụng để lấy kết quả của hoạt động modulus của hai đối số. Hàm này hoạt động giống như toán tử ‘%‘.

Cú pháp của hàm mô-đun

Template struct modulus : binary_function
{
   T operator() (const T& a, const T& b) const {return a%b; }
};

Thông số mẫu

Hàm chấp nhận (các) tham số sau -

  • T - Đây là loại đối số được truyền cho lệnh gọi hàm.

Ví dụ

#include <iostream>
#include <algorithm>
#include <functional&g;
using namespace std;
int main(){
   //create an array
   int arr[] = { 10, 20, 35, 45, 50, 61 };
   int rem[6];
   transform(arr, arr + 6, rem,bind2nd(modulus<int>(), 2));
   for (int i = 0; i < 5; i++){
      cout << arr[i] << " is a "<<(rem[i] == 0 ? "even" : "odd")<<"\n";
   }
   return 0;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -

10 is a even
20 is a even
35 is a odd
45 is a odd
50 is a even