Смекни!
smekni.com

Разработка программы на языке VBA для птицеводческого хозяйства (стр. 1 из 3)

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

РОССИЙСКОЙ ФЕДЕРАЦИИ

ИДО ГОУ МГИУ

Курсовая работа

По дисциплине «Информатика»

Разработка программы на языке VBA для птицеводческого хозяйства

Москва 2009


Содержание

1. Задание на курсовую работу

2. Описание переменных

3. Блок-схема

4. Описание алгоритма

5. Листингпрограммы

6. Список использованной литературы

7. Приложения

1. Задание на курсовую работу

В коллективном хозяйстве имеется 8 птицеводческих бригад. Каждая бригада выращивает различное количество гусей. В каждой бригаде расходовалось некоторое количество кормов (тонн) и, соответственно, увеличивался вес гусей. Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран:

· исходные данные в виде таблицы, где указаны фамилия и инициалы бригадиров, количество гусей в каждой бригаде, расход комбикормов в течение каждого месяца в каждой бригаде и привес всех гусей в течение каждого месяца в каждой бригаде; (данные за 2 месяца);

· средний привес одного гуся за 2 месяца в каждой бригаде на 1 кг комбикорма;

· средний привес одного гуся за 1 месяц на 1 кг комбикорма по всем бригадам хозяйства;

· средний привес всех гусей по всему хозяйству за 2 месяца;

· фамилию и инициалы бригадира, в чьей бригаде удалось получить наименьший привес на 1 кг корма, с указанием среднего.

2. Описание переменных

программа расчет гуси

Kol – переменная для накопления общего количества

Br1 – br8 количество гусей в каждой бригаде 1- 8

i , j – целочисленные переменные для прокрутки массивов

3. Блок схема


4. Описание алгоритма

Входными данными являются

Одномерный массив количеств гусей в фермах, количество эл. Массива 8

Двумерный массив Кормлений Бригад и месяцев число элементов массива 8х5=40

Ввод может осуществляется как в полях формы так и с помощью вспомогательного диалога

Используя функцию автоматического распределения можно получить равномерную нагрузку между бригадами

Подтвердить выбор можно с помощью кнопки «Ввести в эксплуатацию».

Вод выдаваемых кормов по кнопке «Кормление»

Расчет полученных результатов по кнопке «Расчет»

5.Листингпрограммы

Private Sub ComboBox1_Change()

End Sub

Private Sub CommandButton1_Click()

For i = 1 To 8

For j = 1 To 5

Sheets("Кормление").Cells(i + 1, j + 1) = 30 * Sheets("Фермы").Cells(11, 2) * Sheets("Фермы").Cells(i + 1, 3)

Next j

Next i

End Sub

Private Sub CommandButton2_Click()

Sheets("Кормление").Cells(ListBox1.ListIndex + 2, ListBox2.ListIndex + 2) = Val(TextBox1)

End Sub

Private Sub ListBox1_Click()

TextBox1.Text = Sheets("Кормление").Cells(ListBox1.ListIndex + 2, ListBox2.ListIndex + 2)

End Sub

Private Sub ListBox2_Click()

TextBox1.Text = Sheets("Кормление").Cells(ListBox1.ListIndex + 2, ListBox2.ListIndex + 2)

End Sub

Private Sub UserForm_Activate()

For i = 1 To 8

ListBox1.AddItem (Sheets("Кормление").Cells(i + 1, 2))

Next i

For i = 1 To 6

ListBox2.AddItem (Sheets("Кормление").Cells(1, i + 2))

Next i

ListBox1.ListIndex = 0

ListBox2.ListIndex = 0

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub br1_Change()

End Sub

Private Sub CheckBox1_Click()

If CheckBox1.Value = True Then

If kolgus Mod 8 = 0 Then

br1.Text = kolgus / 8

br8 = br1

br7 = br1

br6 = br1

br5 = br1

br4 = br1

br3 = br1

br2 = br1

Else

br1 = kolgus \ 8

br8 = br1

br7 = br1

