Реализовать пользовательский тип для целого беззнакового числа фиксированной длины uint2022_t. Размер получившегося типа не должен превышать 300 байт.
Для вышеуказанного типа требуется реализовать следующий набор функций и операторов
1. Конвертация из типа uint32_t
2. Конвертация из строки
3. Сложение
4. Вычитание
5. Умножение
6. Вывод числа в консоль
7. Сравнение (== и !=)
8. Деление*
Вам дан шаблон проекта, состоящие из трех директорий:
- bin
- lib
- tests
Менять стуктуру проекта, добавлять, новый файлы запрещается.
Требуется:
- Реализовать тип uint2022_t, описав его в заголовочном файле lib/number.h (!Обратите внимание что такая структура там уже есть, требуется дополнить ее описание)
- Реализовать вышеуказанные функции и операторы, написав реализацию в lib/number.cpp
Проект содержит базовый набор тестов, который позволит убедится, что реализация функций выполненная без явных ошибок. Для запуска тестов в командной строке можно выполнить след операцию:
cmake --build . --target number_tests && ctest -V или воспользоваться средствами вашей IDE
Пока все тесты не будут проходить, показывать лабораторную - нельзя
В директории bin находится консольное приложение, которые вы также можете использовать по вашему усмотрение, что бы проверить свой код. Для запуска выполнить след команду:
cmake --build . --target lab1 && bin/lab1 или воспользоваться IDE
- Переполнение - Undefined Behavior
- cmake
- GoogleTest
!NB. Задачи с * для первого полупотока
- 09.10.22 24:00 - 0.8
- 16.10.22 24:00 - 0.65
- 23.10.22 24:00 - 0.5