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



Pdf көрінісі
бет375/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   371   372   373   374   375   376   377   378   ...   466
template t
 
T accumulate(In fi rst, In last, T init, BinOp binary_op);
Төменде көрсетілген мысалда жиым элементтерінің қосындысы
көбейтіндісі жəне элементтер квадраттарының қосындысы есептеледі:
#include  
#include  
#include  
using namespace std;
int sumkv( int s, int x){ return s + x * x;} 
int main(){
 
const int m = 5;
 
int a[m] = {3, 2, 5, 1, 6}, sum = 0, mul = 1, sum2 = 0; 


402
 
cout << accumulated, a + m, sum) << endl; 
 
cout << accumulate(a, a + m, mul, multiplies()) 
<< endl; 
 
cout << accumulate(a, a + m, sum2, sumkv) << endl;
 return 
0;
}
inner_product
inner_product
алгоритмінің бірінші ф ормасы екі тізбектің скалярлық 
көбейтіндісін есептеу үшін қолданылады (
а
жəне 
b
тізбектерінің скалярлық 
көбейтіндісі a
i
*b
i
өрнегі болып табылады). Көбейтіндінің бастапқы мəні 
төртінші параметр арқылы беріледі. Осы параметрдің типі нəтиженің типін 
анықтайды (функция есептелген көбейтіндіні қайтарады):
template t
 
T inner_product(In1 fi rst1, In1 last1, In2 fi rst2, T init);
inner_product
алгоритмінің екінші формасы екі функцияның немесе 
функционалдық объектінің көмегімен берілген əрекеттерді екі тізбекпен орын-
дау үшін қолданылады. Бірінші функционалдық объект қосу операциясының 
орнына, ал екіншісі көбейтудің орнына пайдаланылады:
template t


Достарыңызбен бөлісу:
1   ...   371   372   373   374   375   376   377   378   ...   466




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

    Басты бет