br6 = br1

br5 = br1

br4 = br1

br3 = br1

br2 = br1

br1 = (kolgus \ 8) + (kolgus Mod 8)

End If

br1.Enabled = False

br2.Enabled = False

br3.Enabled = False

br4.Enabled = False

br5.Enabled = False

br6.Enabled = False

br7.Enabled = False

br8.Enabled = False

Else

br1.Enabled = True

br2.Enabled = True

br3.Enabled = True

br4.Enabled = True

br5.Enabled = True

br6.Enabled = True

br7.Enabled = True

br8.Enabled = True

End If

End Sub

Private Sub CommandButton1_Click()

kol = 123

kol = br1 / 1 + br2 / 1 + br3 / 1 + br4 / 1 + br5 / 1 + br6 / 1 + br7 / 1 + br8 / 1

If kol / 1 = kolgus / 1 Then

Sheets("Фермы").Cells(2, 3) = br1

Sheets("Фермы").Cells(3, 3) = br2

Sheets("Фермы").Cells(4, 3) = br3

Sheets("Фермы").Cells(5, 3) = br4

Sheets("Фермы").Cells(6, 3) = br5

Sheets("Фермы").Cells(7, 3) = br6

Sheets("Фермы").Cells(8, 3) = br7

Sheets("Фермы").Cells(9, 3) = br8

UserForm1.Hide

Else

errorform.Show

errorform.errtext.Caption = "Неверновведенызначенияраспределения!"

End If

End Sub

Private Sub ListBox1_Click()

End Sub

Private Sub UserForm_Click()

End Sub

Range("H18:I18").Select

ActiveCell.FormulaR1C1 = "=MIN(R[-16]C[2]:R[-9]C[2])" Range("A2:J9").Select

Range("J2").Activate

Selection.Sort Key1:=Range("J2"), Order1:=xlAscending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _DataOption1:=xlSortNormal

Selection.Sort Key1:=Range("J2"), Order1:=xlAscending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

Selection.Sort Key1:=Range("J2"), Order1:=xlAscending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

Selection.Sort Key1:=Range("J2"), Order1:=xlDescending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

Selection.Sort Key1:=Range("J2"), Order1:=xlDescending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

Range("C18:G18").Select

ActiveCell.FormulaR1C1 = "=R[-9]C[-1]"

Range("B33").Select

6. Список использованной литературы

1. MS Office XP, 2003 Word, Excel, Access, Outlook, PowerPoint, FrontPage, MS Project/ А. К. Гультяев: Корона-Век, 2006

2. VBA. Практическое программирование/ Туркин Олег: Солон-пресс,2007

3. VBA/ Кузьменко В.Г.: Бином,2008.

4. Измерение, управление и регулирование с помощью макросов VBA в Word и Excel/ Берндт Г.-Й.: КОРОНА-Век, 2008

5. Информатика. Методические указания по выполнению практических работ в компьютерном классе (Access, Internet) / Гришин М.П., Юрасов А.Б. М.: МГИУ, 2003.

6. Информатика. Методическое пособие по выполнению практических работ в компьютерном классе (Word, Excel) / Гришин М.П. М.: МГИУ, 2005.

7. Информатика. Часть 1. Введение в информатику: учебное пособие / Гришин М.П., Иванов М.Н., Носова Т.К., Суворов С.В. М.: МГИУ, 2008.

8. Информатика. Часть 2. Программирование: Учебно-методическое пособие / Иванов М.Н., Суворов С.В. М.: МГИУ. 2006.

9. Моделирование с помощью Microsoft Excel и VBA. Разработка систем поддержки принятия решений/ Кристиан Олбрайт: Вильямс, 2005

10. Профессиональная разработка приложений Excel/ Стивен Буллен, Роб Боуви, Джон Грин: Вильямс, 2005

11. Самоучитель VBA/ Андрей Гарнаев: БХВ-Петербург,2004

12. Самоучитель программирования на VBA в Microsoft Office/В. Д. Хореев: Юниор, 2001

