Скачиваний:
0
Добавлен:
23.11.2023
Размер:
2.21 Кб
Скачать
//
//  main.cpp
//  lab_1
//
//  Created by on 26/02/2022.
//  Copyright © 2022. All rights reserved.
//

#include <iostream>
using namespace std;

int CALCULATOR(int number1,int number2,int result) //выполняет сложение, вычитание, умножение.
{
    int A=NULL;
    char s1;
    
    cout << "выберите операцию  сложение \"+\", вычитание \"-\", умножение \"*\"\n: ";
    cin>>s1;
    
    switch (s1)
    {
        case '+': A += number1 + number2; break;
        case '-': A += number1 - number2; break;
        case '*': A += number1 * number2; break;
        default:cout<<"ошибка ввода";break;
    }
    return result+=A;
}


void DEX_TO_BIN ()//перевод из десятичной в двоичную система
{
    int number1,number2,result=NULL,bin=NULL;
    
    cout << "Первое число: ";
    cin >> dec>>number1;
    cout << "Второе число: ";
    cin >> dec>>number2;
    
    bin+=CALCULATOR(number1, number2,result);
    int A[10];
    int i = 0;
    while (bin > 0)
    {
        A[i] = bin % 2;
        bin /= 2;
        i++;
    }
    i--;
    while (i >= 0)
    {
        cout <<A[i];
        i--;
    }
    cout<<endl;
}

void OCT ()//восьмеричная система
{
    int number1,number2,result=NULL;
    
    cout << "Первое число: ";
    cin >> oct>>number1;
    cout << "Второе число: ";
    cin >> oct>>number2;
    
    cout<<oct<<CALCULATOR(number1, number2,result)<<endl;
}


void HEX ()//шестнадцатиричная система
{
    int number1,number2,result=NULL;
    
    cout << "Первое число: ";
    cin >> hex>>number1;
    cout << "Второе число: ";
    cin >> hex>>number2;
    
    cout<<hex<<CALCULATOR(number1, number2,result)<<endl;
}


int main()
{
    int s1;
    
    cout << "Введите основание системы исчесления: ";
    cin>>s1;
    
    switch (s1)
    {
        case 10: DEX_TO_BIN(); break;
        case 8: OCT(); break;
        case 16: HEX(); break;
        default:cout<<"ошибка ввода"<<endl;break;
    }
    
    
    return 0;
}
Соседние файлы в папке Лаба 1