Kuinka palauttaa useita arvoja C++:ssa

Kuinka Palauttaa Useita Arvoja C Ssa



C++-kieli tarjoaa meille monia ominaisuuksia ja tekee ohjelmoinnistamme paljon helpompaa. Mutta joskus meidän on palautettava useita arvoja työskennellessämme C++-ohjelmoinnin kanssa. Valitettavasti C++ ei helpota meitä tämän ominaisuuden kanssa. Jotta voimme palauttaa useita arvoja C++:ssa, meidän on käytettävä erilaisia ​​tekniikoita. Voimme palauttaa useita arvoja C++:ssa käyttämällä monikoita/pareja, osoittimia ja taulukoita. Tutkimme perusteellisesti kaikkia näitä tekniikoita tässä oppaassa sekä koodeja ja selityksiä.

Esimerkki 1: Tuples/Pairs -parien käyttäminen

Tehdään käytännön esittely useiden arvojen palauttamiseksi C++:ssa. Tässä käytämme monikko/pari-tekniikoita auttamaan palauttamaan useita arvoja koodissamme. C++ tarjoaa erilaisia ​​otsikkotiedostoja, jotka meidän on sisällytettävä koodiimme. Lisäämme tähän 'bits/stdc++.h', koska se sisältää kaikki C++-ohjelmoinnin kirjastot. Sitten tähän lisätään nimiavaruus, joka on 'std'. Tämän jälkeen käytämme 'tuple'-avainsanaa, johon sijoitamme kolme tietotyyppiä, kaksi float-tietotyyppiä ja loput yksi 'char'-tietotyyppi. Sen alapuolella käytämme 'return'-avainsanaa pakataksemme arvot monikon palauttamiseksi.

Nyt käytämme 'pari'-menetelmää useiden arvojen palauttamiseen. Tässä 'pari'-menetelmässä laitamme kaksi muuttujan tietotyyppiä, ja molemmat ovat 'kelluvia'. Muuttujien nimet ovat 'float_1' ja 'float_2'. Sitten pakkaamme kaksi arvoa palataksemme 'pareihin'. Tämän jälkeen kutsumme tässä 'main()' ja julistamme sitten kaksi 'float'-muuttujaa nimellä 'f_1, f_2'. 'char'-muuttuja ilmoitetaan tässä myös nimellä 'myChar'. Sitten puramme arvot, jotka 'My_Tuple()' -funktio palauttaa.







Tämän alle tallennamme palautetut arvot pareittain. Tallennamme '4.99, 8.98' 'My_Tuple' -toimintoon ja '6.86, 3.22' 'My_Pair' -toimintoon. Sitten käytämme 'cout', joka tulostaa kaikki tiedot, jotka on kirjoitettu sen sisään.



Koodi 1:



#include
käyttämällä nimiavaruus std ;
monikko < kellua , kellua , hiiltyä > My_Tuple ( kellua f_1, kellua f_2 ) {
palata make_tuple ( f_2, f_1, '$' ) ;
}
pari < kellua , kellua > Oma_pari ( kellua fa, kellua f_b ) {
palata make_pair ( f_b, f_a ) ;
}
int pää ( ) {
kellua f_1,f_2 ;
hiiltyä myChar ;
solmio ( f_1, f_2, myChar ) = My_Tuple ( 4.99 , 8.98 ) ;
pari uusi_p = Oma_pari ( 6.86 , 3.22 ) ;
cout << 'Arvot, jotka saamme monikoittain:' ;
cout << f_1 << ' ' << f_2 << ' ' << myChar << endl ;
cout << 'Pareittain saamimme arvot:' ;
cout << uusi_p. ensimmäinen << ' ' << uusi_p. toinen ;
palata 0 ;
}

Lähtö :





Arvot, jotka saamme tässä käyttämällä 'tuples'- ja 'pair'-menetelmää, näytetään seuraavassa. Huomaa, että se palauttaa useita arvoja tähän.



Esimerkki 2: Osoittimien käyttäminen

