Search the Community
Showing results for tags 'numere mari'.
-
"Se dă un număr N. Să se afişeze 2N. (0 < N < 100)." La prima vedere pare simplă (chiar dacă aşa şi este). Totul se reduce la folosirea algoritmului de înmulţire pe numere mari dintre un număr mic (ce se poate salva într-o singura variabilă) şi un număr mare (unde este necesară salvarea sa într-un vector, fiecare componentă a vectorului reprezentând o cifră a numărului). Programul va arăta în felul următor: /* Author: Kid Koder Date: 21-Sep-14 13:36 Description : 2^P Language: C++ */ #include <iostream> using namespace std; #define DIM 10000 int N, v[DIM], i, cat; int main() { cout << "N = "; cin >> N; // Citim N v[0] = v[1] = 1; // 2^0 = 1 while(N != 0) { // Cat timp mai avem de inmultit i = 1; cat = 0; // Initializam "cat" si "i" while(i <= v[0] || cat != 0) { // v[i] = v[i] * 2 + cat; // cat = v[i] / 10; // v[i] %= 10; // ----> ALGORITMUL PRINCIPAL v[0] = max(v[0], i); // i++; // } // N--; } cout << "Rezultat = "; for(i = v[0];i >= 1;i--) { // Afisare cout << v[i]; } cout << 'n'; // New Line return 0; // The End } Desigur, algoritmul este acelaşi şi în cazul problemei de afişare a numărului ab (cu a şi b date), tot ce trebuie făcut este de a schimba în zona algoritmului numărul "2" cu litera "a", iar variabila N cu litera b. Mult succes !
- 4 replies
-
- 2
-
-
- ridicare la putere
- 2^n
-
(and 2 more)
Tagged with: