Kaip grąžinti kelias reikšmes C++

Kaip Grazinti Kelias Reiksmes C



C++ kalba suteikia mums daug funkcijų ir labai palengvina programavimą. Tačiau kartais, kai dirbame su C++ programavimu, turime grąžinti kelias reikšmes. Deja, C++ nepalengvina šios funkcijos. Norėdami grąžinti kelias reikšmes C++, turime naudoti skirtingus metodus. Mes galime grąžinti kelias reikšmes C++ naudodami eilutes / poras, rodykles ir masyvus. Šiame vadove kartu su kodais ir paaiškinimais nuodugniai išnagrinėsime visus šiuos metodus.

1 pavyzdys: kortelių/porų naudojimas

Atlikime praktinį demonstravimą, kaip grąžinti kelias reikšmes C++. Čia mes naudojame kortelių / porų metodus, kad padėtume grąžinti kelias reikšmes mūsų kode. C++ pateikia įvairius antraštės failus, kuriuos turime įtraukti į savo kodą. Čia įtraukiame „bits/stdc++.h“, nes jame yra visos C++ programavimo bibliotekos. Tada čia pridedama vardų erdvė, kuri yra „std“. Po to naudojame raktinį žodį „tuple“, kuriame pateikiame tris duomenų tipus, du plūduriuojančius duomenų tipus ir likusį vieną „char“ duomenų tipą. Po juo mes naudojame raktinį žodį „return“, kad supakuotų reikšmes ir grąžintume seką.

Dabar mes naudojame „poros“ metodą, norėdami grąžinti kelias vertes. Taikant šį „poros“ metodą, pateikiame du kintamųjų duomenų tipus ir abu čia yra „plaukiojantys“. Kintamieji pavadinti „float_1“ ir „float_2“. Tada supakuojame dvi reikšmes, kad grįžtume į „poras“. Po to čia iškviečiame „main()“ ir deklaruojame du „float“ kintamuosius pavadinimu „f_1, f_2“. Kintamasis „char“ čia taip pat deklaruojamas kaip „myChar“. Tada išpakuojame reikšmes, kurias grąžina funkcija „My_Tuple()“.







Po juo mes saugome grąžintas reikšmes poromis. Saugome „4.99, 8.98“ funkcijoje „My_Tuple“ ir „6.86, 3.22“ – „My_Pair“. Tada mes naudojame 'cout', kuris spausdina visą informaciją, kuri yra parašyta viduje.



1 kodas:



#include
naudojant vardų erdvė std ;
kortele < plūdė , plūdė , char > Mano_Tuple ( plūdė f_1, plūdė f_2 ) {
grąžinti make_tuple ( f_2, f_1, '$' ) ;
}
pora < plūdė , plūdė > Mano_pora ( plūdė f_a, plūdė f_b ) {
grąžinti make_pair ( f_b, f_a ) ;
}
tarpt pagrindinis ( ) {
plūdė f_1, f_2 ;
char myChar ;
kaklaraištis ( f_1, f_2, myChar ) = Mano_Tuple ( 4.99 , 8.98 ) ;
pora new_p = Mano_pora ( 6.86 , 3.22 ) ;
cout << „Vertės, kurias gauname iš eilės:“ ;
cout << f_1 << ' ' << f_2 << ' ' << myChar << endl ;
cout << „Vertės, kurias gauname poromis:“ ;
cout << naujas_p. Pirmas << ' ' << naujas_p. antra ;
grąžinti 0 ;
}

Išvestis :





Toliau pateikiamos reikšmės, kurias gauname naudodami „koretų“ ir „poros“ metodą. Atminkite, kad čia pateikiamos kelios reikšmės.



2 pavyzdys: Rodyklės naudojimas

Mes perduodame parametrus kartu su jų adresais funkcijoje „palyginti“. Pridedame 'vertė_1' ir 'vertė_2' tipo 'int' ir 'int* g_Address, int* s_Address'. Po to naudojame sąlygą „jei“, kai pridedame sąlygą, kad „reikšmė_1“ yra didesnė nei „reikšmė_2“. Jei tai patenkinama, vykdomas toks sakinys. Jei ne, jis nepaiso teiginio, kuris pridedamas žemiau, ir pereina prie dalies „kita“. Dabar, iškvietę „main()“, paskelbiame keturis naujus kintamuosius pavadinimais „g_value“, „s_value“, „newValue1“ ir „newValue2“.

Po to išspausdiname pranešimą, kad įvestume skaičius, tada įdedame „cin“, kuris iš vartotojo gauna dvi reikšmes. Vartotojo įvestos reikšmės išsaugomos atitinkamai „newValue1“ ir „newValue2“ kintamuosiuose. Po to mes iškviečiame anksčiau sukurtą funkciją „palyginti ()“ ir perduodame jai keturis parametrus. Tada, atlikus funkciją „palyginti“, parodome rezultatą ir rodomas didesnis ir mažesnis skaičius iš tų skaičių, kuriuos vartotojas įveda.

2 kodas:

#include
naudojant vardų erdvė std ;
tuštuma palyginti ( tarpt vertė_1, tarpt value_2, tarpt * g_Address, tarpt * s_Adresas )
{
jeigu ( vertė_1 > vertė_2 ) {
* g_Adresas = vertė_1 ;
* s_Adresas = vertė_2 ;
}
Kitas {
* g_Adresas = vertė_2 ;
* s_Adresas = vertė_1 ;
}
}
tarpt pagrindinis ( )
{
tarpt g_value, s_value, newValue_1, newValue_2 ;
cout << 'Įveskite du skaičius: ' <> newValue_1 >> newValue_2 ;
palyginti ( newValue_1, newValue_2, & g_value, & s_vertė ) ;
cout << \n Didesnis skaičius yra ' << g_value << 'o mažesnis skaičius yra '
<< s_vertė ;
grąžinti 0 ;
}

