👤

Pe prima linie a fişierului text BAC.IN se găsesc, separate prin câte un spaţiu, mai multe
numere naturale de cel mult 9 cifre fiecare. Scrieţi un program C/C++ care citeşte numerele din acest fişier, elimină toate cifrele impare din fiecare dintre aceste numere şi apoi scrie în fişierul text BAC.OUT numerele astfel obţinute, separate prin câte un spaţiu. Dacă un număr din fişierul BAC.IN nu conţine nicio cifră pară nenulă, acesta nu va mai apărea deloc în fişierul de ieşire.
Exemplu: dacă fişierul BAC.IN conţine numerele 25 7 38 1030 45127 0 35 60 15,
atunci BAC.OUT va avea conţinutul: 2 8 42 60.


Răspuns :

ifstream fi("bac.in");
ofstream fo("bac.out");
int x,y=0,p=1;

while(!fi.eof()){
   fi>>x;
   y=0;p=1;
   while(x){
      if(x%2==0) {y+=p*(x%10);p*=10;}
      x/=10;
   }
   //daca x nu contine niciun nr. par atunci y e 0.
   if(y!=0) fo<<y;
}