STD Finn C ++

STD Finn C ++
C ++ programmeringsspråket er et språk på høyt nivå som er veldig praktisk og gir et stort utvalg av innebygde funksjoner. Disse innebygde funksjonene overvinner behovet for å skrive lange koder for å utføre en liten oppgave. Du trenger bare å bruke en innebygd funksjon for å utføre en spesifikk oppgave med bare en uttalelse. I denne artikkelen vil vi diskutere finne() Innebygd funksjon av C ++ og lære å bruke den i programmene våre ved hjelp av eksempler.

STD Finn C ++ -funksjon

De finne() Funksjon er gitt i C ++ standardbiblioteket 'algoritme'. Den brukes til å finne en spesifikk verdi i dataene. De finne() Funksjon utfører funksjonen til søk: ser etter spesifikke data og returnerer den hvis den blir funnet. Den bruker operatøren '=' for å sammenligne de spesifiserte dataene innen et gitt dataområde. Hvis det gitte elementet finner en kamp i det spesifiserte området, er finne() Funksjonen vil returnere en iterator til det første elementet. Hvis det gitte elementet ikke stemmer overens med dataene i det gitte området, vil funnfunksjonen returnere en iterator til det siste elementet i området.

Syntaks av STD Finn C ++ -funksjon

Syntaksen til Find () -funksjonen er som følger:

Input_Iterator er iteratoren som brukes til å iterere gjennom sekvensielle data. Starter fra den første posisjonen, itererer gjennom alle posisjoner med en økning, og når den siste posisjonen. Den 'første' og 'siste' parameteren refererer til henholdsvis den første og siste posisjonen i det gitte området. "Verdien '-parameteren er verdien som må søkes innenfor et gitt område. De finne() Funksjonen returnerer iteratorposisjonen innenfor det gitte området.

La oss nå implementere noen eksempler for å lære å bruke finne() Funksjon i et C ++ -program.

Eksempel 1:

Det første eksemplet vil demonstrere den grunnleggende bruken av finne() funksjon. Her definerer vi ganske enkelt en matrise som inneholder flere verdier og finner deretter en verdi i den arrayen ved å bruke finne() funksjon. Se koden gitt nedenfor:

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

vektor arr 50, 90, 100, 70, 60, 20;
vektor:: Iterator I;
cout << "Data = ";
for (int a = 0; acout<< arr[a] << ", ";
cout <int s = 100;
i = Finn (arr.Begynn (), arr.slutt (), s);
hvis jeg != arr.slutt())
cout << "Element " << s <<" found at "<< i - arr.begin() << " position."<ellers
cout << "Element not found.\n\n";
retur 0;

La oss nå forklare hver uttalelse.

Den er en overskriftsfil som brukes til å inkludere alle standardbibliotekene til C++. Det gir all den innebygde funksjonen som maks (), finn (), etc.

Biblioteket er inkludert i programmet for å få alle inngangs- og utgangsstrømfunksjonene i programmet som CIN, COUT, etc.

'Bruke namespace std' er navneområdet standardbibliotek som brukes til å fortelle kompilatoren om koden for CIN og Cout -funksjonalitet.

Her definerte vi en matrise som heter 'arr' som inneholder 6 elementer og en input iterator 'i'. Input Iterator 'I' vil bli brukt til å iterere gjennom matrisen 'ARR' for å finne den spesifiserte verdien.

'For' sløyfen er definert for å iterere gjennom hvert element i matrisen etterfulgt av "cout" -uttalelsen for å skrive ut hvert element i matrisen. For å bestemme matrisens størrelse, bruk metoden 'størrelse ()'. Så med mindre sløyfen itererer gjennom hvert element i matrisen og når slutten, vil den fortsette å iterere ved å øke A ++ og skrive ut hvert element i matrisen en etter en.

Verdien å se etter er tilordnet en variabel 's'.