Išvestis :
Vartotojas čia įveda „86“ ir „23“. Paspaudus „Enter“, rodomas rezultatas. Tokiu būdu gauname kelias vertes.

3 pavyzdys: masyvo naudojimas

Čia sukuriame funkciją „ComputeComparison()“, kurioje įterpiame du kintamuosius „num_1“ ir „num_2“ kaip „int“ tipą, taip pat masyvą pavadinimu „my_arr[]“. Po to turime sąlygą „jei“, kuri patikrina, ar „num_1“ yra didesnis nei „num_2“, ar ne. Jei tai tiesa, „num_1“ priskiriamas „mano_arr[0]“, o „num_2“ priskiriamas „mano_arr[1]“. Bet jei sąlyga neteisinga, vykdomi teiginiai po „else“, kuriuose „num_2“ priskiriame „mano_arr[0]“, o „num_1“ – „mano_arr[1]“.

Po to čia iškviečiame „main()“ ir paskelbiame dar du int kintamuosius: „newNum_1“ ir „newNum_2“. Po to deklaruojamas „2“ dydžio masyvas. Po to iš vartotojo gauname du skaičius naudodami „cin“, tada iškviečiame funkciją „ComputeComparison()“ ir parodome tokį rezultatą. Taigi čia pateikiamos kelios reikšmės.

3 kodas:

#include
naudojant vardų erdvė std ;
tuštuma Apskaičiuokite palyginimą ( tarpt skaičius_1, tarpt skaičius_2, tarpt mano_arr [ ] )
{

jeigu ( skaičius_1 > skaičius_2 ) {
mano_arr [ 0 ] = skaičius_1 ;
mano_arr [ 1 ] = skaičius_2 ;
}
Kitas {
mano_arr [ 0 ] = skaičius_2 ;
mano_arr [ 1 ] = skaičius_1 ;
}
}

tarpt pagrindinis ( )
{
tarpt newNum_1, newNum_2 ;
tarpt mano_arr [ 2 ] ;

cout << 'Palyginimui įveskite du skaičius' <> naujasNum_1 >> naujasNum_2 ;
Apskaičiuokite palyginimą ( newNum_1, newNum_2, my_arr ) ;
cout << \n Didesnis skaičius yra ' << mano_arr [ 0 ] << ' ir '
'mažesnis skaičius yra' << mano_arr [ 1 ] ;

grąžinti 0 ;
}

Išvestis :
Čia įrašome ir „54“, ir „98“, tada paspauskite „Enter“, kad būtų rodomas rezultatas. Tai rodo didesnius ir mažesnius skaičius iš įvestų skaičių.

4 pavyzdys: kortelių naudojimas

Čia yra du antraštės failai: „tuple“ ir „iostream“. Toliau čia įdedama „std“ vardų erdvė. Tada naudojame raktinį žodį „tuple“ ir įterpiame du duomenų tipus, kurie yra „int“. Po to sukuriame funkciją pavadinimu „findingValues()“ ir kaip parametrus perduodame „intValue_1“ ir „intValue2“.

Tada „if“ dedamas ten, kur įvedame sąlygą „intValue_1 < intValue_2“. Po juo naudojame raktinį žodį „return“ ir įdedame funkciją „make_tuple()“, kurioje abu kintamieji pridedami kaip parametras „intValue_1, intValue2_“. Tada turime dalį „else“, kurioje vėl įdedame „return“ kartu su funkcija „make_tuple()“. Bet čia pirmiausia įdedame „intValue_2“, o tada „intValue1“. Dabar mes vadiname „main()“ ir inicijuojame „new_value1“ su „5“ ir „new_value2“ su „28“.

Toliau deklaruojame dar du „int“ tipo kintamuosius, kurių pavadinimai yra „didesnis“ ir „mažesnis“. Tada įdedame funkciją „tie()“ ir kaip parametrą perduodame „mažesni, didesni“ kintamuosius, taip pat čia iškviečiame funkciją „findingValues()“. Po to spausdiname abi reikšmes: didesnį ir mažesnį skaičių.

4 kodas:

#include
#įtraukti
naudojant vardų erdvė std ;
tuple finingValues ( tarpt intValue_1, tarpt intValue_2 )
{
jeigu ( intValue_1 < intValue_2 ) {
grąžinti make_tuple ( intValue_1 , intValue_2 ) ;
}
Kitas {
grąžinti make_tuple ( intValue_2 , intValue_1 ) ;
}
}
tarpt pagrindinis ( )
{
tarpt nauja_vertė1 = 5 , new_value2 = 28 ;
tarpt didesnis, mažesnis ;
kaklaraištis ( mažesnis, didesnis ) = radimasValues ( nauja_vertė1, nauja_vertė2 ) ;
printf ( 'Didesnis skaičius yra %d ir '
'mažesnis skaičius yra %d' ,
didesnis, mažesnis ) ;
grąžinti 0 ;
}

Išvestis :

Skaičiai, kuriuos pridedame prie savo kodo, vienu metu rodo didesnes ir mažesnes reikšmes. Tokiu būdu galime lengvai grąžinti kelias reikšmes savo kode.

Išvada

Šis vadovas yra apie „kelių reikšmių grąžinimą“ C++ koduose. Šiame vadove nuodugniai ištyrėme šią sąvoką ir aptarėme tris būdus, padedančius grąžinti kelias reikšmes C++ programuojant. Paaiškinome, kad kelios reikšmės grąžinamos naudojant eilutes, poras, rodykles ir masyvo metodus. Visi šie metodai yra išsamiai aprašyti čia.