Informatică, întrebare adresată de mateimurgoci, 9 ani în urmă

Cum afli cifra din stanga si cifra din drapta a unei alte cifre in c++


andriesboss92: Sigur atat e cerinta?
andriesboss92: Ideea e ca nu prea are sens... adica.. cine e cifra aceea cu ajutorul careia aflii cifra din stanga si din dreapta?
mateimurgoci: nu e cerinta e ceva ce vreau sa stiu eu, am de exemplu numarul 2345 cum pot eu sa afisez vecinii cifrei 4 acestia fiind 3 si 5

Răspunsuri la întrebare

Răspuns de andriesboss92
2

#include <iostream>

using namespace std;

int main()

{

   int n, x, a[100],copie, nr=0, i;

   cout<<"Numaru este: ";cin>>n;

   cout<<"Cauta vecinii cifrei: ";cin>>x;

   copie=n;

   while(copie!=0)

   {

       nr=nr+1;

       a[nr]=copie%10;

// in vector se v-a memora cifrele numarului, insa invers

// de exemplu daca citesc n=2345, atunci vectorul a[] va fi: 5 4 3 2

       copie=copie/10;

   }


   for(i=nr;i>=1;i--)

       if(a[i]==x)

           cout<<"Vecinii lui " <<x<<" sunt: "<<a[i+1]<<"  "<<a[i-1]<<endl;

}

---------------------------------------------------------------------

Pentru n=2345 se va afisa:

Vecinii lui 4 sunt: 3 5


Pentru n=234538 se va afisa:

Vecinii lui 3 sunt: 2 4

Vecinii lui 3 sunt: 5 8


Efectiv muti cifrele in vector si parcurgi vectorul pana cand gasesti cifra x ( citita )

In problema asta vectorul a este format din cifrele lui n luate de la dreapta la stanga.. de aceea am luat acel for(i=nr;i>=1;i--) pentru a lua elementele de la capat.. adica

pentru n=2345, vectorul a este: 5 4 3 2

Daca pun acel for voi verifica elementele de la dreapta la stanga, adica teoretic vectorul meu, in timpul parcugerii, este: 2 3 4 5 ( TEORETIC )



mateimurgoci: ty <3
mateimurgoci: Inca o intrebare : Fara sa folosesti vector nu se poat afla?
andriesboss92: Se poate.. insa asta mi-a venit prima data in minte cand ai zis ca vrei sa aflii vecinii.. e si cea mai usoara metoda
mateimurgoci: Si ai putea sa imi arati si a doua metoda?
Alte întrebări interesante