Välitämme parametrit yhdessä niiden osoitteiden kanssa 'vertaa'-funktiossa täällä. Lisäämme 'arvo_1' ja 'arvo_2' 'int'-tyypin ja 'int* g_Address, int* s_Address'. Tämän jälkeen hyödynnämme 'jos'-ehtoa, jossa lisäämme ehdon, että 'arvo_1' on suurempi kuin 'arvo_2'. Jos tämä täyttyy, seuraava lauseke suoritetaan. Jos näin ei ole, se jättää huomioimatta tämän alapuolelle lisätyn lausunnon ja siirtyy 'muu' -osaan. Nyt, kun 'main()' on vedetty, ilmoitamme neljä uutta muuttujaa nimillä 'g_value', 's_value', 'newValue1' ja 'newValue2'.

Tämän jälkeen tulostamme viestin numeroiden syöttämiseksi ja asetamme sitten 'cin', joka saa käyttäjältä kaksi arvoa. Käyttäjän antamat arvot tallennetaan 'newValue1'- ja 'newValue2'-muuttujiin, vastaavasti. Tämän jälkeen kutsumme aiemmin luomamme 'compare()'-funktiota ja välitämme siihen neljä parametria. Sitten näytämme tuloksen 'vertaa'-toiminnon suorittamisen jälkeen ja se näyttää suuremman ja pienemmän luvun niistä numeroista, jotka käyttäjä syöttää.

Koodi 2:

#include
käyttämällä nimiavaruus std ;
mitätön vertailla ( int arvo_1, int arvo_2, int * g_Address, int * s_osoite )
{
jos ( arvo_1 > arvo_2 ) {
* g_osoite = arvo_1 ;
* s_osoite = arvo_2 ;
}
muu {
* g_osoite = arvo_2 ;
* s_osoite = arvo_1 ;
}
}
int pää ( )
{
int g_arvo, s_arvo, uusiArvo_1, uusiArvo_2 ;
cout << 'Syötä kaksi numeroa:' <> uusi Arvo_1 >> uusi Arvo_2 ;
vertailla ( uusiArvo_1, uusiArvo_2, & g_value, & s_arvo ) ;
cout << ' \n Suurin luku on ' << g_arvo << 'ja pienempi numero on'
<< s_arvo ;
palata 0 ;
}

Lähtö :
Käyttäjä kirjoittaa tähän '86' ja '23'. Kun olet painanut 'Enter', se näyttää tuloksen. Tällä tavalla saamme useita arvoja.

Esimerkki 3: Arrayn käyttäminen

Luomme tähän 'ComputeComparison()'-funktion, johon lisäämme kaksi muuttujaa, 'num_1' ja 'num_2', 'int'-tyypiksi ja myös taulukon nimeltä 'my_arr[]'. Tämän jälkeen meillä on 'jos'-ehto, joka tarkistaa, onko 'num_1' suurempi kuin 'num_2' vai ei. Jos se on totta, 'num_1' on määritetty 'my_arr[0]':lle ja 'num_2' on määritetty 'my_arr[1]'. Mutta jos ehto ei ole tosi, 'else':n jälkeiset lauseet suoritetaan, joissa määritetään 'num_2' kohtaan 'my_arr[0]' ja 'num_1' kohtaan 'my_arr[1]'.

Tämän jälkeen kutsumme tässä 'main()' ja julistamme sitten vielä kaksi int-muuttujaa: 'newNum_1' ja 'newNum_2'. Tämän jälkeen ilmoitetaan joukko, jonka koko on '2'. Tämän jälkeen saamme käyttäjältä kaksi numeroa 'cin':n avulla ja kutsumme sitten 'ComputeComparison()'-funktiota ja näytämme seuraavan tuloksen. Joten se palauttaa useita arvoja tähän.

Koodi 3:

#include
käyttämällä nimiavaruus std ;
mitätön Laske vertailu ( int numero_1, int numero_2, int my_arr [ ] )
{

jos ( numero_1 > numero_2 ) {
my_arr [ 0 ] = numero_1 ;
my_arr [ 1 ] = numero_2 ;
}
muu {
my_arr [ 0 ] = numero_2 ;
my_arr [ 1 ] = numero_1 ;
}
}

