- •Содержание
- •Алгоритмизация и программирование vba введение
- •1 Макросы
- •На панели быстрого запуска
- •2. Алгоритмизация
- •2.1 Алгоритм. Общие сведения.
- •Форма записи алгоритма на естественном языке
- •2.3 Графическая форма записи алгоритма
- •2.4 Правила оформления схем алгоритмов
- •2.5 Основные этапы подготовки и решения задачи на компьютере
- •2.6 Постановка задачи. Разработка математической модели
- •Складских помещений
- •Равным плану d в виде блок-схемы
- •Массива по строкам
- •3 Язык программирования
- •Функции InputBox
- •Воды предприятием и номера месяца с минимальным расходом в виде блок-схемы
- •Программирование на vba в microsoft office
- •4.1 Программирование на vba в Excel
- •(Для наглядности выделен)
- •В нём активной ячейки
- •В формуле ячейки
- •Change объекта WorkSheet
- •4.2 Программирование на vba в Word
- •4.3 Программирование на vba в PowerPoint
- •«Элементы управления»
- •5 Технология организации, хранения и обработки данных
- •5.1 Общие сведения
- •5.2 Листинг программы
- •5.3 Алгоритм программы
- •5.4 Результат работы
- •Список использованных источников
Равным плану d в виде блок-схемы
Представим алгоритм определение максимального оборота предприятия за данный период в виде блок-схемы (рисунок 2.21):
Рисунок 2.21 – Алгоритм определение максимального оборота предприятия за данный период
Представим алгоритм организации нового массива в виде блок-схемы (рисунок 2.22):
Рисунок 2.22 – Алгоритм организации нового массива
В блок-схеме цикл вывода результативного массива реализуется через блок модификации аналогично циклу ввода.
Пример №15
Имеются данные о продуктах на складе. Определить общий вес продуктов, срок хранения которых менее 1 месяца и вывести их список.
а) Обозначения переменных:
N – количество продуктов;
Р(N) – массив наименований продуктов;
K(N) – массив веса продуктов;
С(N) – массив сроков хранения;
i – счётчик цикла, номер продукта в таблице;
P(i), K(i), C(i) – наименование, вес, срок хранения i-того продукта;
S – общий вес продуктов, срок хранения которых меньше месяца.
б) Тип переменных:
N, i – простые переменные целого типа;
Р(N) – массив символьного (строкового) типа;
K(N), С(N) – массив вещественного типа;
P(i), K(i), C(i) – переменные с индексом;
S – простая переменная вещественного типа.
в) Классификация по группам:
исходные данные: N, Р(N), K(N), С(N);
промежуточный результат: i; результат: S.
г) Система расчетных формул:
S= 0 обнуление К
i = 1 начальный номер элемента (рисунок 2.23).
Рисунок 2.23 – Блок-схема алгоритма к примеру №15
Таблица 2.3 – Исходные данные для примера №15
Алгоритмы сортировки, предназначенные для упорядочивания расположения элементов (по алфавиту, по убыванию или возрастанию значений), являются важнейшими среди алгоритмов обработки массивов.
Достоинство упорядоченного массива состоит в значительном облегчении поиска нужного элемента по сравнению с неупорядоченным массивом. Методы сортировки можно подразделить на три группы: обменные сортировки, сортировки посредством выбора и сортировки вставками.
Рассмотрим алгоритмы сортировки из каждой группы. При этом будем использовать массив вещественных чисел и выполнять сортировку по возрастанию значений элементов. Сортировка по убыванию производится аналогичным образом, отличия лишь в знаке операции отношения.
Сортировка
«пузырьком»
(обменная) состоит в сравнении каждого
элемента со следующим за ним стоящим
элементом (
и
)
и обмена (перестановки) их, если элементы
стоят не в нужном порядке (
>
).
После первого такого просмотра массива
наибольший элемент переместится в
нужную позицию (на последнее место в
массиве). Затем подобная процедура
выполняется для массива на один элемент
короче, и т.д. На каждом просмотре новый
элемент помещается в требуемую позицию,
следовательно, для сортировки массива
из n элементов нужно не более n-1 просмотра.
Исходными данными являются: целочисленное значение n и элементы массива , i=1,2,...,n; результат уже отсортированный массив x. Учтем с помощью переменной fl тот факт, что если на каком-то промежуточном этапе массив уже отсортирован, то при просмотре его элементов не происходит ни одной перестановки и дальнейшие просмотры не нужны. Если выполняется ветвь алгоритма, в которой происходит перестановка (обмен) элементов, то переменной fl присваивается значение 1. Алгоритм в виде блок-схемы (в соответствии с рисунком 2.23).
Сортировка посредством выбора состоит в последовательном выборе элементов массива и помещении их в соответствующие позиции. В ней наибольший элемент помещается в позицию n, следующий по величине элемент в позицию n-1 и т.д.
Исходными
данными являются: целочисленное значение
n и элементы
,
i=1,2,...,n; результат уже отсортированный
массив a.
Внешний цикл (счетчик i) «перебирает укорачивающиеся массивы, количество которых n-1 и переставляет наибольший элемент на последнее место массива (i-тое). Внутренний цикл (счетчик j) в рассматриваемом массиве находит значение Be и место nBe максимального элемента. Представим этот алгоритм в виде блок-схемы (рисунок 2.24).
Вложенным циклом или циклом в цикле называется такая структура, когда телом одного цикла является другой.
В блок-схемах (рисунок 2.23, рисунок 2.24, рисунок 2.25) приведён укрупнённый цикл вывода массива в виде одного блока.
Рисунок 2.24 – Блок-схема алгоритма обменной сортировки
Рисунок 2.25 – Блок-схема алгоритма сортировки посредством выбора
Пример №16
По условию примера №15 провести сортировку элементов массива К(N) – веса продуктов в порядке возрастания.
Выполним построение математической модели и алгоритма решения задачи сортировки методом вставки.
а)-б)-в) В дополнение к ранее объявленным переменным введём вспомогательные переменные, которые являются промежуточными результатами:
l – сохраняет номер продукта с наименьшим весом на определённом этапе сортировки, простая переменная целого типа;
j – счётчик внутреннего цикла, простая переменная целого типа;
Pr – сохраняет наименьший вес продукта на определённом этапе сортировки, простая переменная вещественного типа.
Представим алгоритм сортировки методом вставки в виде самой обычной блок-схемы (рисунок 2.26):
Рисунок 2.26 – Алгоритм сортировки методом вставки в виде блок-схемы
(алгоритмы обработки двумерных информационных массивов)
Многомерные массивы широко используются в статистике и математике, такие массивы имеют более одного измерения (индекса). Таким образом, двумерный массив представляет собой набор данных одинакового типа, в котором доступ к любому его элементу осуществляется по двум индексам: номеру строки и номеру столбца. Количество индексов определяет размерность массива. Например, размерность двумерного массива равна произведению числа строк на число столбцов. Двумерные массивы являются логической структурой данных удобной для решения задач связанных с обработкой величин зависящих от двух параметров.
Элемент многомерного массива обозначается именем массива с индексами, например, X(i, j). Индексы представляют собой выражения целого типа. Обращаться к элементам массива можно в произвольном порядке, задавая значения индексов. Причем, первый индекс всегда нумерует строки, второй столбцы.
Для того чтобы обработать элементы массива (присвоить, ввести, вывести значения), необходимо организовать вложенные циклы, в которых перебираются все комбинации значений индексов.
Рассмотрим пример алгоритма реализующего ввод двумерного массива по строкам в виде блок-схемы (рисунок 2.27).
Рисунок 2.27 – Фрагмент блок-схемы ввода двумерного
