Operatori de deplasare
Operatorii de deplasare se aplica numai asupra numerelor intregi. Ei sunt urmatorii:
<< este operator de deplasare la stanga cu un numar de biti. Deplasarea la stanga cu un bit a unui numar intreg realizeaza inmultirea cu 2 a acelui numar.
>> este operator de deplasare la dreapta cu un numar de biti. Deplasarea la dreapta cu un bit a unui numar intreg este catul impartirii cu 2 a acelui numar.
Expresiile in care intervin operatorii de deplasare au forma
expresie1 << expresie2
expresie1 >> expresie2
In aceste expresii expresie1 este expresia ce va fi deplasata iar expresie2 da numarul de biti cu care este deplasata expresie1.
Problema 5. Operatorii de deplasare << si >> pentru expresii intregi.
Se considera o variabila intreaga n=1024. Sa se scrie un program care sa deplaseze numarul n spre dreapta cu cate 1 bit de 4 ori. Se va tipari numarul n in zecimal si hexazecimal dupa fiecare deplasare cu un bit.
Se considera o variabila intreaga n=-8. Sa se scrie un program care sa deplaseze spre dreapta cu cate 1 bit de 3 ori variabila n. Se va tipari numarul n in zecimal si hexazecimal dupa fiecare deplasare cu un bit.
In program se utilizeaza manipulatorii dec, hex si oct care dau modul de afisare al numarului : zecimal, hexazecimal, respectiv octal.
#include<iostream.h>
void main()
cout<<'**********'<<endl;
a=-8;
cout<<'a in baza 10 = '<<dec<<a;
cout<<', a in baza 16 = '<<hex<<a<<endl;
for(i=1;i<=3;i++)
Rezultatele rularii programului sunt cele de mai jos.
|