
Содержание
1. Задание 2
2. Описание переменных 3
3. Блок схема 5
8
10
12
4. Описание алгоритма 13
5. Листинг программы 14
6. Описание входных данных и результат вычислений 19
7. Список использованной литературы 22
1. Задание
Молокозавод в течение 3 месяцев упаковывал молоко в пакеты емкостью 0,5 литров и 1 литр и поставлял свою продукцию в 5 различных магазинов. Цена на пакет молока устанавливалась в начале каждого месяца и не менялась.
Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран: исходные данные в виде таблицы, где указаны наименование магазинов, количество пакетов молока емкостью 0,5 и 1 литр соответственно, ежемесячно поставляемых в каждый магазин, цены на продукцию в текущем месяце;
общее количество литров молока, поставленных заводом в магазины за все время;
общее количество пакетов молока, поставленных заводом в магазины в каждом месяце;
доход завода за 3 месяца за молоко, упакованное в пакеты емкостью 0,5 литров;
наименование магазина, в который было поставлено наибольшее количество пакетов молока
2. Описание переменных
Исходные данные находятся на листе «Нач_д» (рис. 1) и содержат следующую информацию:
Количество пакетов молока емкостью 0,5 и 1 литр, ежемесячно поставляемых в каждый магазин.
Цены на продукцию в текущем месяце.
Результаты работы программы оформляются на листе «Результат» (рис. 2).
Рис.1. Лист с начальными данными
Рис.2. Полученные результаты
В программе переменные описаны следующим образом:
kol_paketov(4, 5) - двумерный массив, предназначенный для хранения значений о количестве пакетов молока поставленных в магазины.
Dim kol_paketov(4, 5) As Integer
kol_lit(5) - массив, предназначенный для хранения количества литров молока поставленного заводом каждому магазину.
Dim kol_lit(5) As Single
obch_kol_litr - переменная для хранения общего количества литров молока поставленного заводом.
Dim obch_kol_litr As Single
kol_pak(2) - массив для хранения количество пакетов поставляемых заводом в каждом месяце.
Dim kol_pak(2) As Integer
obch_kol_paketov - переменная для хранения общего количества пакетов молока поставленного заводом за 3 месяца.
Dim obch_kol_paketov As Integer
kol_pak05 - переменная для хранения количества пакетов по 0,5 л.
Dim kol_pak05 As Integer
cena(4, 5) - массив для хранения цен на молоко упакованное в пакеты по 0,5 л.
Dim cena(4, 5) As Single
dohod - переменная для хранения дохода завода от проданных за 3 месяца пакетов молока по 0,5 л.
Dim dohod As Single
mag_kol_pak(4) - массив для хранения количества пакетов молока поставленных заводом каждому магазину.
Dim mag_kol_pak(4) As Integer
name - массив для хранения названий магазинов.
Dim name
ind() - массив для хранения индексов массива mag_kol_pak которые хранят нибольшие значения.
Dim ind() As Integer
В программе также были использованы вспомогательные переменные, счетчики циклов, i и j, являющиеся целыми числами. Были также использованы переменные max, col, r-целого типа, для определения количества чисел и максимального числа.
Dim i, j, max, col, r As Integer
Промежуточные переменные c и d –вещественного типа.
Dim c, d As Single
Массивы kol_paketov(4, 5), kol_pak(2), mag_kol_pak(4) и переменные obch_kol_paketov, kol_pak05 имеют целый тип т.к. количество пакетов измеряется в единицах.
Массивы kol_lit(5), cena(4, 5) и переменные obch_kol_litr, dohod имеют вещественный тип, т. к. литры и цена могут иметь как целую так и дробную часть значения.