__________________________________________________________________
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
РОССИЙСКОЙ ФЕДЕРАЦИИ
ИДО ГОУ МГИУ
Курсовая работа
по дисциплине «Информатика»
Задание:4
Группа:Пм08М21
Студент: Ветлужских Татьяна Юрьевна
Руководитель: Суворов Станислав Вадимович
Москва 2009
__________________________________________________________________
Содержание
1) Задание на курсовую работу…………………………………………… | 3 |
2) Описание переменных………………………………………………...... | 4 |
3) Блок-схема………………………………………………………………. | 7 |
4) Описание алгоритма……………………………………………………. | 9 |
5) Листинг программы…………………………………………………...... | 10 |
6) Описание входных данных и результат вычислений………………… | 12 |
7) Список использованной литературы…………………………………... | 17 |
Задание на курсовую работу
Склад готовой продукции цеха каждую смену принимает готовые изделия (гайки, болты, шайбы, и т.п., всего 9 видов изделий) и каждую смену отправляет готовые изделия другим цехам. Склад, как цех, работает в 3 смены. В конце 3-й смены подсчитываются остатки.
Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран:
- исходные данные в виде таблицы, где указаны наименования изделий и цена каждого вида изделия, остаток от предыдущих суток, поступления каждого вида изделия в каждую смену, отпуск каждого вида изделия в течение смены;
- стоимость остатка от предыдущих суток;
- остаток каждого вида изделий на начало следующего рабочего дня;
- стоимость остатка в конце каждой смены;
- наименование изделия, пользовавшегося в течение 3-х смен наибольшим спросом.
Описание переменных
Исходные данные находятся на листе «Нач_д» (рис. 1) и содержат следующую информацию:
1) Наименование изготавливаемых деталей (9 типов).
2) Стоимость одной детали каждого наименования.
3) Остаток изделий от прошлых суток.
4) Поступления на склад за каждую смену изделий.
5) Отпуск со склада изделий за каждую смену.
Результаты работы программы оформляются на листе «Результат» (рис. 2).
В программе переменные описаны следующим образом:
1) Ostatok – стоимость остатка от предыдущих суток представляет дробное число
Dim Ostatok As Double
2) Ost_izd(9) – остаток каждого вида изделий на начало следующего рабочего дня представляет массив целых чисел
Dim Ost_izd(9) As Integer
3) Ost_smena(3) – стоимость остатка в конце каждой смены представляет массив дробных чисел
Dim Ost_smena(3) As Double
вспомогательные переменные для определения наименования изделия, пользовавшегося в течение 3-х смен наибольшим спросом
4) Otpusk(9) – отпуск каждого вида изделия за 3 смены представляет массив целых чисел
Dim Otpusk(9) As Integer
5) Ind – индекс элемента в массиве Otpusk(9), соответствующего изделию с максимальным спросом представляет целое число
Dim Ind As Integer
6) MaxSp – максимальное значение отпуска в массиве Otpusk(9) представляет целое число
DimMaxSpAsInteger
В программе так же были использованы вспомогательные переменные, счетчики циклов, i
и j
, являющиеся целыми числами
Dim i As Integer, j As Integer
Переменные Ostatok, Ost_smena(3), могут быть и не целыми числами, поэтому они объявлены как действительные. Переменные - Ost_izd(9), Otpusk(9), MaxSp – целые числа, так как мы считаем что склад принимает и отпускает целые детали, а не их части.
Блок-схема
Описание ал
Открытие листа «Нач_д» для ввода исходных данных.
Ввод начальных (нулевых) значений для расчета величин (стоимость каждого из изделий, остаток от прошлых суток, поступления изделий в каждую из трех смен, отпуск изделий в каждую из смен).
Запуск расчета необходимых данных посредством нажатия на кнопку «Рассчитать».
Первый этап расчетов проводится на основе двух вложенных циклов. Порядок расчета необходимых данных следующий: расчет стоимости остатка (Ostatok); расчет остатка каждого вида изделия за сутки (Ost_izd(9)) с вяводом результатов расчета в лист «Результаты»; расчет отпуска каждого из видов изделия за сутки (Otpusk(9)); расчет стоимости остатка в конце каждой смены (Ost_smena(3)).
Вывод рассчитанных данных в лист «Результаты».
На втором этапе расчетов проводится поиск изделия, пользующегося максимальным спросов посредством последовательного сравнения спроса на каждое из изделий.
Вывод в листе «Результаты» наименование изделия, пользующегося максимальным спросом.
Программное открытие листа «Результаты».
Кнопка «Очистить поля» необходима для очистки рассчитанных полей.
Листинг
программы
Листинг программы расчета, запускаемой по нажатию кнопки «Рассчитать» приведен ниже.
Private Sub CommandButton1_Click()
'переменные
Dim Ostatok As Double
Dim Ost_izd(9) As Integer
Dim Ost_smena(3) As Double
Dim Otpusk(9) As Integer
Dim Ind As Integer
Dim MaxSp As Integer
Dim i As Integer, j As Integer
Sheets("Нач_д").Select
Ostatok = 0
For i = 1 To 9
'стоимостьостатка
Ostatok = Ostatok + Cells(3 + i, 2) * Cells(3 + i, 3)
'остатоккаждоговидаизделей
Ost_izd(i) = Cells(3 + i, 3) + Cells(3 + i, 4) + Cells(3 + i, 5) + Cells(3 + i, 6) - Cells(3 + i, 7) - Cells(3 + i, 8) - Cells(3 + i, 9)
Sheets("Результаты").Cells(4 + i, 2) = Ost_izd(i)
'отпускизделий
Otpusk(i) = Cells(3 + i, 7) + Cells(3 + i, 8) + Cells(3 + i, 9)
'стоимость остатка в конце каждой смены
For j = 1 To 3
Ost_smena(j) = Ost_smena(j) + (Cells(3 + i, 3 + j) - Cells(3 + i, 6 + j)) * Cells(3 + i, 2)
Next
Next
'выводрезультатов
Sheets("Результаты").Cells(1, 2) = Ostatok
Sheets("Результаты").Cells(16, 2) = Ost_smena(1)
Sheets("Результаты").Cells(17, 2) = Ost_smena(2)
Sheets("Результаты").Cells(18, 2) = Ost_smena(3)
'поиск изделия с максимальным спросом
Ind = 1
MaxSp = Otpusk(Ind)
For i = 2 To 9
If Otpusk(i) > MaxSp Then
Ind = i
MaxSp = Otpusk(i)
End If
Next
Sheets("Результаты").Cells(21, 2) = Sheets("Нач_д").Cells(3 + Ind, 1)
Sheets("Результаты").Select
End Sub
Листинг программы очистки рассчитанных полей листа «Результаты» по нажатию кнопки «Очистить поля» приведен ниже.
Private Sub CommandButton1_Click()
Dim i As Integer
Sheets("Результаты").Cells(1, 2) = ""
For i = 5 To 13
Sheets("Результаты").Cells(i, 2) = ""
Next
Sheets("Результаты").Cells(16, 2) = ""
Sheets("Результаты").Cells(17, 2) = ""
Sheets("Результаты").Cells(18, 2) = ""
Sheets("Результаты").Cells(21, 2) = ""
End Sub
Описание входных данных и результат вычислений
1. Проверка работы программы на всех нулях
2. Проверка работы программы на всех единицах
3. Произвольная проверка
Список использованной литературы
1. Информатика. Часть 1. Введение в информатику: учебное пособие / Гришин М.П., Иванов М.Н., Носова Т.К., Суворов С.В. М.: МГИУ, 2008.
2. Информатика. Методическое пособие по выполнению практических работ в компьютерном классе (Word, Excel) / Гришин М.П. М.: МГИУ, 2005.
3. Информатика. Часть 2. Программирование: Учебно-методическое пособие / Иванов М.Н., Суворов С.В. М.: МГИУ. 2006
4. Батищев П.С. Основы программирования на Visual Basic 6.0. Электронный учебник.
5. http://www.vbrussian.com