Девятое занятие - зачётное

Присутствие  обязательно.

но пройдет оно не 20, а 27 марта.

20 - консультация для желающих!


Задания

1. (20 баллов). Решить любую задачу: LinqBegin24, 27, 35.

2. (20 баллов). Дан массив чисел и целые числа к1 и к2. Найти сумму положительных элементов массива между порядковыми номерами от к1 до к2 включительно (срезы!).

3. (20 баллов). Дан файл (строка) - программа на Паскале. Найти и заменить:

 а) := на =

 б) = на == (но не для случая пункта а)

 в) выражение вида: переменная := переменная + число на переменная += число


Задание для желающих (не зачётное!)

1.Дана строка, содержащая слова, разделённые одним или несколькими пробелами. Подсчитать количество вхождений каждого слова с помощью БДП.

Указание. Узел дерева должен хранить запись/класс, содержащую слово (тип string) и количество его вхождений (integer). БДП должно строиться на основе лексикографического порядка слов (он реализован в операции < для строкового типа).
Обрабатывать слова входной строки разрешается в цикле.

Подсказка. Напишите вспомогательную процедуру для обработки одного слова (принимает дерево и слово). Если слово ещё не содержится в дереве, нужно добавить в дерево новый узел, содержащий это слово с числом вхождений, равным 1. Если слово уже есть в дереве, нужно увеличить на 1 значение числа вхождений.

2**. Дано бинарное дерево поиска целых чисел и значение M. Если дерево содержит узел со значением M, то удалить этот узел.
Замечание. Дерево должно остаться бинарным деревом поиска!