Tiplarni dinamik tarzda


Valarray son sinfi va uning funksiyalari


Download 1.83 Mb.
bet52/131
Sana16.06.2023
Hajmi1.83 Mb.
#1503422
1   ...   48   49   50   51   52   53   54   55   ...   131
Bog'liq
Tiplarni dinamik tarzda

Valarray son sinfi va uning funksiyalari. Yaqin orada C++ da massiv elementlari bilan ishlash va samarali saqlash uchun Valarray konteyneri paydo bo‘ldi. Bu hamma C++ standartlarida bo‘lmasligi ham mumkin.

  • Bu sinf massiv element indekslari bo‘yicha birlashtrish operatorlari va elementlararo matematik amallarni bajaradi.

  • Vektor bilan solishtirganda Valarray sinf matematik amallarni bajarishda samaraliroq hisoblanadi.

Valarray sinfning ochiq funksiyalari:
apply() – bu massiv elementlari bo‘yicha bir vaqtda o‘zgarishlarni bajaradi va yangi massiv qaytaradi.
sum() – massivdagi elementlar yig‘indisini qaytaradi.
6.2-dastur. apply () va sum () funksiyalaridan foydalanish.


#include "stdafx.h" #include #include using namespace std; int main(){
int myints[] = { 5, 25, 55, 85, 115 };
valarray varr (myints, sizeof(myints)/sizeof(myints[0])); valarray varr_one ;

varr_one = varr.apply([](int x){return x=x+5;});


cout << "Massivning yangi qiymatllar: "; for (int &x: varr_one) cout << '\t' << x;


cout << endl;

cout << "Oldingi massiv sum() => "; cout << varr.sum() << endl;


cout << "Yangi massiv sum() => "; cout << varr_one.sum() << endl; system("pause");
return 0;
}




6.2-dastur.output

Massivning yangi qiymatllar: 10 30 60 90 120 Oldingi massiv sum() => 285
Yangi massiv sum() => 310

Min() va max() fnuksiyalari mos ravishda massiv eng kichik va eng katta elementlari qimatlarini qaytaradi.

cout << "min() => ";
cout << varr.min() << endl; cout << "max() => ";
cout << varr.max() << endl;


shift() – berilgan son qiymat bo‘yicha indeks asosida massivni surib yangi
massiv qaytaradi. Agar son musbat bo‘lsa chapga suriladi, manfiy bo‘lsa, o‘nga suriladi.

Download 1.83 Mb.

Do'stlaringiz bilan baham:
1   ...   48   49   50   51   52   53   54   55   ...   131




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling