Kako vratiti više vrijednosti u C++

Kako Vratiti Vise Vrijednosti U C



Jezik C++ pruža nam mnoge mogućnosti i čini naše programiranje mnogo lakšim. Ali ponekad moramo vratiti više vrijednosti dok radimo s C++ programiranjem. Nažalost, C++ nam ne olakšava ovu značajku. Da bismo vratili više vrijednosti u C++, moramo koristiti različite tehnike. Možemo vratiti više vrijednosti u C++ koristeći torke/parove, pokazivače i nizove. Detaljno ćemo proučiti sve ove tehnike u ovom vodiču zajedno s kodovima i objašnjenjima.

Primjer 1: Korištenje torki/parova

Napravimo praktičnu demonstraciju vraćanja višestrukih vrijednosti u C++. Ovdje koristimo tehnike torki/parova kako bismo vratili više vrijednosti u našem kodu. C++ nudi različite datoteke zaglavlja koje moramo uključiti u naš kod. Ovdje uključujemo 'bits/stdc++.h' jer sadrži sve biblioteke programiranja u C++. Zatim se ovdje dodaje imenski prostor koji je 'std'. Nakon toga koristimo ključnu riječ 'tuple' u koju postavljamo tri tipa podataka, dva float tipa podataka i preostali jedan 'char' tip podataka. Ispod njega koristimo ključnu riječ 'return' za pakiranje vrijednosti za vraćanje torke.

Sada koristimo metodu 'pair' za vraćanje više vrijednosti. U ovu metodu 'uparivanja' stavljamo dvije vrste podataka varijable, a obje su ovdje 'float'. Varijable se nazivaju “float_1” i “float_2”. Zatim pakiramo dvije vrijednosti za povratak na 'parove'. Nakon ovoga, ovdje pozivamo “main()” i zatim deklariramo dvije “float” varijable s imenom “f_1, f_2”. Varijabla “char” također je ovdje deklarirana kao “myChar”. Zatim raspakiramo vrijednosti koje je vratila funkcija 'My_Tuple()'.







Ispod toga pohranjujemo vraćene vrijednosti u parovima. Pohranjujemo ”4,99, 8,98” u funkciji “My_Tuple” i “6,86, 3,22” u funkciji “My_Pair”. Zatim koristimo “cout” koji ispisuje sve informacije koje su unutar njega zapisane.



Kod 1:



#include
korištenjem imenski prostor std ;
tuple < plutati , plutati , char > Moja_torka ( plutati f_1, plutati f_2 ) {
povratak napraviti_torku ( f_2, f_1, '$' ) ;
}
par < plutati , plutati > Moj_par ( plutati fa, plutati f_b ) {
povratak napravi_par ( f_b, f_a ) ;
}
int glavni ( ) {
plutati f_1,f_2 ;
char mojZnak ;
kravata ( f_1, f_2, mojZnak ) = Moja_torka ( 4.99 , 8.98 ) ;
par new_p = Moj_par ( 6.86 , 3.22 ) ;
cout << 'Vrijednosti koje dobivamo torkama: ' ;
cout << f_1 << ' ' << f_2 << ' ' << mojZnak << endl ;
cout << 'Vrijednosti koje dobivamo po paru: ' ;
cout << nova_str. prvi << ' ' << nova_str. drugi ;
povratak 0 ;
}

Izlaz :





Vrijednosti koje ovdje dobivamo korištenjem 'torki' i metode 'parova' prikazane su u nastavku. Imajte na umu da ovdje vraća više vrijednosti.



Primjer 2: Korištenje pokazivača

Ovdje prosljeđujemo parametre zajedno s njihovim adresama u funkciji 'usporedi'. Dodajemo “value_1” i “value_2” tipa “int” i “int* g_Address, int* s_Address”. Nakon toga koristimo uvjet 'if' u kojem dodajemo uvjet da je 'vrijednost_1' veća od 'vrijednost_2'. Ako je ovo zadovoljeno, izvršava se sljedeća naredba. Ako nije, zanemaruje izjavu koja je dodana ispod ovoga i kreće prema dijelu 'drugo'. Sada, nakon pozivanja “main()”, deklariramo četiri nove varijable s imenima “g_value”, “s_value”, “newValue1” i “newValue2”.

Nakon toga ispisujemo poruku za unos brojeva i zatim stavljamo “cin” koji od korisnika dobiva dvije vrijednosti. Vrijednosti koje korisnik unese spremaju se u varijablama “newValue1” odnosno “newValue2”. Nakon toga pozivamo funkciju “compare()” koju smo prethodno izradili i prosljeđujemo joj četiri parametra. Zatim prikazujemo rezultat nakon izvođenja funkcije 'usporedi' i prikazuje veći i manji broj od tih brojeva koje korisnik unese.

Kod 2:

#include
korištenjem imenski prostor std ;
poništiti usporediti ( int vrijednost_1, int vrijednost_2, int * g_Adresa, int * s_Adresa )
{
ako ( vrijednost_1 > vrijednost_2 ) {
* g_Adresa = vrijednost_1 ;
* s_Adresa = vrijednost_2 ;
}
drugo {
* g_Adresa = vrijednost_2 ;
* s_Adresa = vrijednost_1 ;
}
}
int glavni ( )
{
int g_vrijednost, s_vrijednost, novavrijednost_1, novavrijednost_2 ;
cout << 'Molimo unesite dva broja: ' <> novaVrijednost_1 >> novaVrijednost_2 ;
usporediti ( novavrijednost_1, novavrijednost_2, i g_vrijednost, i s_vrijednost ) ;
cout << ' \n Veći broj je ' << g_vrijednost << ' a manji broj je '
<< s_vrijednost ;
povratak 0 ;
}

