Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- #include <bitset>
- using namespace std;
- class sixteenth{
- int a,b;
- public:
- sixteenth(int a, int b){
- this->a = a;
- this->b = b;
- }
- void info(){
- cout << "Даны числа: ";
- cout << hex << a << " " << hex << b << endl;
- cout << "============================" << endl;
- }
- void sum(){
- cout << "Сложение: ";
- cout << hex << a+b << endl;
- }
- void diff(){
- cout << "Вычитание: ";
- cout << hex << a-b << endl;
- }
- void multi(){
- cout << "Умножение: ";
- cout << hex << a*b << endl;
- }
- void div(){
- cout << "Деление: ";
- cout << hex << a/b << endl;
- }
- void bit_l(int c){
- unsigned short short11 = a;
- bitset<16> bitset11{short11};
- unsigned short short12 = a >> c;
- bitset<16> bitset12{short12};
- cout << bitset12 << endl;
- }
- void bit_r(int c){
- unsigned short short11 = a;
- bitset<16> bitset11{short11};
- unsigned short short12 = a << c;
- bitset<16> bitset12{short12};
- cout << bitset12 << endl;
- }
- void _dec(){
- cout << "В десятичной системе счисления: " << dec << a << " " << dec << b << endl;
- }
- };
- int main(){
- bool per1 = 1;
- while(per1!=0){
- cout << "Введите два числа в 16-ричной системе счисления." << endl;
- int a,b;
- cout << "Первое число: ";
- cin >> hex >> a;
- cout << "Второе число: ";
- cin >> hex >> b;
- bool per = 1;
- while(per!=0){
- cout << endl << "============================" << endl;
- cout << "Введите что хотите сделать: ";
- char count;
- cout << endl;
- cout << "1. Сложение" << endl;
- cout << "2. Вычитание" << endl;
- cout << "3. Умножение" << endl;
- cout << "4. Деление" << endl;
- cout << "5. Смещение вправо" << endl;
- cout << "6. Смещение влево" << endl;
- cout << "7. Информация о введенных числах" << endl;
- cout << "8. В десятичной системе счисления" << endl;
- cout << "============================" << endl;
- cin >> count;
- sixteenth x(a,b);
- switch(count){
- case '1': x.sum();break;
- case '2':x.diff();break;
- case '3':x.multi();break;
- case '4':x.div();break;
- case '8':x._dec();break;
- case '7': x.info();break;
- case '5':
- cout << "Введите число бит для сдвига вправо: ";
- int r;
- cin >> r;
- x.bit_r(r);
- break;
- case '6':
- cout << "Введите число бит для сдвига влево: ";
- int l;
- cin >> l;
- x.bit_l(l);
- break;
- }
- cout << "Для продолжения введите 1, для завершения работы с этими числами 0:";
- cin >> per;
- }
- cout << "Продолжить работу с новыми числами? Введите 1, закончить программу 0: ";
- cin >> per1;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement