👤

URGENT! Se da un numar natural N. A doua cifra trebuie interschimbata cu penultima. In C++ va rog. Mersi​

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int n, d,p,m,rez, i,j,c;

int main()

{

   cin >> n;

   if (n<10) cout << "nu-i posibil...";

   else

   {

       if (n<1000) rez=n;

       else

       {

           m=n;

           while (m>9)

           {

               c=m%10; ++i;

               if (i==2) p=c;

               m/=10;

           }

           d=c;

           ++i; m=n;

           cout << p << " " << d << " " << i << endl;

           int z=1;

           for (j=1; j<=i; j++)

           {

               c=m%10;

               if (j==2) c=d;

               if (j==i-1) c=p;

               rez=c*z+rez;

               z*=10;

               m/=10;

           }

       }

       cout << rez;

   }

}

Explicație:

cu vectori era mai simplu...   evit permanent vectorii cât e posibil .. :)))

Sper codul să fie explicit..

Variabile:

i - pentru nr. de cifre a lui n.

d, p - a doua și penultima cifră

c - cifra curent calculată

rez - numărul nou creat după interschimbare

m - variabilă de lucru...