Практикум на ЭВМ (161, 2 семестр)

Новости

    • 09.03.2011 - контрольная работа - 1 (Лямбда-исчисление)

Часть - 1: Haskell

Задание 1: простейшие функции (до 16.04.2010)

    • сумма элементов списка
    • добавление элемента в конец списка
    • сумма квадратов
    • перевернутый список
    • реализация функции map, применяющую любую функции к каждому элементу списка (map :: (a -> b) -> [a] -> [b])
    • список всех чисел Фибоначчи
    • конкатенация списков

Задание 2:

    • список всех чисел Фибоначчи выраженный через себя
    • сумма чётных чисел Фибоначчи не превосходящих 4000000

Задание 3:

    • список всех просттых чисел
    • найти наибольший простой делитель числа 600851475143
    • Замечание: для успешной сдачи результат должен считаться <1 сек

Задание 4:

    • описать тип, соответсвующий арифметическим выражениям с целыми числами и операциями +, -, *, /
    • реализовать функцию для подсчёта результата вычисления такого выражения
    • Например:
    • > calc (Add (Num 1) (Add (Num 2) (Num 3)))
    • 6

Задание 5:

    • Реализовать алгоритм нахождения НОД на языке ассемблера StudentAsm
    • head - вывести в стандартный поток вывода первые n строк из входа.
    • Реализовать head следует в виде исполнимого модуля. Программа должна работать аналогично одноименной утилите Linux:
      • *Программа имеет необязательный параметр - имя входного файла. Если параметр не указан, то чтение должно производиться из стандартного потока ввода.
      • Программе можно передать необязательный параметр "-n <число>" задающий количество строк для вывода. По умолчанию - 10.
      • Если на входе менее n строк, то выводится всё содержимое.

Задание 6:

Задание 7:

    • Дискретная задача о рюкзаке

Часть 2 - Си

Задание 8:

    • Конь: найти маршрут шахматного коня, проходящего через все поля доски по одному разу.
    • При обходе использовать правило Варнсдорфа.

Успеваемость

2010-2011.IT.161