Персональные инструменты
Вы здесь: Главная Members Mzhuravlev Материалы для 171-ой группы 2014

Материалы для 171-ой группы 2014

 

 

 

Домашнее задание 1. До 22.10.2014

  1. Двоичное представление числа. Использовать битовые операции.
  2. Быстрое возведение числа в целую степень. Использовать битовые операции.
  3. Битовые операции. Знак целого числа (-1, 0, 1). Без логических операций.
  4. Битовые операции. Может ли целое число быть представлено на машине с n-разрядным словом и дополнительным кодом. Без логических операций.

Домашнее задание 2. До 29.10.2014

  1. Вывести "внутренности" float. 3 способа.

Домашнее задание 3. До 05.11.2014

  1. Переполнением буфера добиться вызова посторонней функции.

Домашнее задание 4. До 12.11.2014

  1. Опубликовать решение задачи о поиски подстроки в строке из первой контрольной. Наивный алгоритм. Хороший стиль. Может быть отменена для сдавших предыдущие задачи в срок.

Домашнее задание 5. До 12.11.2014

  1. Первичное знакомство с односвязными списками. Считывать из стандартного потока ввода и сохранять в памяти потенциально неограниченное количество чисел, пока, например, не введён ноль. Своей вспомогательной программой и/или средствами любимой ОС отправить достаточно большое количество чисел на вход. Понаблюдать за потреблением памяти.
  2. Расширение набора понимаемых команд. Будет использоваться для автоматизированного тестирования. a <число> - добавляет число в начало списка, r <число> - удаляет число из списка, p - печатает список через запятую с пробелом, в конце - перенос строки, q - корректно завершает программу.

Домашнее задание 6. Вплоть до зачета

    Стековый калькулятор с длинной арифметикой целых чисел. Тестируется автоматизировано. Чтение из стандартного потока ввода (переопределяется файлом, содержащим описание вычислений). Каждая команда располагается на отдельной строчке. Команды: <123> - положить число на вершину стека, "+" - два числа с вершины стека заменить результатом сложения, "-" - из последнего числа вычесть предпоследнее, оба убрать со стека, положить на стек разность, "*" - умножение по аналогии, "/" - целочисленное деление в предположении неотрицательности остатка. "=" - вывести число с вершины стека, не удаляя, на отдельную строку. Допустимые сообщения об ошибках (без кавычек, на отдельной строчке): "Division by zero", "Not enough arguments", "Unknown command" (выводится и при неудаче прочтения числа). При генерации сообщения об ошибке программа завершается, освободив выделенные ресурсы, с кодом выхода 1. По исчерпании ввода выводится состояние стека - [число_у_вершины; число; число_внизу]. Примеры ввода-вывода доступны по ссылке Архив2
Действия с Документом