Программирование на языке VBA

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 01.12.2012
Размер файла 503,5 K

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

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

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

МИНОБРНАУКИ РОССИИ ФГБОУ ВПО «МГИУ»

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

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

Задание: №80

Группа: №Св10Э21

Студент: Маметова Яна Седжановна

Руководитель: Егоркин Владимир Андреевич

Москва 2012

СОДЕРЖАНИЕ

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

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

3 Блок схема

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

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

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

1 ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ

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

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

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

- доход от каждой игры за полгода;

- доход за каждый квартал по всем играм;

- общий доход от всех игр за полгода;

- наименование игры, принесший наименьший доход за полгода.

2 ОПИСАНИЕ ПЕРЕМЕННЫХ

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

- количество компьютерных игр из 6 наименований, проданных в течение 2 кварталов;

- стоимость каждой компьютерной игры за два квартала.

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

Рисунок 1 - Лист с начальными данными

компьютерный программа магазин продажа

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

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

Dim cena(6) As Double

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

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

Dim koll(6,6) As Integer

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

Dim zar(3) As Double

4) zar(6,3) - заработок каждой игры проданных за полгода

Dim zar(6,3) As Double

5) zar(2,6) - заработок за каждый квартал по проданным играм

Dim zar(2,6) As Double

6) koll_n(6) - количество компьютерных игр проданных за истекший период представляет массив целых чисел

Dim kol_n(6) As Integer

7) igra - порядковый номер гры с наибольшим заработком представляет целое число

Dim den As Integer

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

Dim zarpl As Double

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

Dim i As Integer, j As Integer

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

3 БЛОК СХЕМА

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

Рисунок 4 - Блок-схема (продолжение)

Рисунок 5 - Блок-схема (окончание)

4 ОПИСАНИЕ АЛГОРИТМА

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

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

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

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

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

5 ЛИСТИНГ ПРОГРАММЫ

Sub Function()

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

- стоимость игры

Dim cena(6) Аs Double

- количество (по играм)

Dim koll(6,6) As Integer

- количество по квартально

Dim zar(3) As Double

- доход за каждый квартал

Dim zar(3,6) As Double

- доход каждой игры за полгода

Dim zar(2,6) As Double

- доход за каждый квартал

- по всем играм

Dim koll_n(7) As Integer

- игра с наименьшим заработком

Dim igra As Integer

-сумма c наименьшим доходом

Dim doxod As Double

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

Dim i As Integer, j As Integer

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

For i = 1 То 6

kol_n(i) = 0

Next

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

Nехt

zarpl = 0 den = 0

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

Sheets(''Нач_д '' ).Select

For i = 1 То 6

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

Next

For i = 1 Тo 6

For j = 1 Тo 2

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

Next j

Next i

Далее на листе «Результат» в ячейку с определенным номером вводится ее название.

Sheets(«Результат»).Select

Sheets(«Результат»).Cells(1, 1) = «Количество проданных игр»

Sheets(«Результат»).Cells(2, 1) = «Наименование игры»

Sheets(«Результат»).Cells(2, 2) = «цена»

Sheets(«Результат»).Cells(2, 3) = «продано»

Sheets(«Результат»).Cells(3, 1) = «1-й квартал»

Sheets(«Результат»).Cells(3, 2) = «2-й квартал «

Sheets(«Результат»).Cells(4, 3) = «Всего»

Sheets(«Результат»).Cells(5, 1) = «1 игра»

Sheets(«Результат»).Cells(6, 1) = «2 игра»

Sheets(«Результат»).Cells(7, 1) = «3 игра»

Sheets(«Результат»).Cells(8, 1) = «4 игра»

Sheets(«Результат»).Cells(9 1) = «5 игра»

Sheets(«Результат»).Cells(10, 1) = «6 игра»

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

For i = 1 То 6

Sheets(«Результат»).Сеlls(3 + i, 2) = cena(i)

For j = 1 То 2

Sheets(«Результат»).Сеlls(3 + i, 2 + j) = koll(i, j)

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

Next j

Sheets(«Результат»).Сеlls(3 + i, 8) = koll_n(i)

Next i

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

Sheets(«Результат»).Сеlls(12,1) = «Результат в денежном эквиваленте»

