50б. На питоне и на с В ответе уточните на каком языке создана программа. Дек с защитой от ошибок Реализуйте структуру данных "дек". Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы: push_front — добавить (положить) в начало дека новый элемент. Программа должна вывести ok. push_back — добавить (положить) в конец дека новый элемент. Программа должна вывести ok. pop_front — извлечь из дека первый элемент. Программа должна вывести его значение. pop_back — извлечь из дека последний элемент. Программа должна вывести его значение. front — узнать значение первого элемента (не удаляя его). Программа должна вывести его значение. back — узнать значение последнего элемента (не удаляя его). Программа должна вывести его значение. size — вывести количество элементов в деке. clear — очистить дек (удалить из него все элементы) и вывести ok. exit — программа должна вывести bye и завершить работу. Гарантируется, что количество элементов в деке в любой момент не превосходит 100. Перед исполнением операций pop_front, pop_back, front, back программа должна проверять, содержится ли в деке хотя бы один элемент. Если во входных данных встречается операция pop_front, pop_back, front, back, и при этом дек пуст, то программа должна вместо числового значения вывести строку error. Входные данные Вводятся команды управления деком, каждая в отдельной строке. Среди них обязательно присутствует команда exit. Выходные данные Требуется вывести протокол работы дека, по одному сообщению в строке. Примечание В данной задаче разрешено использовать стандартные контейнеры, реализующие дек. Примеры Ввод 1 size push_back 1 size push_back 2 size push_front 3 size exit Вывод 0 ok 1 ok 2 ok 3 bye
a)
Переводим 91 в двоичную систему счисления
91/2=45 ост 1
45/2=22 ост 1
22/2=11 ост 0
11/2=5 ост 1
5/2=2 ост 1
2/2=1 ост 0
записываем получившиеся 1 и 0 в обратном порядке получаем:
91= 1011011 в двоичной СС, т.к. ячейка 8-ми разрядная то дописываем вперед незначащий 0
ответ:01011011
Б) -74
сначала переводим число 74 в двоичную систему счисления (как и в примере делением на 2) получим 1001010
дополняем слева 0 для 8-разрядной ячейки 01001010
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10110101
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10110110
ответ: 10110110
в) 68
Как и в первом примере переводим в двоичную систему счисления делением на 2 и дописываем слева незначащий 0
ответ: 01000100
г) -123
сначала переводим число 123 в двоичную систему счисления делением на 2 получим 1111011
дополняем слева 0 для 8-разрядной ячейки 01111011
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10000100
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10000101
ответ: 10000101