Răspuns :

#include <iostream>

using namespace std;

int main()

{

   int x,y=0,p=1;

   cin>>x;

   while(x!=0)

   {

       if(x%2==0)

       {

           y=y+p*(x%10);

           p=p*10;

       }

       x=x/10;

   }

   cout<<y;

   return 0;

}

Citim x-ul, iar cat timp acesta este diferit de 0, stam in acel while. Daca nr este par atunci formam un nr y, care prima oara ia valoarea 0+1*cifra para, iar p-ul devine 10. Ne folosim de acel p deoarece iti cere cifrele in ordine. Dupa acel if, eliminam o cifra din x si repetam acelasi lucru pentru fiecare cifra ( daca cifra e impara nu intrii in if ).