Sheets(«Результат»).Сеlls(14,1) = «Наименование игр»

Sheets(«Результат»).Сеlls(14,2) = «доход за 1 квартал.»

Sheets(«Результат»).Сеlls(14,3) = «доход»

Sheets(«Результат»).Сеlls(14,4) = «1 квартал»

Sheets(«Результат»).Сеlls(14,5) = «2 квартал»

Sheets(«Результат»).Сеlls(14,6) = «Всего»

Sheets(«Результат»).Сеlls(15,1) = «1 игра»

Sheets(«Результат»).Сеlls(16,1) = «2 игра»

Sheets(«Результат»).Сеlls(17,1) = «3 игра»

Sheets(«Результат»).Сеlls(18,1) = «4 игра»

Sheets(«Результат»).Сеlls(19,1) = «5 игра»

Sheets(«Результат»).Сеlls(20,1) = «6 игра»

Sheets(«Результат»).Сеlls(21,1) = «ИТОГО»

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

For i = 1 То 6 For j = 1 То 2

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)

Next j

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

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

Next i

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

For j = 1 То 6

Sheets(«Результат»).Сеlls(21, 1 + j) = zar(j)

If zar(j) > zarpl Then

zarpl = zar(j)

den = j

End If

Next

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

Sheets(«Результат»).Сеlls(21,1) = zar(3)

Sheets(«Результат»).Сеlls(22,1) = «Заработок за полгода»

Sheets(«Результат»).Сеlls(22,3) = zar(3)

Sheets(«Результат»).Сеlls(23,5) = «игра с наименьшим заработком»

Sheets(«Результат»).Сеlls(23,5) = igra

Sheets(«Результат»).Сеlls(23,6) = «Заработано»

Sheets(«Результат»).Сеlls(23,7) = doxod

End Sub

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

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

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

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

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

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

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

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

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

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

...

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

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

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

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

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

  • Программа на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран. Лист с начальными данными. Ввод начальных (нулевых) значений для расчетных величин. Вспомогательные переменные, счетчики циклов. Формирование матрицы данных.

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

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

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

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

    реферат [25,4 K], добавлен 10.12.2010

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

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

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

    учебное пособие [211,1 K], добавлен 30.03.2008

  • Составление программы. Среда Delphi - механизм, обеспечивающий эффективную работу программиста. Составление программы, которая выводит для выбираемой единицы измерения (километры в час, мили в час или узлы) значение скорости в других единицах измерения.

    курсовая работа [684,0 K], добавлен 04.02.2009

  • Входные данные программы в файле "School.txt". Метод решения задачи и функциональная структура программы. Main – главная функция, формирование таблицы данных из файла. Блок-схема функции вывода фамилии победителей, занявших первые три призовых места.

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

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

    реферат [2,1 M], добавлен 16.09.2011

  • Особенности вывода на экран содержимого файла BAZA.txt. Анализ функций вывода информации о количестве каждой марки машин. Рассмотрение способов проектирования тестов программы методами черного ящика. Проблемы программирования на языке высокого уровня.

    контрольная работа [1,6 M], добавлен 04.01.2015

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

    курсовая работа [254,0 K], добавлен 02.07.2011

  • Разработка программ с использованием оператора выбора Switch. Программирование компьютерной игры в карты. Составление программы, которая по введенным значениям и номеру действия выполняет действия над числами. Тестирование работоспособности программы.

    лабораторная работа [1,2 M], добавлен 23.11.2014

  • Этапы написания программы на четырех языках программирования (Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++ 6.0), которая выводит на экран имя и фамилию студента, используя стандартные средства графики и простейшие геометрические фигуры.

    контрольная работа [1,4 M], добавлен 05.06.2010

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

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

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

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

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

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

  • Написание программы "телеграф", который принимает от пользователя сообщения и выводит его на экран в виде последовательности точек и тире. Их вывод сортируется звуковым сигналом соответствующей длительности. Программа написана на языке Turbo Pascal.

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

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

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

  • Разработка компьютерной программы, которая реализует игру "Арканоид". Освоение приемов программирования на языке С++ с использованием средств OpenGL, разбор структуры и логики игры, приобретение навыков работы с 3D графикой. Руководство пользователя.

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

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