- •Элементы интегрированной среды разработчика в Delphi. Основное окно. Окно Инспектора объекта . Окно Дизайнера форм . Окно Редактора кода .
- •Основное окно в Delphi. Палитры компонентов Standard, Additional, System.
- •Правила сохранения в Delphi. Диспетчер проекта. Создание и редактирование программного кода.
- •Переменные на языке программирования Delphi. Тип переменной. Имя переменной. Объявление переменной. Присваивание переменным значений.
- •Типы данных. Функции преобразования типа данных.
- •Математические функции преобразования данных.
- •Строковые функции. Понятие конкатенации строк. Функция определения длины строки. Функция вырезания подстроки. Функции преобразования числового кода символа в символ.
- •Объекты и классы в объектно-ориентированном программировании.
- •Понятие и организация цикла в Delphi. Цикл с предусловием. Цикл с постусловием.
- •Понятие вложенных команд и организация вложенных циклов.
- •Общие процедуры. Функции ввода и вывода данных.
- •Обработка условий и применение команды выбора в объектно-ориентированном программировании.
- •Понятие массива. Одномерные и многомерные массивы. Ввод и вывод массива.
- •Процедуры обработки массива. Поиск в массиве заданного элемента.
- •Виды сортировки массива. Алгоритм простого перебора.
- •Виды сортировки массива. Сортировка методом обмена.
- •Процедуры обработки массива. Процедуры обработки массива.
- •Многомерные массивы. Формирование и вывод многомерных массивов.
- •Записи и файлы в объектно-ориентированном программировании
- •Работа с файлами в объектно-ориентированном программировании.
- •Работа с файлами в объектно-ориентированном программировании. Объявление файла. Назначение файла. Вывод в файл. Конец файлa.
- •Работа с файлами в объектно-ориентированном программировании. Открытие файла для вывода. Закрытие файла.
- •Работа с файлами в объектно-ориентированном программировании. Ввод из файла. Открытие файла. Чтение данных из файла.
- •Работа с файлами в объектно-ориентированном программировании. Чтение чисел. Чтение строк
- •Работа с графическими файлами в Delphi.
- •Графические возможности объектно-ориентированного программирования
- •Добавление холста. Свойства карандаша и кисти.
- •Вывод текста на форму в графическом режиме.
- •Методы вычерчивания графических примитивов в объектно-ориентированном программировании.
- •Изменение параметров кисти. Рисование линий и прямоугольника.
- •Элементы окружности и эллипса в Delphi.
- •Рисование закрашенных фигур в Delphi.
- •Изменение атрибутов пера в Delphi. Создание многоугольника
- •Вывод иллюстраций в Delphi.
- •Анимация на форме в Delphi.
Понятие массива. Одномерные и многомерные массивы. Ввод и вывод массива.
Массив— это структура данных, представляющая собой набор переменных одинакового типа, имеющих общее имя. Массивы удобно использовать для хранения однородной по своей природе информации, например, таблиц и списков.
Имя: array [нижний_индекс. .верхний_индекс] of тип
имя – имя массива;
array – зарезервированное слово языка Delphi, обозначающее, что объявляемое имя является именем массива;
нижний_индекс и верхний_индекс – целые константы, определяющие диапазон изменения индекса элементов массива и, неявно, количество элементов (размер) массива;
тип – тип элементов массива.
При объявлении массива удобно использовать именованные константы. Именованная константа объявляется в разделе объявления констант, который обычно располагают перед разделом объявления переменных.
Процедуры обработки массива. Поиск в массиве заданного элемента.
При решении многих задач возникает необходимость определить, содержит ли массив определенную информацию или нет. Например, проверить, есть ли в списке студентов фамилия Петров. Задачи такого типа называются поиском в массиве.
Для организации поиска в массиве могут быть использованы различные алгоритмы. Наиболее простой — это алгоритм простого перебора. Поиск осуществляется последовательным сравнением элементов массива с образцом до тех пор, пока не будет найден элемент, равный образцу, или не будут проверены все элементы. Алгоритм простого перебора применяется, если элементы массива не упорядочены.
Виды сортировки массива. Алгоритм простого перебора.
Ниже приведен текст программы поиска в массиве целых чисел. Перебор элементов массива осуществляется инструкцией repeat, в теле которой инструкция if сравнивает текущий элемент массива с образцом и присваивает переменной found значение true, если текущий элемент и образец равны. Цикл завершается, если в массиве обнаружен элемент, равный образцу (в этом случае значение переменной found равно true), или если проверены все элементы массива. По завершении цикла по значению переменной found можно определить, успешен поиск или нет.
Виды сортировки массива. Сортировка методом обмена.
В основе алгоритма лежит обмен соседних элементов массива. Каждый элемент массива, начиная с первого, сравнивается со следующим, и если он больше следующего, то элементы меняются местами. Таким образом, элементы с меньшим значением продвигаются к началу массива (всплывают), а элементы с большим значением — к концу массива (тонут). Поэтому данный метод сортировки обменом иногда называют методом "пузырька". Этот процесс повторяется столько раз, сколько элементов в массиве, минус единица.
Процедуры обработки массива. Процедуры обработки массива.
После пробных запусков программы возникает желание внести изменения в процесс ввода массива. Так, было бы неплохо, чтобы курсор автоматически переходил в следующую ячейку таблицы, например, в результате нажатия клавиши . Сделать это можно при помощи процедуры обработки события onkeypress. На эту же процедуру можно возложить задачу фильтрации вводимых в ячейку таблицы данных. В нашем случае надо разрешить ввод в ячейку только цифр.
Текст процедуры обработки события onkeypress приведен в листинге 5.3. Следует обратить внимание на свойство Col, которое во время работы программы содержит номер колонки таблицы, в которой находится курсор. Это свойство можно также использовать для перемещения курсора в нужную ячейку таблицы. Однако нужно учитывать, что колонки таблицы, впрочем, как и строки, нумеруются с нуля.
procedure TForml.StringGridlKeyPress(Sender: TObject; var Key; Char);
begin
case Key of
#8, ' 0 ' . . '9' : ; // цифры и клавиша<backspsce></backspsce>
#13: // клавиша
if StringGridl.Col < StringGridl.ColCount - 1
then StringGridl.Col := StringGridl.Col + 1;
else key := Chr(O); // остальные символы запрещены
end;
end;
