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

Pbinfo #2711
Cerința
Se dă un număr n. Afișați rezultatul operației 2n.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieșire
Programul va afișa pe ecran valoarea 2n.

Restricții și precizări
0 ≤ n ≤ 30
se recomandă utilizarea operațiilor pe biți

Răspunsuri la întrebare

Răspuns de Levi20
2

Răspuns:

#include <iostream>

using namespace std;

int main()

{

int n,p=1;

cin>>n;

if(n==0)

cout<<1;

else

{

for(int i=1;i<=n;i++)

p=p*2;

cout<<p;

}

return 0;

}

Explicație:


ploPLO123: Iti dai seama ca daca n == 0, atunci p = 1, deci if-ul ala e inutil
Levi20: :)ai dreptate.. nu vazusem ce prostie am scris la cat de ocupat eram cu o alte probleme.. nici macar nu am citit ultima parte. Bine ca ai observat
Răspuns de ploPLO123
3

Răspuns:

#include <iostream>

using namespace std;

int main()  {

   int n;

   cin >> n;

   cout << ( 1 << n );

   return 0;

}

Explicație:

Operatile pe biti de care ne intereseaza sunt urmatoarele

<< ( shifteaza un numar cu un bit ( inmulteste cu 2 ) )

a << b = a * 2^b;

=> 1 << n = 1 * 2^n = 2^n

Alte întrebări interesante