|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Составление программы "Определение фруктово-ягодной культуры, приносящей хозяйству максимальный доход в течении 5 лет"Составление программы "Определение фруктово-ягодной культуры, приносящей хозяйству максимальный доход в течении 5 лет"ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАЦИИ ИДО ГОУ МГИУ Курсовая работа по дисциплине «Информатика» Жуков 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 лет). Открытые листа с начальными данными («Нач_д») и получение этих данных в рабочие переменные (массивы zakup_ceni(6, 5) и urozhai(6, 5)). Открытие листа с результатами, формирование матрицы входных данных. Организуется два вложенных цикла (по закупочным ценам и урожаю в центнерах). Во внутреннем цикле (по урожаю в центнерах) суммируются количество фруктово-ягодных культур в центнерах по годам. Во внешнем (по закупочным ценам) тоже самое, но только суммируются цены по годам. Расчеты выполняются по заданным формулам. Все циклы работают на счетчиках i и j. Вывод всех доходов определяются с помощью этих же циклов и по заданным формулам. Определения фруктово-ягодной культуры принёсший максимальный доход в течении 5 лет образуется с помощью алгоритма сравнения и выводит на экран номер этой культуры. Порядковые номера фруктово-ягодных культур в программе записаны следующим образом: 1. Яблоня 2. Вишня 3. Слива 4. Черная смородина 5. Крыжовник 6. Клубника При равенстве двух и более дневных сумм результативной считается первая сумма. Листинг программы Public Sub Курсовая() Dim zakup_ceni(6, 5) As Double 'Закупочные цены' Dim urozhai(6, 5) As Double Урожай в центнерах' Dim obsh(6) As Double 'Общий урожай каждой культуры за 5 лет' Dim doh(6, 5) As Double 'Доход по каждым культурам за каждый год' Dim obsh_doh(6) As Double 'Общий доход по каждым культурам за 5 лет' Dim obsh_doh_pyat As Double 'Общий доход колхоза за 5 лет' Dim yagod As Double ' наименование культуры принесший максимальный доход за 5 лет ' Dim max_kult As Integer 'Номер культуры' Dim i As Integer, j As Integer For i = 1 To 6 For j = 1 To 5 zakup_ceni(i, j) = 0 urozhai(i, j) = 0 Next j Next i Sheets("Нач_д").Select For i = 1 To 6 For j = 1 To 5 zakup_ceni(i, j) = Cells(3 + i, 1 + j) urozhai(i, j) = Cells(3 + i, 6 + j) Next j Next i Sheets("Результат").Select Cells(1, 1) = "Начальные данные" Cells(2, 1) = "Наименование фруктово-ягодных культур" Cells(2, 2) = "Закупочные цены (руб.)" Cells(2, 7) = "Урожай в центнерах" Cells(2, 12) = "Общий урожай каждой культуры за 5 лет" Cells(3, 2) = "2000 год" Cells(3, 3) = "2001 год " Cells(3, 4) = "2002 год " Cells(3, 5) = "2003 год " Cells(3, 6) = "2004 год " Cells(3, 7) = "2000 год " Cells(3, 8) = "2001 год " Cells(3, 9) = "2002 год " Cells(3, 10) = "2003 год " Cells(3, 11) = "2004 год " Cells(4, 1) = "1. Яблоня" Cells(5, 1) = "2. Вишня" Cells(6, 1) = "3. Слива" Cells(7, 1) = "4. Чёрная смородина" Cells(8, 1) = "5. Крыжовник" Cells(9, 1) = "6. Клубника" For i = 1 To 6 For j = 1 To 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) Next j Cells(3 + i, 12) = obsh(i) Next i Cells(12, 1) = "Результат в денежном эквиваленте" Cells(13, 1) = " Наименование фруктово-ягодных культур " Cells(13, 2) = "Доход по всем культурам за каждый год" Cells(14, 2) = "2000 год " Cells(14, 3) = "2001 год " Cells(14, 4) = "2002 год " Cells(14, 5) = "2003 год " Cells(14, 6) = "2004 год " Cells(14, 7) = "Общий доход по всем культурам за 5 лет" Cells(15, 1) = "1. Яблоня" Cells(16, 1) = "2. Вишня" Cells(17, 1) = "3. Слива" Cells(18, 1) = "4. Черная смородина" Cells(19, 1) = "5. Крыжовник" Cells(20, 1) = "6. Клубника" For i = 1 To 6 For j = 1 To 5 doh(i, j) = zakup_ceni(i, j) * urozhai(i, j) Cells(14 + i, 1 + j) = doh(i, j) Next j Next i Cells(21, 4) = "Общий доход колхоза за 5 лет" For i = 1 To 6 obsh_doh_pyat = obsh_doh_pyat + obsh_doh(i) Cells(21, 7) = obsh_doh_pyat Next i Cells(23, 1) = "Наименование (номер) культуры, принесший максимальный доход за 5 лет" For i = 1 To 6 For j = 1 To 5 obsh_doh(i) = obsh_doh(i) + doh(i, j) Cells(14 + i, 7) = obsh_doh(i) If obsh_doh(i) > yagod Then yagod = obsh_doh(i) max_kult = i Cells(23, 6) = max_kult End If Next j Next i End Sub Описание входных данных и результат вычислений Вариант 7
Решение 7 - го варианта
Литература 1. М.Н. Иванов, С.В. Суворов «Информатика Част 2. Программирование», Москва 2006 г. |
РЕКЛАМА
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |