ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ
РОССИЙСКОЙ ФЕДЕРАЦИИ
ИДО ГОУ МГИУ
Курсовая работа
По дисциплине «Информатика»
Разработка программы на языке VBA для птицеводческого хозяйства
Москва 2009
Содержание
1. Задание на курсовую работу
3. Блок-схема
5. Листингпрограммы
6. Список использованной литературы
7. Приложения
· исходные данные в виде таблицы, где указаны фамилия и инициалы бригадиров, количество гусей в каждой бригаде, расход комбикормов в течение каждого месяца в каждой бригаде и привес всех гусей в течение каждого месяца в каждой бригаде; (данные за 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]"
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 г.