Архитектура, устройство и функционирование вычислительных систем / Лаба 1 / отчет архитект
.docx
Рисунок 1
Рисунок 2
«-»
«+»
«*»
8
16
10
Рисунок 3 – алгоритм
Код программы
#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;
}