Izlaz :
Korisnik ovdje upisuje “86” i “23”. Nakon pritiska na 'Enter', prikazuje se rezultat. Na taj način dobivamo više vrijednosti.

Primjer 3: Korištenje polja

Ovdje stvaramo funkciju “ComputeComparison()” u koju umećemo dvije varijable, “num_1” i “num_2”, kao tip “int” i također polje pod nazivom “my_arr[]”. Nakon ovoga, imamo uvjet “if” koji provjerava je li “num_1” veći od “num_2” ili ne. Ako je istina, 'num_1' se dodjeljuje 'my_arr[0]', a 'num_2' se dodjeljuje 'my_arr[1]'. Ali ako uvjet nije istinit, izvode se naredbe nakon “else” u kojima dodjeljujemo “num_2” “my_arr[0]” i “num_1” “my_arr[1]”.

Nakon toga, ovdje pozivamo “main()” i zatim deklariramo još dvije int varijable: “newNum_1” i “newNum_2”. Nakon toga se deklarira niz veličine “2”. Nakon toga dobivamo dva broja od korisnika uz pomoć “cin” i zatim pozivamo funkciju “ComputeComparison()” i prikazujemo sljedeći rezultat. Dakle, ovdje vraća više vrijednosti.

Kod 3:

#include
korištenjem imenski prostor std ;
poništiti ComputeComparison ( int broj_1, int broj_2, int moj_arr [ ] )
{

ako ( broj_1 > broj_2 ) {
moj_arr [ 0 ] = broj_1 ;
moj_arr [ 1 ] = broj_2 ;
}
drugo {
moj_arr [ 0 ] = broj_2 ;
moj_arr [ 1 ] = broj_1 ;
}
}

int glavni ( )
{
int noviBr_1, noviBr_2 ;
int moj_arr [ 2 ] ;

cout << 'Unesite dva broja za usporedbu' <> noviNum_1 >> noviBroj_2 ;
ComputeComparison ( noviBroj_1, noviBroj_2, moj_arr ) ;
cout << ' \n Veći broj je ' << moj_arr [ 0 ] << ' i '
'manji broj je' << moj_arr [ 1 ] ;

povratak 0 ;
}

Izlaz :
Ovdje upišemo i “54” i “98” i zatim pritisnemo “Enter” za prikaz rezultata. Prikazuje veće i manje brojeve od brojeva koje smo unijeli.

Primjer 4: Korištenje torki

Ovdje su uključene dvije datoteke zaglavlja: “tuple” i “iostream”. Zatim se ovdje stavlja imenski prostor 'std'. Zatim koristimo ključnu riječ 'torka' i umećemo dva tipa podataka koji su 'int'. Nakon toga stvaramo funkciju s imenom “findingValues()” i prosljeđujemo “intValue_1” i “intValue2” kao njene parametre.

Zatim se 'if' postavlja tamo gdje upisujemo uvjet 'intValue_1 < intValue_2'. Ispod njega koristimo ključnu riječ 'return' i postavljamo funkciju 'make_tuple()' u koju se obje varijable dodaju kao parametar 'intValue_1, intValue2_'. Zatim imamo dio 'else' u koji ponovno stavljamo 'return' zajedno s funkcijom 'make_tuple()'. Ali ovdje prvo postavljamo 'intValue_2', a zatim 'intValue1'. Sada pozivamo “main()” i inicijaliziramo “new_value1” s “5” i “new_value2” s “28”.

U nastavku deklariramo još dvije varijable tipa “int” s imenima “greater” i “smaller”. Zatim postavljamo funkciju 'tie()' i prosljeđujemo varijable 'manje, veće' kao parametar i također ovdje pozivamo funkciju 'findingValues()'. Nakon toga ispisujemo obje vrijednosti: veći i manji broj.

Kod 4:

#include
#uključi
korištenjem imenski prostor std ;
tuple  findingValues ( int intValue_1, int intVrijednost_2 )
{
ako ( intVrijednost_1 < intVrijednost_2 ) {
povratak napraviti_torku ( intValue_1 , intValue_2 ) ;
}
drugo {
povratak napraviti_torku ( intValue_2 , intValue_1 ) ;
}
}
int glavni ( )
{
int nova_vrijednost1 = 5 , nova_vrijednost2 = 28 ;
int veći, manji ;
kravata ( manji, veći ) = pronalaženjeVrijednosti ( nova_vrijednost1, nova_vrijednost2 ) ;
printf ( 'Veći broj je %d i '
'manji broj je %d' ,
veći, manji ) ;
povratak 0 ;
}

Izlaz :

Brojevi koje dodajemo našem kodu istovremeno prikazuju veće i manje vrijednosti. Na taj način možemo lako vratiti više vrijednosti u našem kodu.

Zaključak

Ovaj vodič govori o 'vraćanju višestrukih vrijednosti' u C++ kodovima. Temeljito smo istražili ovaj pojam u ovom vodiču i raspravljali o tri tehnike koje pomažu u vraćanju višestrukih vrijednosti u C++ programiranju. Objasnili smo da se višestruke vrijednosti vraćaju korištenjem tehnika torki, parova, pokazivača i polja. Sve ove tehnike ovdje su detaljno opisane.