Hvordan oppsummere elementene i en vektor i C ++

Hvordan oppsummere elementene i en vektor i C ++

En vektor er en datastruktur som brukes til å lagre en samling av lignende type objekter i C++. Det ligner en matrise, men størrelsen varierer dynamisk sammenlignet med en matrise. Det innebærer at det kan endre seg i størrelse for å passe mer eller færre deler. Å oppsummere elementene i en vektor i C ++ er en vanlig praksis som må læres og gunstig for brukerne som har lidenskap for å lære C -programmering.

Følg denne guiden for å lære å oppsummere elementene i en C ++ vektor.

Hvordan oppsummere en vektorens elementer i C++

Oppsummering av vektorer kan oppnås på forskjellige måter, som er som følger:

  • STL akkumuleres
  • Enkelt for sløyfe
  • STD :: Valarray

Metode 1: STL akkumuleres

Den mest direkte måten å oppsummere elementene i en C ++ -vektor er ved å bruke STL akkumulerer funksjon. Denne funksjonen godtar en vektor og en innledende verdi, og utfører deretter en Summering av Vector's elementer. Akkumuleringsprosessen starter med startverdien og legger deretter til hvert påfølgende element i vektoren. Utgangen er sum av alle elementene i vektor. Akkumuleringsalgoritmen er både effektiv og grei, noe som gjør det til den enkleste måten å oppsummere elementene i en C ++ vektor.

Her er en illustrasjon av hvordan du bruker akkumuleres for å legge til komponentene i en vektor.

#inkludere
#inkludere
#inkludere
ved hjelp av navneområdet STD;
int main ()

vektor vect = 54,17,36,30;
cout<<"Sum of all the elements are:"<cout<

I denne koden erklærer vi et heltall vektor i variabelen 'Vekt'. Så skriver vi ut summen av vektoren ved bare å bruke akkumulere() funksjon. Vekt.begynne() Funksjon refererer til starten av vektoren, og Vekt.slutt() Funksjon refererer til slutten av vektoren, noe som betyr at elementene i vektoren skal oppsummeres fra start til slutt I.e., alle elementer.

Produksjon

2: Enkelt for loop

En annen metode for å oppsummere elementene i en C ++ -vektor er å bruke en til Løkke. Når du bruker en til Løkke, Programmereren definerer en variabel for å holde summen og begynner å iterere gjennom vektor. Sumvariabelen økes med det nåværende elementets verdi ved hver iterasjon. Når sløyfen er ferdig, er den endelige verdien av sumvariabelen summen av alle vektor elementer. Denne teknikken er mindre effektiv enn å bruke akkumuleringsalgoritmen, men den gir programmereren mer kontroll over hvordan elementene legges sammen.

For ytterligere å forstå, undersøke denne koden.

#inkludere
#inkludere
#inkludere
ved hjelp av navneområdet STD;
int main ()

vektor VTR = 1, 2, 3, 4, 5;
float sum = 0;
for (int i = 0; isum += vtr [i];
cout<< sum <retur 0;

Vi bruker en for loop for å oppsummere vektoren, omtrent som i denne koden. I hovedmetoden () er en vektor deklarert, initialisert, og deretter iterert gjennom bruk av en for loop. Ettersom vektoren er iterert gjennom, plasseres totalen i "sum" -variabelen, som tidligere ble initialisert. Og så kan vi sende ut summen når hele vektoren er blitt iterert over.

Produksjon

3: STD :: Valarray

Klassen for å representere og jobbe med verdiarrayer kalles STD :: Valarray. Valarrays er mer effektive enn vektorer i flere aritmetiske beregninger i tillegg til å tillate elementmessig operasjoner.

Se dette eksemplet for å forstå hvordan Valarrays arbeid.

#inkludere
#inkludere
#inkludere
int main ()

std :: vektor Seq 1,2,3,4,5,6,7,8,9,10;
STD :: Valarray seq_add seq.data (), seq.størrelse ();
std :: cout << "sum = " << seq_add.sum() << "\n";
retur 0;

Vi legger til vektoren ved hjelp av en valarray i denne koden. STD -funksjonen brukes i Main () -metoden for å erklære og initialisere en heltallvektor, og SEQ.Add () -funksjon brukes til å bruke dataene og størrelsen på sekvensen, og summen kan deretter rapporteres ved bruk av SEQ.Legg til () -funksjon.

Slik kan du oppsummere elementene i en vektor i C++.

Konklusjon

Valget av hvilken metode som skal brukes, avhenger av flere faktorer, for eksempel programmererens opplevelsesnivå, den spesifikke applikasjonen og dataens art. Generelt sett den mest enkle måten å oppsummere elementene i en C++ vektor er å bruke akkumulere algoritme. Det er den raskeste og enkleste måten å utføre ønsket operasjon. De andre teknikkene, for eksempel til løkker og Valarrays, skal bare brukes når programmet krever mer kontroll eller fleksibilitet.