fbpx

Problema #1633 – Dublare1 – Rezolvari PBInfo

de Mihai-Alexandru

 

Cerința

Să se scrie un subprogram C++ prin care se dublează prima cifră a unui număr natural n transmis ca parametru. Funcția întoarce rezultatul prin intermediul aceluiași parametru n.

Restricții și precizări

  • 1 ≤ n ≤ 10000000
  • funcția va avea un singur parametru n
  • numele funcției va fi dublare1

Exemplu

Dacă n are valoarea 85412, după apelul dublare1(n), n va fi 885412.

Explicație

Prima cifră 8 se scrie de două ori.

Important

Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.

void dublare1(int &n)
{
    int p=1;
    int cop=n;
    while(cop>9)
    {
        p=p*10;
        cop=cop/10;
    }
    n=n/p*11*p+n%p;
}

 

Comentarii

S-ar putea sa iti placa