- •Содержание
- •Алгоритмизация и программирование 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 Результат работы
- •Список использованных источников
Складских помещений
а) Введем обозначения переменных:
a, b, c – длины сторон треугольника, соответствующие расстояниям между дочерними производствами;
r – радиус описанной окружности с центром совпадающим с местоположением складских помещений.
б) Определим тип переменных:
a, b, c, r – простые переменные вещественного типа.
в) Проведём классификацию по группам:
исходные данные: a, b, c;
результат: r;
промежуточный результат: d.
г) Запишем расчетные формулы в последовательности их выполнения:
;
При записи расчетных формул необходимо соблюдать следующее правило: все переменные, входящие в правую часть формулы должны быть определены, т.е. вычислены ранее или введены как исходные данные.
Рекомендуется вводить новые переменные для повторяющихся выражений, встречающихся в формулах или для упрощения исходного выражения (например, переменная d в примере №10).
Пример №11
Вычислить сумму S = y + z, если даны зависимости y и z при определённо заданных a, b, c и x.
;
а) Введем новые переменные для повторяющихся выражений:
t=a+b, p=cx;
б) Тип переменных:
a, b, c, x, t, p, s, y, z – простые переменные вещественного типа;
в) Классификация по группам:
исходные данные: a, b, c, x;
результат: S;
промежуточные результаты: t, p, y, z;
г) Расчетные формулы в последовательности их выполнения:
Пример №12
Получить таблицу значений функции y = f(x) для аргумента х, изменяющегося от а до b с шагом h (если a>b, то h должен быть меньше нуля, т.е. отрицательным).
а) Обозначение переменных:
x – аргумент функции;
y – значение функции;
а – начальное значение интервала изменения аргумента;
b – конечное значение интервала изменения аргумента;
h – шаг изменения аргумента на интервале;
i – счётчик цикла; n – число повторений цикла.
б) Тип переменных:
x, y, a, b, h – простые переменные вещественного типа.
i, n – простые переменные целого типа;
в) Классификация по группам:
исходные данные: a, b, h;
промежуточные результаты: i, n;
результаты: x, y.
г) Последовательность выполнения действий при решении задачи: переменная х может быть выбрана в качестве параметра цикла, т. к. х изменяется в цикле по простому закону – увеличивается на шаг h при каждом выполнении тела цикла (рисунок 2.17); перед входом в цикл параметру цикла х присваивается начальное значение a: х = а; после каждого срабатывания тела цикла параметр цикла изменяется на шаг h: х = х + h; проверяется условие выхода из цикла: повторять заданные действия пока истинно условие x ≤ b (аргумент принадлежит выбранному интервалу значений).
Рисунок 2.17 − Алгоритм табулирования функции в виде блок-схемы
Выполним построение математической модели и алгоритма решения функциональной задачи расчёта амортизационных отчислений.
Пример №13
Первоначальная
стоимость оборудования производственного
цеха составляет
руб. Ежегодно на сумму
D руб. закупали новое оборудование.
Ежегодная амортизация (уменьшение
стоимости) имеющегося оборудования
составляет Р % от его стоимости. Составить
алгоритм для вычисления стоимости
оборудования цеха
через
N лет после ввода его в эксплуатацию
согласно формуле
,
где
– стоимость оборудования
в N-й год; где
– стоимость оборудования в предыдущем
году. Получить таблицу результатов для
N=1, 2,…10.
а) Обозначение переменных:
– первоначальная стоимость оборудования;
D – стоимость ежегодно закупаемого нового оборудования;
Р – процент ежегодной амортизации оборудования;
N – счётчик цикла, количество лет эксплуатации оборудования.
б) Тип переменных:
P, N – простые переменные целого типа;
, D – простые переменные вещественного типа.
в) Классификация по группам:
исходные данные: , D, P; результаты: N, .
г) Расчетные формулы в последовательности их выполнения: N=1.
Представим алгоритм начисления амортизации в виде блок-схемы (рисунок 2.18).
Рисунок 2.18 – Блок-схема цикла со счетчиком N к примеру №13
Информационный массив с позиции логической структуры, отображающей состояние технической системы, представляет собой набор данных (документов) одной формы (одного названия) со всеми их значениями либо сочетание таких наборов данных, относящихся к одной функциональной задаче.
При решении функциональных задач управления по планированию предприятия в памяти компьютера создаются информационные массивы — упорядоченные последовательности элементов одного типа, обращение к которым осуществляется при помощи его единственного имени и индекса (т.е. порядкового номера элемента).
Каждый массив содержит однородные сведения о некоторой совокупности объектов. Такими объектами могут быть: последовательности заработных плат по табельным номерам работников; перечень выпуска различного вида продукции по месяцам года; товары на складе по кодовым номерам и т. д. Обработка информационных массивов заключается: в пополнение массивов данных новыми сведениями, разнообразное изменение элементов массивов и вывод результатов обработки.
Во всех ранее рассмотренных примерах использовались только простые переменные. В последующих задачах будут использоваться переменные с индексами, являющиеся элементами массива.
Под массивом в программировании будем понимать упорядоченную конечную группу данных одного типа. Индекс указывает порядковый номер элемента массива. Он может быть числом или выражением целого типа. Количество элементов содержащихся в массиве называется его размерностью. В зависимости от числа индексов, массивы бывают одномерными, двумерными, и т. д. Наиболее распространенные алгоритмы обработки одномерных массивов:
1) нахождение суммы, произведения, среднего значения;
2) нахождение суммы или количества элементов массива, удовлетворяющих некоторым условиям;
3) нахождение минимального (максимального) элемента массива и его номера;
4) создание нового массива из элементов имеющегося;
5) сортировка элементов массива.
Выполним построение математической модели и указанных выше алгоритмов 1) - 4) функциональной задачи денежного оборота торговой фирмы.
Пример №14
Имеются данные о ежедневном обороте торговой фирмы в течение месяца, т.е. одномерный массив, содержащий 30 элементов.
A(30):
№ дня 1 2 3 . . . 30
Оборот 124 120 50 . . . 63
а) Обозначение переменных:
А(30) – массив оборота, размерностью 30 элементов;
А(i) – элемент массива А (оборот в i-тый день), тыс. руб.;
i – счётчик цикла, номер дня;
S – общая суммы оборота фирмы за месяц, тыс. руб.;
C – средний оборот фирмы за месяц, тыс. руб.;
D – план оборота за день, тыс. руб.;
К – количество дней c оборотом D;
М – минимальный (максимальный) оборот за месяц, тыс. руб.;
NM – номер дня с минимальным (максимальным) оборотом;
В(10) – новый массив оборота, размерностью 10 элементов;
B(i) – элемент массива В (оборот в i-тый день), тыс. руб.;
б) Тип переменных:
i, K, NM – простые переменные целого типа;
S, C, D, M – простые переменные вещественного типа;
А(i), B(i) – переменные с индексами вещественного типа.
в) Классификация по группам:
исходные данные: А(30); промежуточный результат: i;
результаты: S, C, D, M, NM, К, B(10).
г) Системы расчетных формул для различных типов задач:
определение общей и средней суммы оборота за месяц:
S = 0 сумма обнуляется, чтобы к S не добавилось случайное значение, оставшееся в переменной S от предыдущего вычисления.
C = S/30 нахождение среднего значения
нахождение количества дней с оборотом, равным (≤ , ≥ , ≠ ,>,<) плану D:
К = 0 обнуление К
i = 1 начальный номер элемента
определение максимального оборота предприятия за данный период и номера дня с максимальным оборотом:
M = A(1) за начальное значение максимума выбираем первый элемент
NM = 1 начальный номер максимального элемента
i = 2 начальный номер следующего элемента
Если М – минимум, то условие имеет вид: A(i)<М.
5% ежедневного оборота отчисляется в дополнительный фонд заработной платы. Организовать новый массив, содержащий информацию об ежедневном отчислении.
i = 1 начальный номер элемента
Для обработки массива, его необходимо ввести в память. При этом организуют цикл ввода, работающий столько раз, сколько элементов в массиве. В блок-схеме цикл ввода показан через блок модификации, где счётчиком цикла является переменная i (номер дня).
Представим алгоритм определение общей и средней суммы оборота в виде блок-схемы (рисунок 2.19):
Рисунок 2.19 – Определение общей и средней суммы оборота
Блок-схема накопления произведения элементов массива имеет тот же вид, что на рисунке 2.19, но первоначальное значение произведения P=1; формула накопления произведения имеет вид: P=P*A(i).
Представим алгоритм нахождение количества дней с оборотом, равным плану D в виде блок-схемы (рисунок 2.20):
Рисунок 2.20 – Алгоритм нахождение количества дней с оборотом,
