Răspuns :
Cerinta spune ca functia furnizează numărul obținut tot prin parametrul n.
void Impare (int& n)// n-referinta si functia nu returneaza nimic
{
unsigned int rasturnat=0;
unsigned int nou=0;
unsigned int copie=n;
unsigned int cifranoua;
//sa nu pierdem 0-urile de la sfarsitul numarului
unsigned int zerouri=0;
while(n%10==0)z++,n/=10;
while (n !=0)
{
unsigned int cifra=n%10;
n /=10;
if (cifra % 2==1)
cifranoua=cifra-1;
else
cifranoua = cifra;
rasturnat = rasturnat *10+cifranoua;
}
while (rasturnat !=0)
{
unsigned int cifra = rasturnat %10;
nou = nou*10+cifra;
rasturnat /=10;
}
/*
// ce faci aici e doar pentru un singur 0 la finalul numarului
if (copie %10==0)
nou =nou*10;
*/
n = nou;
while(zerouri--)n*=10;//pun 0-urile de la sfarsitul numarului initial
}
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.