Tiplarni dinamik tarzda


size() – valarray to‘plam ostining umumiy massiv elementlari sonini aniqlaydi. start()


Download 1.83 Mb.
bet55/131
Sana16.06.2023
Hajmi1.83 Mb.
#1503422
1   ...   51   52   53   54   55   56   57   58   ...   131
Bog'liq
Tiplarni dinamik tarzda

size() – valarray to‘plam ostining umumiy massiv elementlari sonini aniqlaydi.
start() – valarray to‘plam ostining umumiy boshlang‘ich indeksini qaytaradi
stride() - valarray to‘plam ostining umumiy elementlari orasidagi masofani topadi.
Gslice konstruktori:


gslice(
size_t _StartIndex,
const valarray& _LenArray, const valarray& _IncArray);

Parametrlari:
_StartIndex – to‘plam ositdagi birinchi elemeni indeksi
_LenArray – har bir to‘plam osti uchun massiv elementlari soni
_IncArray - har bir to‘plam osti uchun massiv elementlari orasidagi masofa (qadam);
Standart konstruktor boshlang‘ich indeksi nol uzunlikdagi vektorlar va vektorlari uchun uzunlik va qadam nol qiymatni saqlaydi. Ikkinchi konstruktor boshlang‘ich indeksi uchun _startindex saqlaydi, qator uzunligi uchun _lenarray va qadam uchun _incarray qiymatlarni saqlaydi.
gslice – bir nechta qismdan tashkil topgan valarray uchun to‘plam osti valarrayni aniqlaydi va hammasi belgilangan bir element indeksidan boshlanadi. gslice i slice ning farqlari birgina bir nechta qism valarray lar bilan ishlashdadir.
6.4-dastur. gslice sinfidan foydalanish.


#include "stdafx.h"

#include #include using namespace std; int main(){int i;
valarray va ( 20 ), vaResult; for ( i = 0 ; i < 20 ; i+=1 )
va [ i ] = i+1;

cout << "valarray massiv elementlari: " << endl << "(";


for ( i = 0 ; i < 20 ; i++ ) cout << '\t' << va [ i ];
cout << " )" << endl;
valarray Len (2), Stride(2); Len [0] = 6;
Len [1] = 4;Stride [0] = 2; Stride [1] = 4;
gslice vaGSlice (0, Len, Stride );
vaResult = va[vaGSlice];
cout << " vaGSlice asosida vaResult elementlari:" << endl<< "va[vaGSlice] = (";
for ( i = 0 ; i < 10 ; i++ ) cout << '\t' << vaResult [ i ]; cout << ")" << endl;
const valarray sizeGS = vaGSlice.size ( );
cout << "vaResult elementlar soni:"<< " vaGSlice.size ( ) = ( ";
for ( i = 0 ; i < 2 ; i++ ) cout <size_t vaGSstart = vaGSlice.start ( );

cout << "vaResult uchun birinchi element indeksi: "<< vaGSstart << "." << endl;





const valarray strideGS = vaGSlice.stride ( );
cout << "vaResult ychun qadamlar:"<< " vaGSlice.stride ( ) = ( ";
for ( i = 0 ; i < 2 ; i++ ) cout << strideGS[ i ] << '\t'; cout << ")." << endl; system("pause");}




6.4-dastur. Output

valarray massiv elementlari:
( 1 2 3 4 5 6 7 8
9 10 11 12 13 14
15 16 17 18 19 20 )
vaGSlice asosida vaResult elementlari:
va[vaGSlice] = ( 1 5 9 13 3 7
11 15 5 9)
vaResult elementlar soni: vaGSlice.size ( ) = ( 6 4 ). vaResult uchun birinchi element indeksi: 0.
vaResult ychun qadamlar: vaGSlice.stride ( ) = ( 2 4 ).

Dastur tahlili bilan mutaqil shug‘ullaning.

Download 1.83 Mb.

Do'stlaringiz bilan baham:
1   ...   51   52   53   54   55   56   57   58   ...   131




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