An open API service indexing awesome lists of open source software.

https://github.com/leewayzdes/binary-calculator-cpp

Калькулятор двоичных чисел на C++, реализующий арифметические операции (+, -, *) в постфиксной (обратной польской) записи.
https://github.com/leewayzdes/binary-calculator-cpp

binarycalculator calculator cpp

Last synced: over 1 year ago
JSON representation

Калькулятор двоичных чисел на C++, реализующий арифметические операции (+, -, *) в постфиксной (обратной польской) записи.

Awesome Lists containing this project

README

          

# Binary Calculator (C++)

## Описание проекта
Этот репозиторий содержит **калькулятор двоичных чисел** на C++, который выполняет **арифметические операции** (+, -, *) в **постфиксной (обратной польской) записи**.

### **Основные возможности**
- 🔹 **Перевод чисел** из десятичной системы в двоичную и обратно
- 🔹 **Арифметические операции** в двоичной системе
- 🔹 **Обработка отрицательных чисел** (дополнительный код)
- 🔹 **Работа с разрядностью (8, 16, 32 бит)**
- 🔹 **Вычисления в постфиксной записи (Reverse Polish Notation, RPN)**
- 🔹 **Реализация стека на основе односвязного списка**

---

## **Функциональность**
✅ Конвертация **десятичных чисел в двоичную систему**
✅ **Обратный перевод** из двоичной системы в десятичную
✅ **Арифметические операции**: сложение, вычитание, умножение
✅ **Обработка отрицательных чисел** (дополнительный код)
✅ **Работа с разрядностью** (8, 16, 32 бит)
✅ **Ввод выражений в постфиксной записи**

---

## **Структура данных**
| Класс | Описание |
|---------------------|----------|
| `BinaryNumber` | Класс для работы с двоичными числами (перевод, арифметика) |
| `Stack` | Шаблонный стек (реализован на односвязном списке) |
| `LinkedList` | Односвязный список, используемый для реализации стека |
| `BinaryCalculator` | Основной класс программы (разбор выражений, выполнение операций) |

## Примеры работы.

### Пример ввода:
*Enter the size (8, 16, 32): 8*
*Enter postfix expression: 5 3 +*

### Вывод:
*Result:*
*00001000 (Binary)*
*8 (Decimal)*