- •1. Свойства и этапы построения алгоритма.
- •2.Постановка задачи. Разработка модели. Построение алгоритма.
- •3. Величины в алгоритмах.
- •4.Способы записи алгоритмов
- •5. Структуры алгоритмов.
- •Оператор цикла Паскаля с параметром
- •Оператор цикла Паскаля с постусловием
- •Оператор цикла Паскаля с предусловием
- •6. Исполнение (тестирование) алгоритма.
- •7. Переменные с индексами. Массивы. Таблицы.
- •8. Примеры алгоритмов линейных и с разветвлением.
- •9. Пример циклического алгоритма вычисления суммы десяти чисел.
- •10. Поиск минимального и максимального элемента последовательности.
- •11. Поиск номера элемента последовательности с заданным значением.
- •12. Сортировка. Простой выбор.
- •13. Редактирование текста программы. Копирование, вставка и удаление.
- •15. Завершение работы выхода из программы. Возобновление сеанса отладки.
- •16 Отладка в среде языка программирования. Классификация ошибок.
- •17. Программа в Object Pascal
- •18. Операторы
- •19. Выражения – синтаксис выражений.
- •25. Типы, переменные, константы и типизированные константы.
- •22.Строки программы и комментарии к программе
- •23. Типы величин. Простые типы
- •21. Числа
- •20. Специальные символы и их назначение
- •25. Тип Массив
- •21. Метки
- •26.Переменные и константы. Раздел описания данных констант.
- •21. Идентификаторы
- •24. Строковый тип
- •27. Массивы, строки и индексы
- •24.Вещественный тип
- •29. Совместимость по присваиванию
- •28. Арифметические операции
- •29. Оператор присваивания.
- •30. Составные операторы.
- •31. Условный и безусловный операторы.
- •32. Оператор цикла с постусловием(repeat).
- •34. Оператор цикла с параметром for
- •33. Оператор цикла с предусловием while
- •35. Стандартные процедуры и функции.
- •36. Стандартные арифметические функции.
- •37.Среда Delphi. Компиляция и выполнение готовых программ
- •38.Среда Delphi. Формат меню. Настройка меню Delphi
- •39.Среда Delphi. Визуальные компоненты для редактирования
- •40. Среда Delphi. Конструирование формы – реализация диалога
- •41.Особенности объектно-ориентированного программирования
- •44.Компоненты редактирования в Delphi – текстовые окна, поля, метки
- •42.Визуальные и невизуальные компоненты Deplhi
- •43.Delphi. Основные свойства. События. Методы
- •45.Конструирование форм в Delphi
- •47.Создание меню в Delphi
- •48.Параметры проекта
- •51.Ввод и редактирование информации
7. Переменные с индексами. Массивы. Таблицы.
В алгоритме и программе для представления табличных данных используется понятие массив.
Массивом называется порядочная совокупность данных одного типа объединенных общим именем.
Переменная с индексом позволяет представить большое количество величин или компонентов с одним общим именем. Каждая отдельная величина определяется индексом в скобках после наименования переменной. Полная система таких величин называется массивом, а каждая отдельная величина – компонентом или элементом массива. Массив может быть одномерным(вектор), двумерным(матрица или таблица), трехмерным(тензор) и т.д. Термин «одномерный» определяет количество индексов, а не количество переменных. Число индексов определяет размерность массива. Первый компонент одномерного массива – это элемент с номером 1, второй – 2 и.т.д, до тех пор, пока не будут пронумерованы все элементы массива. Двумерный массив представляет собой таблицу или матрицу из горизонтальных строк и вертикальных столбцов. Первый индекс – определяет номер строки, он изменяется от 1 до М, где М – полное количество строк. Второй номер столбца изменяется от 1 до N, где N – полное число столбцов. Индексы отделяются запятыми. Главная диагональ в двумерном массиве это, где номер строки = номеру столбцов. Квадратная матрица – если количество строк равная количеству столбцов. Задавая соответствующие значения индексов, можно выполнить прямой доступ к любому компоненту массива. Текущие значения индексов не должны выходить за пределы заданного диапазона. В противном случае переменная с индексом не может быть определена. Обычный прием работы с массивами, в особенности с большими массивами, - выборочное изменение отдельных его компонентов. На месте индекса может быть выражение соответствующее значению индекса, которое идентифицирует соответствующий компонент массива. Основные характеристики: имя массива, типа компонентов, размерность, равная количеству индексных позиций массива, порядок нумерации компонентов в последовательности, количество компонентов – длина массива или размер массива. Последовательную обработку массивов позволяет обеспечить цикл с параметром, который осуществляет прямой доступ к каждому элементу массива. Для обработки двумерных массивов используются те же приемы, что и для одномерных массивов.
Описание типа линейного массива выглядит так:
Type <Имя типа>=Array [<Диапазон индексов>] Of <Тип элементов>;
Описать переменную-массив можно и сразу (без предварительного описания типа) в разделе описания переменных:
Var <Переменная-массив> : Array [<Диапазон индексов>] Of <Тип элементов>;
N : Array ['A'..'Z'] Of Integer
8. Примеры алгоритмов линейных и с разветвлением.
у=(b2-ас):(а+с). Линейный.
Решение квадратного уравнения
1
2
2
9. Пример циклического алгоритма вычисления суммы десяти чисел.
10. Поиск минимального и максимального элемента последовательности.
Для поиска минимального элемента необходимо назначить некоторый эталон – переменную, которой заранее присваивается значение, например, первого элемента. Поиск производится путем последовательного сравнения всех элементов с эталоном min. После того как эталонная переменная определена, сравниваем с ней первый элемент. Если он меньше эталона, то изменить эталон. Для этого присвоить эталону значение первого элемента и продолжить сравнение – теперь со вторым элементом. Таким образом, можно сравнить все элементы последовательности. Обозначим исследуемую последовательность х1,х2,..хN. Начнем поиск с первого элемента и его принимаем за min=X(1), переменной Nom присвоим начальное значение, равное 1, это соответствует номеру элемента, который назначен эталоном для мин элемента. Для определения номера минимального элемента алгоритм будет иметь аналогичную структуру. Полученный алгоритм можно преобразовать в алгоритм определения номера максимального значения.
var ar: array [1..4] of integer;
max,i:integer;
begin
for i:=1 to 4 do readln (ar[i]);
max:=ar[1];
for i:=2 to 4 do
if ar[i]>max then max:=ar[i];
writeln (max);
readln;
end.