Inngangs iterator 'i' vil inneholde iteratorposisjonen etter finne() Funksjon utfører beregningen. De arr.begynne() Har den første posisjonen i matrisen da BEGIN () -funksjonen brukes til å finne den første plasseringen av det gitte området. Tilsvarende arr.slutt() har den siste posisjonen i matrisen som slutt() Funksjon brukes til å finne den siste plasseringen av det gitte området. Verdien som må være lokalisert i matrisen er lagret i 'S'. 'Hvis' -funksjonen er definert for å sjekke tilstanden at iteratoren ikke er på slutten av matrisen med 'Jeg != arr.slutt()' uttalelse. De 'Jeg - arr.begynne()' Uttalelse brukes til å få elementets plassering hvis det finnes i matrisen. "Else" -tilstanden vil bli utført og skrive ut "elementet ikke funnet" hvis elementet ikke kan finnes i matrisen. Til slutt brukes "retur 0" -erklæringen til å returnere 'finn' -verdien eller øke et unntak i tilfelle feil. Se nå på utgangen gitt nedenfor:

100 er til stede i matrisen, og den finnes av finne() Funksjon i posisjon 2. Tellingen av matriseposisjonen starter fra 0, så plasseringen av 100 er 2, ikke 3.

Eksempel 2:

Som diskutert ovenfor, finne() Funksjonen er tilgjengelig i biblioteket 'Algoritme', men vi brukte 'BITS/STDC++.H 'overskriftsfil for å inkludere finne() Funksjon i programmet. Siden finne() Funksjonen er tilgjengelig i både 'algoritmen' og 'BITS/STDC++.H 'standardbibliotek, vi kan bruke noen av dem. Se den komplette koden gitt nedenfor:

#inkludere
#inkludere
ved hjelp av navneområdet STD;
int main ()
int arr [] = 50, 90, 100, 70, 60, 20;
int * p;
p = finn (arr, arr+4, 90);
if (s != arr+4)
cout << "Element found in array " << *p << " at position " << p-arr<<'\n';
ellers
cout << "Element not found in array\n";
retur 0;

Her bruker vi 'algoritme' overskriftsfilen for å inkludere finne() funksjon i programmet vårt.

Vi bruker en pekervariabel for å iterere gjennom matrisen.

Poenget å merke seg her er at vi har begrenset den siste posisjonen til ARR+4. Input -iteratoren starter fra den første plasseringen av matrisen og itererer gjennom matrisen til stillingen er ARR+4. Dette vil ikke tillate at funksjonen kan iterere før den siste posisjonen i matrisen og stopper iterering på ARR+4 -stillingen. De finne() Funksjonen vil se etter det spesifiserte nummeret med området som starter fra ARR og slutter på ARR+4.

Her er utdataene produsert av den gitte koden:

Eksempel 3:

La oss nå se hva som skjer hvis vi gir en verdi som ikke er til stede i de gitte dataene. Vi bruker den samme koden som brukes i det første eksemplet og bare endrer varen å se etter.

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

vektor arr 50, 90, 100, 70, 60, 20;
vektor:: Iterator I;
cout << "Data = ";
for (int a = 0; acout<< arr[a] << ", ";
cout <int s = 2;
i = Finn (arr.Begynn (), arr.slutt (), s);
hvis jeg != arr.slutt())
cout << "Element " << s <<" found at "<< i - arr.begin() << " position."<ellers
cout << "Element not found.\n\n";
retur 0;

2 -tallet er ikke til stede i matrisen, slik at "hvis" -tilstanden vil være fornøyd, og "ellers" vil bli utført i dette tilfellet. Se utdataene produsert av koden gitt ovenfor:

Konklusjon

I denne opplæringen utforsket vi arbeidet med Find () -funksjonen som leveres i 'Algoritme' -biblioteket. Finn () -funksjonen brukes til å finne en spesifikk verdi i et gitt sett med elementer. Vi har 3 unike eksempler innlemmet i denne guiden som vil hjelpe leserne våre.