- •По дисциплине «Информатика и программирование»
- •1. Программная обработка информации в таблице Excel
- •1.1 Описание организации информации в таблице Excel, обработки массивов
- •1.2 Условие задачи на организацию обработки информации, представленной в виде таблицы Excel
- •1.3 Распечатка программного кода
- •1.4 Распечатка результатов выполнения
- •2. Преобразование информации, расположенной в таблице Excel, в тип данных, определенный пользователем"
- •2.1 Описание организации экономической информации в виде типа данных, определенного пользователем
- •2.2 Условие задачи на обработку экономической информации, организованной в виде в виде типа данных, определенного пользователем
- •3.2 Распечатка программного кода
- •3.3 Распечатка результатов выполнения
- •4. Литература и Internet-ресурсы
1.2 Условие задачи на организацию обработки информации, представленной в виде таблицы Excel
Первая часть предусматривает создание в прикладном программном продукте Excel макроса, обеспечивающего информации, расположенной в таблице Excel. В таблице Excel, в первой строке, заданы положительные целые числа. Информация занесена, начиная с первого столбца. Количество заполненных столбцов не задается. Программный код, должен обеспечить определение местоположения (номера столбца) максимального элемента. Если несколько элементов имеют одинаковое максимальное значение, то выдаются координаты всех максимальных элементов.
1.3 Распечатка программного кода
'Раздел общих описаний
' GENERAL DECLARATIONS
Type T_TTN
Post As String * 20
Pynktn As String * 20
NazvTov As String * 20
Kolich As Integer
Cena As Single
End Type
Dim TTN(40) As T_TTN
Sub Pr52()
Dim Max As Single
' Перенесение информации в массив пользовательского типа
L = 2
Do While Cells(L, 1) <> ""
TTN(L - 1).Post = Cells(L, 1)
TTN(L - 1).Pynktn = Cells(L, 2)
TTN(L - 1).NazvTov = Cells(L, 3)
TTN(L - 1).Kolich = Cells(L, 4)
TTN(L - 1).Cena = Cells(L, 5)
L = L + 1
Loop
N = L - 2
' Определение максимального значения цены
Max = -1E+20
For I = 1 To N
If TTN(I).Cena > Max Then
Max = TTN(I).Cena
End If
Next I
' Копирование заголовков таблицы
For J = 1 To 5
Cells(1, J + 6) = Cells(1, J)
Next J
' Формирование новой таблицы
L = 1
For I = 1 To N
With TTN(I)
If .Cena = Max Then
L = L + 1
Cells(L, 7) = .Post
Cells(L, 8) = .Pynktn
Cells(L, 9) = .NazvTov
Cells(L, 10) = .Kolich
Cells(L, 11) = .Cena
End If
End With
Next I
End Sub
1.4 Распечатка результатов выполнения
В активном листе таблицы Excel набирается следующий документ:
Код поставщика |
Пункт назначения |
Название |
Количество |
Цена |
R10 |
Минск |
MI10 |
60 |
1000 |
R11 |
Воронеж |
VR11 |
20 |
700 |
R13 |
Минск |
MI13 |
30 |
600 |
R10 |
Владимир |
VL10 |
30 |
1000 |
R11 |
Воронеж |
VR11 |
20 |
1000 |
Результатом является таблица следующего вида:
Код поставщика |
Пункт назначения |
Название |
Количество |
Цена |
R10 |
Минск |
MI10 |
60 |
1000 |
R10 |
Владимир |
VL10 |
30 |
1000 |
R11 |
Воронеж |
VR11 |
20 |
1000 |