13. Электронные таблицы Microsoft Excel. Проблемы и решения/ Лори Анн Ульрих: Эком, 2002


ПРИЛОЖЕНИЯ

Приложение № 1

«Все о гусях»

Породы

В приусадебных хозяйствах гуси имеют значительное распространение, занимают второе место после кур. Гуси характеризуются высокой скороспелостью. Гусята интенсивно растут с суточного до 8—9-недельного возраста, увеличивая за этот период живую массу примерно в 40 раз. Масса 9-недельного гусенка может достигать 4 кг и более. При этом на 1 кг привеса затрачивается 2,5—3 кг концентратов и 1,3 кг травяной муки. Мясо гусей имеет высокие вкусовые качества и содержит 65% съедобных частей. В ряде стран мира организовано получение крупной гусиной печени, основным производителем которой является Франция. Биологическая особенность гусей – способность потреблять большое количество зеленых и сочных кормов и хорошо переваривать клетчатку. Однако гусыни отличаются низкой яйценоскостью (30—60 яиц на несушку) и невысокими воспроизводительными способностями. У них резко выражен инстинкт клохтанья и сезонность получения племенных яиц. Породы гусей относятся к мясному типу, но подразделяются на более тяжелые и более легкие. К более тяжелым породам относятся холмогорские, крупные серые, тулузские; к более легким—китайские, роменские и большинство местных гусей.

Порода Живая масса Яйценосность за год, шт. Живая масса гусят в 60 дн. возрасте,кг.
Гусаков Гусынь
Холмогорская 8-10 7,0-7,5 40-45 3,5-4,0
«Лингард» 8-10 7,0-7,5 40-45 3,5-4,0
Крупная серая 6,5-7,0 6,0 34-45 3,5-4,0
Горьковская 5,0-6,0 4,5-5,5 75-85 3,4-3,7
Кубанская 5,0-6,0 4,5-5,5 75-85 3,4-3,7
Тулузские 8-10 7,0-7,5 30-40 3,8-4,0

Холмогорская порода. Старейшая отечественная порода создана в центральных черноземных областях страны путем скрещивания местных белых гусей с укрупненными китайскими. Холмогорские гуси крепки и выносливы. По окраске оперения различаются белые и серые гуси. Холмогорские гуси довольно крупные. Живая масса гусынь 7 кг, гусаков—9—10 кг. Яйценоскость гусынь 30—40 яиц; масса яиц 180—200 г. Молодняк быстро растет и в 60-дневном возрасте весит 4 кг. Холмогорских гусей разводят почти на всей территории СНГ.

Крупные серые гуси. Выведены в результате скрещивания роменских гусей с тулузскими и отбора птицы по живой массе и яйценоскости. Имеются две разновидности гусей этой породы: тамбовские степные и борковские. У гусей массивная голова; короткий прямой клюв оранжевого цвета с розовым кончиком; вокруг глаз оранжевое кольцо; кошелька под клювом нет; на голове часто бывает хохолок; шея средней длины, толстая; туловище широкое и глубокое; на животе могут быть две кожные жировые складки; телосложение крепкое; крылья плотно прилегают к телу; ноги средней длины, широко расставлены, красного цвета; оперение серого цвета с разными оттенками: голова, верхняя часть шеи и спины темно-серые, грудь светло-серая, на спине и крыльях чешуйчатый рисунок (четко выраженные светлые полоски); живот белого цвета, концы хвостовых перьев тоже белые. Живая масса гусынь - 5,5-6,0 кг, гусаков - 6-7 кг. Яйценоскость - 35-40 яиц в год, средняя масса яиц 175 г . Вывод гусят - 55—58 %.К 60-дневному возрасту живая масса гусят равна 4-4,5 кг. Гуси этой породы очень выносливы, подвижны, хорошо насиживают и выращивают гусят, хорошо используют пастбищный корм. Гусят можно откармливать на жирную печень, но лучше помесей, полученных от скрещивания с рейнскими гусями. Масса жирной печени составляет 350-450 г.