Составление программы на языке VBA

Порядок оформления результатов работы программы. Описание переменных, алгоритма и входных данных. Использование вспомогательных переменных, счетчиков циклов, являющихся целыми числами. Проверка программы на всех единицах, нулях и произвольных данных.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 06.04.2015
Размер файла 1,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Федеральное агентство по образованию Российской Федерации

ИДО ГОУ МГИУ

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

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

Группа: № Рл10ПТ21

Студент:

Николаев Николай Николаевич

Руководитель:

Петров Андрей Ювенальевич

Москва 2012

Содержание

программа алгоритм счетчик цикл

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

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

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

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

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

6. Описание входных данных и результат вычислений

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

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

В течение шести дней (рабочая неделя) рабочий изготавливает детали восьми различных типов. Известно количество изготовленных им деталей за каждый день и стоимость изготовления одной детали каждого типа (стоимость изготовления детали не меняется).

Написать программу на языке VBA, которая вводит данные, выполняет расчет и выводит на экран:

исходные данные в виде таблицы, где перечислены наименования деталей, стоимость их изготовления, количество деталей, изготовленных за каждый день;

стоимость деталей каждого типа, изготовленных за неделю;

заработок за каждый день;

заработок за неделю;

деталь с наименьшим заработком.

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

Исходные данные находятся на листе «Start» (рис. 1) и содержат следующую информацию:

Количество деталей каждого из восьми типов, изготовленных за шесть рабочих дней.

Стоимость изготовления одной детали каждого типа.

Результаты работы программы оформляются на листе «Результат» (рис. 2).

Рис. 1. Лист с начальными данными

Рис. 2. Полученные результаты

В программе переменные описаны следующим образом:

1) cena(8) -- стоимость изготовления одной единицы каждого изделия представляет массив дробных чисел

Dim cena(8) As Double

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

Dim koll(8,6) As Integer

3) zar(7) -- заработок за каждый день (от 1 до 6) и общий заработок за весь период представляет массив дробных чисел

Dim zar(7) As Double

4) koll_n(8) -- количество деталей каждого вида за истекший период представляет массив целых чисел

Dim koll_n(8) As Integer

5) det -- деталь с наименьшим заработком представляет собой строку

Dim det As String

6) min -- сумма наилучшего заработка за период представляет дробное число

Dim min As Double

В программе также были использованы вспомогательные переменные, счетчики циклов, i и j, являющиеся целыми числами.

Dim i As Integer, j As Integer

Переменные cena(8), zar(7), min могут быть и не целыми числами, поэтому они объявлены как действительные. Переменные koll(8,6) koll_n(8), det -- целые числа, так как мы считаем, что смена рабочего составляет полный день, и он не может изготовить за смену половину детали.

3. Блок схема

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

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

Начало программы.

Ввод начальных (нулевых) значений для расчетных величин (количество изготовленных деталей за неделю, заработок по дням и общая, деталь с наименьшим заработком и величина минимального заработка).

Открытие листа с начальными данными («Start») и получение этих данных в рабочие переменные (массивы сеnа(8) и kоll(8, 6)).

Открытие листа с результатами, формирование матрицы входных данных. Организуется два вложенных цикла (по каждой детали и дню). Во внутреннем цикле (по дням, расчет по одному изделию) суммируется количество изготовленных деталей, после выхода из внутреннего цикла выводится результат по детали.

Расчет сумм заработков по изделиям за каждый день, количество изготовленных деталей и вывод результатов. Организуется два вложенных цикла: внешний по изделиям, внутренний по дням. Для оптимизации процесса расчетная часть совмещена с выводом: во внутреннем цикле происходит вычисление суммы заработка по i-му изделию в j-й день с выводом результата, во внешнем цикле (после получения результатов внутреннего цикла) -- вывод стоимости одной детали и по всем деталям. Расчет заработка за каждый день организован в этом же внутреннем цикле.

Определение детали с минимальным заработком. Используется алгоритм сравнения, при равенстве двух и более сумм результативной считается последняя сумма.

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

Sub Function()

'Сначала объявляем переменные, используемые в программе.

'стоимость детали

Dim cena(8) Аs Double

'количество (по дням)

Dim koll(8,6) As Integer

'зарплата в день

Dim zar(7) As Double

'количество деталей за неделю

Dim koll_n(8) As Integer

'деталь с наименьшим заработком.

Dim det As String

'сумма наименьшего заработка.

Dim min As Double

'счетчики циклов

Dim i As Integer, j As Integer

