Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет360/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   356   357   358   359   360   361   362   363   ...   466
Байланысты:
pavlovskaia-jogargy-dengeili

template
 
class BinaryOperation> Out transform(In1 fi rst1, 
 
In1 last1, In2 fi rst2, Out result
 
BinaryOperation binary_op);
Функционалдық объект стандартты немесе қолданушы тағайындаған болуы 
мүмкін. Қолданушы тағайындаған функционалдық объект 
unary_ function
немесе 
binary_function
функциясының (363 б. қараңыз) ұрпағы болуы тиіс.
Төменде көрсетілген мысалда 
transform
алгоритмін бірінші шақыру 
кезінде 
а
жиымын 
2
2
i
i
i
b
a
a

=
формуласы бойынша түрлендіру орында-
лады, ал оны екінші шақыру кезінде 
negate
стандартты функционалдық 
объектісінің көмегімен 
b
жиымы элементтерінің таңбасы өзгертіледі.
#include  
#include  
#include  
using namespace std;
struct preobr: binary_function
 
double operator()(double x, double y) const{ 
 
return x * x - y * y;}
};
int main(){
 
const int m = 5;
 
double a[m] = {5, 3, 2, 3, 1},
 
b[m] = {1, 10, -3, 2, -4};
 
transform(a, a + m, b, a, preobr());
 
transform(b, b + m, b, negate());
 int 
i;
 
for (i = 0; i
 
cout << endl;
 
for (i = 0; i
 
cout << endl; 
 return 
0;
}
Программа орындалуының нəтижесі:


Достарыңызбен бөлісу:
1   ...   356   357   358   359   360   361   362   363   ...   466




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет