Файл: Лабораторная работа по Информационным технологиям наименование дисциплины Обработка массивов данных.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.11.2023

Просмотров: 26

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Липецкий государственный технический университет

Институт (факультет) Инженерно-строительный факультет

Кафедра _____________Информатики_________________

ЛАБОРАТОРНАЯ РАБОТА

по Информационным технологиям__________

наименование дисциплины

Обработка массивов данных .

наименование темы

Вариант №28

Студент ____________ Батищева А.А.

подпись, дата фамилия, инициалы

Группа АД-19

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

к.т.н, доцент_______ ____________ Суслова С.А.

ученая степень, ученое звание подпись, дата фамилия, инициалы

Липецк 2020


Задание


На молокозаводе выпускаются продукты 7-ми наименований. В каждое изделие входят до 3-х видов различных компонентов. Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и

выводит на экран:

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

• объем каждого вида продукта;

• стоимость каждого вида продукта;

• название самого дорогого вида продукта;

• его цена.



Рисунок 1 – Лист «Нач_д» с исходными данными



Начало
Блок схема алгоритма


Ввод данных



Открытие листа с данными «Нач_д»







i=1,7



j=1,3





Cena(i)=Cells(3+I,1+j)



j=1,7


j=1,3




Koll(i.j)=Cells(3+I,4+2)





Открытие листа с данными «Результат»



Вывод данных формы Cells(*,*)=…


Конец

Вывод

k





i=1,7




j=1,3



Cells(3 + i, 1 + j) = cena(i, j)
Cells(3 + i, 4 + j) = koll(i, j)
koll_n(i) = koll_n(i) + koll(i, j)



Cells(3 + i, 8) = koll_n(i)





Ввод данных формы Cells(*,*)=…



i=1,7





j=1,3





Cells(16 + i, 4 + j) = koll(i, j) * cena(i, j)
zar(i) = zar(i) + koll(i, j) * cena(i, j)
zar(8) = zar(8) + koll(i, j) * cena(i, j)
Cells(16 + i, 1 + j) = cena(i, j)
Cells(16 + i, 8) = zar(i)





i=1,7



zar(i) = Cells(16 + i, 8)





-

Zar(i)>zarpl






Zarpl=zar(i)
den=i

+

A[I,maxj]
Sum>max



Вывод данных формы Cells(*,*)=…




Конец

Код программы


Sub Functiond()

Dim cena(7, 3) As Double

Dim koll(7, 3) As Double

Dim zar(8) As Double

Dim koll_n(7) As Double

Dim den As Double

Dim zarpl As Double

Dim i As Integer

Dim j As Integer

For i = 1 To 7

koll_n(i) = 0

Next i

For j = 1 To 6

zar(j) = 0

Next j

zarpl = 0

den = 0

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

For i = 1 To 7

For j = 1 To 3

cena(i, j) = Cells(3 + i, 1 + j)

Next j

Next i

For i = 1 To 7

For j = 1 To 3

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

Next j

Next i

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

Cells(1, 1) = "Молокозавод"

Cells(2, 1) = "Продукт"

Cells(2, 2) = "Цена"

Cells(2, 5) = "Вес"

Cells(3, 2) = "Молоко"

Cells(3, 3) = "Закваска"

Cells(3, 4) = " Сахар"

Cells(3, 5) = "Молоко"

Cells(3, 6) = "Закваска"

Cells(3, 7) = "Сахар"

Cells(3, 8) = "Всего"

Cells(4, 1) = "Сырок Б.Ю.А."

Cells(5, 1) = "Бифидок"

Cells(6, 1) = "Творог"

Cells(7, 1) = "Молоко 3%"

Cells(8, 1) = "Сливки 30%"

Cells(9, 1) = "Сыр"

Cells(10, 1) = "Йогурт Чудо"

For i = 1 To 7

For j = 1 To 3

Cells(3 + i, 1 + j) = cena(i, j)

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

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

Next j

Cells(3 + i, 8) = koll_n(i)

Next i

Cells(14, 1) = "Расчет в денежном эквиваленте"

Cells(15, 1) = "Продукт"

Cells(15, 2) = "Цена компонента"

Cells(15, 5) = "Стоимость в продукте"

Cells(16, 2) = "Молоко"

Cells(16, 3) = "Закваска"

Cells(16, 4) = "Сахар"

Cells(16, 5) = "Молоко"

Cells(16, 6) = "Закваска"

Cells(16, 7) = "Сахар"

Cells(16, 8) = "Всего"

Cells(17, 1) = "Сырок Б.Ю.А."

Cells(18, 1) = "Бифидок"

Cells(19, 1) = "Творог"

Cells(20, 1) = "Молоко 3%"

Cells(21, 1) = "Сливки 30%"

Cells(22, 1) = "Сыр"

Cells(23, 1) = "Йогурт чудо"

Cells(24, 1) = "ИТОГО"

For i = 1 To 7

zar(i) = 0

For j = 1 To 3

Cells(16 + i, 4 + j) = koll(i, j) * cena(i, j)

zar(i) = zar(i) + koll(i, j) * cena(i, j)

zar(8) = zar(8) + koll(i, j) * cena(i, j)

Cells(16 + i, 1 + j) = cena(i, j)

Cells(16 + i, 8) = zar(i)

Next j

Next i

For i = 1 To 7

zar(i) = Cells(16 + i, 8)

If zar(i) > zarpl Then

zarpl = zar(i)

den = i

End If

Next i

Cells(24, 8) = zar(8)

Cells(25, 1) = "Самый дорогой продукт"

Cells(25, 5) = den

Cells(25, 6) = "Стоимость"

Cells(25, 8) = zarpl

End Sub

Результаты выполнения программы




Рисунок 2 – Окно проекта



Рисунок 3 – Результат работы