Informatică, întrebare adresată de teodortoderitap37w4j, 8 ani în urmă

Cum as putea sa mut toate cifrele dintr-un vector intr-o variabila, tinand cont ca vectorul poate avea 1000 de termeni:

int a[] = {8, 6 , 5, 9, 0, 7, 1, 6, 1, 7, 5, 9, 2, 6, 8, 1, 3, 9, 8, 7, 7, 7 ,3} - exemplu


Am incercat cu: unsigned long long temp = 0; temp += a[i] * pow(10, i - 1); intr-un for dar functia pow nu poate stoca numere asa mari


teodortoderitap37w4j: 1 ≤ a[0] ≤ 1 000
teodortoderitap37w4j: a[]*

Răspunsuri la întrebare

Răspuns de Mateiut9
1

Răspuns:

Explicație:

   for(int i=1;i<=n;i++){   //de aici citesti vectorul

       cin>>v[i];

       cnt++;

       p*=10; //cand il citesti cresti un contor si puterea

   }    

   p/=10; //imparti la 10 ca sa nu ai un 0 in plus

   long long nr=0;

   for(int i=1;i<=cnt;i++){

       nr+=v[i]*p; //faci un for in care la nr adaugi elem*p si imparti p dupa

       p/=10;

   }    

   cout<<nr;


teodortoderitap37w4j: Mersi
teodortoderitap37w4j: Daca vectorul are 1000 de cifre crapa oricum p-ul
teodortoderitap37w4j: nu cred ca merge o variabila in situatia asta
Alte întrebări interesante