int pää ( )
{
int uusiNum_1, uusiNum_2 ;
int my_arr [ 2 ] ;

cout << 'Syötä kaksi numeroa vertailua varten' <> uusiNum_1 >> uusiNum_2 ;
Laske vertailu ( newNum_1, newNum_2, my_arr ) ;
cout << ' \n Suurin luku on ' << my_arr [ 0 ] << ' ja '
'pienempi numero on' << my_arr [ 1 ] ;

palata 0 ;
}

Lähtö :
Kirjoita tähän sekä '54' että '98' ja paina sitten 'Enter' näyttääksesi tuloksen. Se näyttää syöttämiämme numeroita suuremmat ja pienemmät numerot.

Esimerkki 4: Tuplejen käyttäminen

Tässä on kaksi otsikkotiedostoa: 'tuple' ja 'iostream'. Seuraavaksi 'std'-nimiavaruus laitetaan tähän. Seuraavaksi käytämme avainsanaa 'tuple' ja lisäämme kaksi tietotyyppiä, jotka ovat 'int'. Tämän jälkeen luomme funktion, jonka nimi on 'findingValues()' ja annamme sen parametreiksi 'intValue_1' ja 'intValue2'.

Sitten 'jos' sijoitetaan kohtaan, jossa kirjoitamme 'intValue_1 < intArvo_2' -ehdon. Sen alapuolelle käytämme 'return'-avainsanaa ja asetamme 'make_tuple()'-funktion, jossa molemmat muuttujat lisätään parametriksi 'intValue_1, intValue2_'. Sitten meillä on 'else'-osa, johon asetamme 'return' uudelleen yhdessä 'make_tuple()'-funktion kanssa. Mutta tässä laitamme ensin 'intValue_2' ja sitten 'intValue1'. Nyt kutsumme 'main()' ja alustamme 'new_value1' arvolla '5' ja 'new_value2' arvolla '28'.

Seuraavassa määritetään vielä kaksi 'int'-tyyppistä muuttujaa nimillä 'suurempi' ja 'pienempi'. Sitten asetamme 'tie()'-funktion ja välitämme 'pienempi, suurempi' muuttujat parametriksi ja kutsumme myös 'findingValues()'-funktion tähän. Tämän jälkeen tulostetaan molemmat arvot: suurempi ja pienempi numero.

Koodi 4:

#include
#sisällytä
käyttämällä nimiavaruus std ;
tuple  findingValues ( int intValue_1, int intValue_2 )
{
jos ( intValue_1 < intValue_2 ) {
palata make_tuple ( intArvo_1 , intArvo_2 ) ;
}
muu {
palata make_tuple ( intArvo_2 , intArvo_1 ) ;
}
}
int pää ( )
{
int uusi_arvo1 = 5 , uusi_arvo2 = 28 ;
int suurempi, pienempi ;
solmio ( pienempi, suurempi ) = arvojen löytäminen ( uusi_arvo1, uusi_arvo2 ) ;
printf ( 'Suurempi luku on %d ja '
'pienempi luku on %d' ,
suurempi, pienempi ) ;
palata 0 ;
}

Lähtö :

Numerot, jotka lisäämme koodiimme, näyttävät samanaikaisesti suuremmat ja pienemmät arvot. Tällä tavalla voimme helposti palauttaa useita arvoja koodissamme.

Johtopäätös

Tämä opas käsittelee 'useiden arvojen palauttamista' C++-koodeissa. Tutkimme tätä käsitettä perusteellisesti tässä oppaassa ja keskustelimme kolmesta tekniikasta, jotka auttavat palauttamaan useita arvoja C++-ohjelmoinnissa. Selitimme, että useita arvoja palautetaan käyttämällä monikoita, pareja, osoittimia ja taulukkotekniikoita. Kaikki nämä tekniikat on kuvattu perusteellisesti tässä.