Скачать презентацию Задачи часть 2 Скачать презентацию Задачи часть 2

Zadachi_chast_2.ppt

  • Количество слайдов: 16

Задачи часть 2 Задачи часть 2

 • • • 3). Задача о рисовании движущейся картинки (Квадрат вписанный в Круг). • • • 3). Задача о рисовании движущейся картинки (Квадрат вписанный в Круг). Алгоритм решения оформить в отдельном модуле Unit 2 в виде класса потомка от стандартного абстрактного родительского класса Tviz. Вывод в компоненту TImag организовать в модуле Unit 1 в виде кнопок: «создать» , «движение вверх» , «вниз» , «влево» , «вправо» , «уничтожить» . (1, 15)

 • • • 1 В упорядоченном по ключу к массиве записей {a[i]. f, • • • 1 В упорядоченном по ключу к массиве записей {a[i]. f, a[i]. k} (f – фамилия; к учетный номер) найти и выдать в окошко TEdit фамилию по заданному учетному номеру х. Алгоритм двоичного поиска в виде рекурсивной функции оформить в отдельном модуле Unit 2 как метод класса с параметром k. Ввод исходного массива записей организовать из TString. Grid, ввод искомого ключа из TEdit. (2, 18)

 • • 2) Ввести массив записей {a[i]. f, a[i]. k} (f фамилия; к • • 2) Ввести массив записей {a[i]. f, a[i]. k} (f фамилия; к - учетный номер) из Tstring. Grid 1, отсортировать по ключу к и выдать в TString. Grid 2. Алгоритм сортировки по методу слияния в виде рекурсивной процедуры оформить в отдельный модуль Unit 2 как метод класса без параметров. (3, 19)

 • • 6) Ввести массив записей {a[i]. f, a[i]. k} (f - фамилия; • • 6) Ввести массив записей {a[i]. f, a[i]. k} (f - фамилия; к - учетный номер) из Tstring. Grid 1, отсортировать по ключу к и выдать в TString. Grid 2. Алгоритм сортировки по методу разделения Хоара с использованием рекурсивной процедуры оформить в отдельный модуль Unit 2 как метод класса без параметров. (8, 20)

 • • • 4) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. • • • 4) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. c, i=1. . N}, ∑wi

 • • • 5) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. • • • 5) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. c, i=1. . N}, ∑wi

 • • • 9) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. • • • 9) Решить задачу оптимального выбора из элементов {a[i]. w, a[i]. c, i=1. . N}, ∑wi

 • • • 8) Ввести массив записей {a[i]: TInf } (Inf. F фамилия; • • • 8) Ввести массив записей {a[i]: TInf } (Inf. F фамилия; Inf. к - учетный номер) из String. Grid 1 в стек с меткой, отсортировать стек методом пузырька с обменом ключами. Вывести отсортированный стек в String. Grid 2. Алгоритмы записи Add, чтения Read элементов стека и его сортировки Sort оформить в отдельном модуле в виде методов класса. (9, 25)

 • • • 7) Ввести массив записей {a[i]: TInf } (Inf. F фамилия; • • • 7) Ввести массив записей {a[i]: TInf } (Inf. F фамилия; Inf. к - учетный номер) из String. Grid 1, в односвязный список в виде очереди, отсортировать очередь методом слияния. Вывести отсортированный список в String. Grid 2. Алгоритмы записи Addk, чтения Read 1 элементов списка и его сортировки Sort оформить в отдельном модуле в виде методов класса. (10, 24)

 • • • 10) Составить программу вычисления арифметического выражения, записанного в постфиксной форме. • • • 10) Составить программу вычисления арифметического выражения, записанного в постфиксной форме. Выражение ввести из окна TEdit 1, значения однобуквенных операндов ввести из String. Grid 1, результат поместить в Edit 2. Алгоритм вычисления оформить в отдельном модуле в виде методов Add, Read работы со стеком и метода AV класса. (11, 27)

 • • • 11) Составить программу преобразования арифметического выражения, записанного в инфиксной форме • • • 11) Составить программу преобразования арифметического выражения, записанного в инфиксной форме в выражение, записанное в постфиксной форме. Исходное выражение ввести из окна Edit 1, преобразованное выражение поместить в Edit 2. Алгоритм преобразования оформить в отдельном модуле в виде методов Add, Read работы со стеком и метода OBP класса. (12, 28)

 • • 12) Ввести массив n записей с заданным распределением ключей {a[i]: TInf} • • 12) Ввести массив n записей с заданным распределением ключей {a[i]: TInf} (Inf. F фамилия; Inf. к - учетный номер) из String. Grid 1 в двоичное дерево поиска методом Add. B, после чего прочитать его в String. Grid 2 методом Wrt 1 B. Методы класса Add. B и Wrt 1 В оформить в отдельном модуле. (13, 29)

 • • • 15) Ввести массив записей со случайным распределением ключей {a[i]. Inf} • • • 15) Ввести массив записей со случайным распределением ключей {a[i]. Inf} (Inf. F фамилия; Inf. к - учетный номер) из String. Grid 1 в двоичное дерево поиска процедурой Add. B. После чего найти в дереве поиска и распечатать в Memo 1 запись с ключом k, введенным из Edit 1. Методы класса Add. B и Poisk. В оформить в отдельном модуле. (14)

 • • • 14) Ввести массив записей с упорядоченным распределением ключей {a[i]: TInf • • • 14) Ввести массив записей с упорядоченным распределением ключей {a[i]: TInf } (Inf. F - фамилия; Inf. к - учетный номер) из String. Grid 1 в двоичное сбалансированное дерево с помощью метода Blns. После чего найти в дереве поиска с помощью функии Mink. B и распечатать в Memo 1 запись с минимальным ключом. Методы класса Blns, Mink. B оформить в отдельном модуле. (17)

 • • • 13) Составить программу, в которой организовать ввод массива n записей • • • 13) Составить программу, в которой организовать ввод массива n записей с заданным распределением ключей {a[i]. Inf} (Inf. F - фамилия; Inf. к - учетный номер) из String. Grid 1 в хеш-таблицу размера M>=n методом Add и организовать поиск записи в хеш-таблице по заданному ключу x методом Read. Значения М, х ввести из окон Edit, найденную фамилию вывести в окно Edit. В отдельном модуле написать класс для работы с хеш-таблицей на основе массива из стеков, который включает конструктор Create(M 0), а также два метода Add(Inf: Tinf) и Read(Key: Word): Tinf. (16, 26)