ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАЦИИ
ИДО ГОУ МГИУ
Курсовая работа
по дисциплине
«Информатика»
Жуков 2009
Задание
В коллективном хозяйстве имеются фруктово-ягодные сады (яблоня, вишня, слива, черная смородина, крыжовник, клубника – всего 6 фруктово-ягодных культур). Каждый год в течение 5 лет колхоз собирал урожай с каждого сада и продавал урожай по закупочным ценам, которые различались по годам.
Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран:
· Исходные данные в виде таблицы, где указаны наименования фруктово-ягодных культур, закупочные цены каждой культуры и урожай в центнерах в каждом году;
· Общий урожай каждой культуры за 5 лет;
· Доход по всем культурам за каждый год;
· Общий доход колхоза за 5 лет;
· Наименование культуры, принесший максимальный доход за 5 лет.
Описание переменных
Исходные данные находятся на листе «Нач_д» (рис. 1) и содержат следующую информацию:
1) Наименование фруктово-ягодных культур, которые колхоз собрал в течение 5 лет.
2) Закупочные цены фруктово-ягодных культур и их вес в центнерах.
Результат работы программы оформляются на листе «Результат» (рис. 2).
Рис. 1. Лист с начальными данными
Рис. 2. Лист с результата программы
В программе переменные описаны следующим образом:
1) zakup_ceni(6, 5) – закупочные цены фруктово-ягодных культур представляет двухмерный массив дробных чисел
Dim zakup_ceni(6, 5) As Double
2) urozhai(6, 5) – урожай в центнерах каждой фруктово-ягодных культур в течение 5 лет представляет двухмерный массив дробных чисел
Dim urozhai(6, 5) As Double
3) obsh(6) – Общий урожай каждой культуры за 5 лет представляет массив дробных чисел
Dim obsh(6) As Double
4) doh(6, 5) – доход по каждым культурам за 5 лет представляет двухмерный массив дробных чисел
Dim doh(6, 5) As Double
5) obsh_doh(6) – общий доход по каждым культурам за 5 лет представляет массив дробных чисел
Dim obsh_doh(6) As Double
6) obsh_doh_pyat – общий доход колхоза за 5 лет
Dim obsh_doh_pyat As Double
7) yagod – наименование культуры принесший максимальный доход за 5 лет
Dim yagod As Double
8) max_kult – номер культуры с максимальным доходом
Dim max_kult As Integer
В программе также были использованы вспомогательные переменные, счетчики циклов, i и j, являющиеся целыми числами
Dim i As Integer, j As Integer
Блок-схема
Блоки используются для обозначения действий, которые производит алгоритм, представлений блок-схемой, а также для внесения дополнительных пояснений по работе алгоритма или улучшения читаемости схемы.
Рассмотрим некоторые типы блоков:
· Квадрат – блок решения;
· Эллипс – данный блок используется для обозначения начала и конца алгоритма;
· Ромб – данный блок используется для обозначения условного оператора;
· Шестиугольник – данный блок используется для обозначения оператора цикла;
· Стрелками обозначен переход от одного действия к другому;
Начало
Ввод данных (нулевых)
данных вспомогательных
величин
Открытие листа с данными
(«Нач_д»)
i = 1, 6
j = 1, 5
zakup_ceni(i, j) = Cells(3 + i, 1 + j)
urozhai(i, j) = Cells(3 + i, 6 + j)
Открытие листа с
данными («Результат»)
Вывод данных формы
Cells(*,*)=…
i = 1, 6
j = 1, 5
Cells(3 + i, 1 + j) = zakup_ceni(i, j)
Cells(3 + i, 6 + j) = urozhai(i, j)
obsh(i) = obsh(i) + urozhai(i, j)
Cells(3 + i, 12) = obsh(i)
Ввод данных формы
Cells(*,*)=…
i = 1, 6
j = 1, 5
doh(i, j) = zakup_ceni(i, j) * urozhai(i, j)
Cells(14 + i, 1 + j) = doh(i, j)
i = 1, 6
obsh_doh_pyat = obsh_doh_pyat + obsh_doh(i)
Cells(21, 7) = obsh_doh_pyat
i = 1, 6
j = 1, 5
obsh_doh(i) = obsh_doh(i) + doh(i, j)
Cells(14 + i, 7) = obsh_doh(i)
Нет
obsh_doh(i) > yagod
Да
yagod = obsh_doh(i)
max_kult = i
Cells(23, 6) = max_kult
Вывод данных формы
Cells(*,*)=…
Конец программы
Описание алгоритма
Начало программы
Ввод начальных (нулевых) значений для расчетных величин (закупочные цены, урожай в центнерах, общий урожай каждой культуры за 5 лет, доход по каждым культурам за каждый год, общий доход по каждым культурам за каждый год, общий доход по каждым культурам за 5 лет, общий доход колхоза за 5 лет, наименование культуры принёсший максимальный доход за 5 лет). ............