`Далее всем переменным присваивается нулевое значение.

For i = 1 То 8

kol_n(i) = 0

Next

For j=1 То 7 zar(j) = 0

Nехt

min = 0 det = 0

'В этом фрагменте кода происходит считывание начальных данных с листа «Start», и в каждую ячейку массива cena(8) записывается стоимость каждой детали, а в ячейках двумерного массива koll(8,6) теперь находится количество деталей каждого вида, изготовленных в каждый из рабочих дней.

Sheets(''Start").Select

For i = 1 То 8

сеnа(i) = Cells(3 + i, 2)

Next

For i = 1 Тo 8

For j = 1 Тo 6

koll(i, j) = Cells(3 + i, 2 + j)

Next j

Next i

'В этом фрагменте происходит расчет сумм заработков по изделиям в каждый день и количество изготовленных деталей за неделю.

For i = 1 То 8

For j = 1 То 6

koll_n (i) = koll_n (i) + koll(i, j)

Next j

Next i

'Ниже происходит ввод названий соответствующих столбцов и строк.

Sheets("Result").Select

Sheets("Result").Cells(2, 1) = "Результат"

Sheets("Result").Cells(3, 1) = "Наименование изделия"

Sheets("Result").Cells(3, 2) = "Стоимость 1 шт."

Sheets("Result").Cells(3, 3) = "Заработано за"

Sheets("Result").Cells(4, 3) = "1-й день"

Sheets("Result").Cells(4, 4) = "2-й день"

Sheets("Result").Cells(4, 5) = "3-й день"

Sheets("Result").Cells(4, 6) = "4-й день"

Sheets("Result").Cells(4, 7) = "5-й день"

Sheets("Result").Cells(4, 8) = "6-й день"

Sheets("Result").Cells(4, 9) = "неделю"

Sheets("Result").Cells(5, 1) = "Деталь 1"

Sheets("Result").Cells(6, 1) = "Деталь 2"

Sheets("Result").Cells(7, 1) = "Деталь 3"

Sheets("Result").Cells(8, 1) = "Деталь 4"

Sheets("Result").Cells(9, 1) = "Деталь 5"

Sheets("Result").Cells(10, 1) = "Деталь 6"

Sheets("Result").Cells(11, 1) = "Деталь 7"

Sheets("Result").Cells(12, 1) = "Деталь 8"

Sheets("Result").Cells(13, 1) = "Итого за каждый день"

'Во внутреннем цикле происходит вычисление суммы заработка по i-му изделию в j-й день с выводом результата, а во внешнем цикле (после получения результатов внутреннего цикла) происходит вывод стоимости одной детали и по всем деталям. Расчет 'заработной платы за каждый день организован в этом же внутреннем цикле.

For i = 1 То 8

For j = 1 То 6

Sheets("Результат").Сеlls(14 + i, 2 + j) = koll(i, j) * сеna(i)

zar(j) = zar(j) + koll(i, j) * сеna(i)

zar(6) = zar(6) + koll(i, j) * сеnа(i)

Sheets("Result").Cells(13, 2 + j) = zar(j)

Next j

Sheets("Результат").Сеlls(14 + i, 2) = сеnа(i)

Sheets("Результат").Сеlls(14 + i, 8) = сеnа(i) * koll_n (i)

Next i

'Здесь описан алгоритм сравнения некоторого заработка с заработком, полученным с одной из восьми деталей. Если рассматриваемый заработок меньше другого, то сумме наименьшего заработка присваивается текущее значение, а деталью с минимальным заработком становится деталь под номером i.

For i = 1 To 8

Sheets("Result").Cells(4 + i, 9) = cena(i) * koll_n(i)

min = Application.min(ActiveSheet.Range("I5:I12"))

If cena(i) * koll_n(i) = min Then

min = cena(i) * koll_n(i)

det = i

End If

Next

'Ниже выводится на лист с результатом работы программы заработок за неделю и название детали с наименьшим заработком.

Sheets("Result").Select

Sheets("Result").Cells(15, 1) = "Заработок за неделю"

Sheets("Result").Cells(15, 2) = zar(7)

Sheets("Result").Cells(16, 1) = "Деталь с наименьшим заработком"

Sheets("Result").Cells(16, 2) = "Деталь " + det

End Sub

6. Описание входных данных и результат вычислений

Проверка программы на всех единицах:

Проверка на всех нулях:

Проверка на произвольных данных:

Исходные данные для задания представлены на Рис. 1, решение - на Рис. 2.

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

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.

Размещено на Allbest.ru

...

Подобные документы

  • Разработка программы тестирования студентов по MS PowerPoint с кодом на языке Delphi. Создание алгоритма для решения функциональных требований задачи. Описание переменных, вспомогательных процедур, входных и выходных данных для реализации программы.

    курсовая работа [1,5 M], добавлен 21.09.2010

  • Написание программы для работы с клиентами средствами языка Delphi, которая предусматривает ввод, редактирование и удаление информации. Разработка алгоритма решения задачи, описание переменных, вспомогательных процедур, входных и выходных данных.

    курсовая работа [355,7 K], добавлен 21.09.2010

  • Характеристика программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит результаты на экран. Описание переменных в программе, ее блок-схема и алгоритм работы. Листинг программы. Описание входных данных и результат вычислений.

    курсовая работа [721,4 K], добавлен 10.11.2010

  • Разработка программы игры в крестики-нолики. Примеры игровой ситуации на игровом поле. Описание входных и выходных данных, переменных и функций программы. Реализация алгоритма работы программы на языке C++. Текст программы и примеры ее выполнения.

    курсовая работа [352,8 K], добавлен 14.04.2011

  • Создание программы с кодом на языке Delphi, которая ищет в тексте заглавные буквы, выдает сообщение о количестве и замене их на малые буквы. Описание переменных, вспомогательных процедур, входных и выходных данных, необходимых для реализации задачи.

    курсовая работа [540,4 K], добавлен 21.09.2010

  • Написание программы, которая вводит исходные данные, выполняет расчет и выводит на экран. Использование вспомогательных переменных и счетчиков циклов в программе. Расчет сумм заработков по каждому виду одежды за день, количества изготовленных деталей.

    курсовая работа [2,4 M], добавлен 17.01.2015

  • Разработка программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран заданную информацию. Типы блок-схем и их использование при написании программы. Описание входных данных и результат вычислений, листинг программы.

    курсовая работа [680,3 K], добавлен 03.08.2009

  • Разработка программы на языке Pascal. Описание переменных. Действия, которые должна выполнить программа согласно выбранного алгоритма. Детализация графической части программы. Листинг и тестирование программы. Вывод массива данных на экран монитора.

    контрольная работа [360,4 K], добавлен 13.06.2012

  • Разработка программы "Игроки КХЛ 2012-2013" на языке С++ с использованием классов списков структур для обработки данных. Описание глобальных переменных, разработанных функций. Главное меню программы. Чтение данных из файла, их просмотр и сохранение.

    курсовая работа [2,2 M], добавлен 17.03.2016

  • Использование класса статических массивов структур и базы данных "ODER" при создании программы на языке С++. Основные формы выдачи результатов. Технические и программные средства. Тесты для проверки работоспособности алгоритма создания программы.

    курсовая работа [1,1 M], добавлен 17.03.2015

  • Изучение категории типов данных, видов выражений и операций, работа на языке Си. Составление программы вычисления значения функции у(х) при произвольном значении х. Блок-схема алгоритма. Описание текста программы и рассмотрение контрольного примера.

    лабораторная работа [124,7 K], добавлен 09.01.2012

  • Создание приложения, исполняющего трансляцию программы из языка Паскаль в язык Си: разработка алгоритма реализации задачи, описание необходимых констант, переменных, функций и операторов, представление листинга программы и распечатка результатов.

    курсовая работа [305,9 K], добавлен 03.07.2011

  • Описание методов вычисления определителя матрицы. Математическое решение задачи с применением метода исключения Гаусса с выбором главного элемента. Схема алгоритма программы, описание переменных и структур данных, текст программы на языке Pascal.

    курсовая работа [438,8 K], добавлен 16.02.2011

  • Описание алгоритма решения задачи графическим способом. Вывод элементов массива. Описание блоков укрупненной схемы алгоритма на языке Pascal. Листинг программы, а также ее тестирование. Результат выполнения c помощью ввода различных входных данных.

    контрольная работа [150,4 K], добавлен 03.05.2014

  • Составление схемы алгоритма и программы для построения графика временной функции, работающей как в машинном, так и в реальном времени. Пример вычисления степенного ряда с помощью схемы Горнера. Описание переменных программы, листинг, процедуры и функции.

    курсовая работа [67,6 K], добавлен 20.11.2012

  • Комбинированный тип данных для хранения входных данных о студентах и информация, содержащаяся в полях. Пример структуры входных и выходных данных. Алгоритм работы и программный код программы по успеваемости студентов, описание используемых функций.

    курсовая работа [135,9 K], добавлен 28.12.2012

  • Выбор метода проектирования транслятора с языка Паскаль на язык Си, разработка и кодирование алгоритма программы. Использование допустимых операторов в исходном тексте, определение типов переменных и синтаксиса логических и арифметических выражений.

    курсовая работа [1,0 M], добавлен 03.07.2011

  • Исследование арифметических выражений и разработка простых программ. Таблица переменных для алгоритма и программы. Алгоритм решения, текст программы на языке С. Разработка программы вычисления значений выражений, сравнение результатов с ручным подсчетом.

    лабораторная работа [282,7 K], добавлен 30.01.2015

  • Создание базы данных и СУБД. Структура простейшей базы данных. Особенности языка программирования Турбо Паскаль. Описание типов, констант, переменных, процедур и функций. Описание алгоритма базы данных (для сотрудников ГИБДД), листинг программы.

    курсовая работа [26,3 K], добавлен 26.01.2012

  • Анализ, математическая постановка задачи. Описание алгоритма работы основной программы. Детализация отдельных участков программы. Графический интерфейс программы "15". Описания используемых типов, глобальных переменных, процедур, функций. Процесс отладки.

    курсовая работа [48,8 K], добавлен 14.02.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.