1 / 24

Массивы данных экономических расчетах

Массивы данных экономических расчетах. ПЛАН. 1. Понятие массивов и их типы. 2. Объявление массива. 3.Примеры использования массивов. Массивы. Массивом называется упорядоченная совокупность элементов одного типа. Тип массива может быть целочисленным( если его элементы- целые числа)

Download Presentation

Массивы данных экономических расчетах

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Массивы данных экономических расчетах

  2. ПЛАН 1. Понятие массивов и их типы. 2. Объявление массива 3.Примеры использования массивов

  3. Массивы • Массивом называется упорядоченная совокупность элементов одного типа. • Тип массива может быть целочисленным( если его элементы- целые числа) • 45876; 3567; 9987786; 8778665

  4. вещественными( элементы- вещественные, реальные, т.е. содержат дробную часть числа): 89,54; 6987,354; 23654,21

  5. текстовым или символьным: Ячмень Пшеница Рожь Кукуруза И т.д.

  6. литерным ( элементы- отдельные слова или текст): Показатели урожайности; Эффективность использования; Пахотные земли; И т.д.

  7. Для резервирования места в памяти ПК для работы с массивами данных используется оператор DIM. Любой массив должен иметь имя, тип, ссылку на размерность.

  8. Например: DIM A(61), BR%(10, 15), FAM$(23)

  9. Имена переменных Для того чтобы сделать ваши переменные более наглядными и простыми для чтения, рекомендуется давать им имена, имеющие определенное смысловое значение. Существует несколько правил задания имен переменных; имя переменной может содержать не более 255 символов; имя переменной может содержать любые буквы и цифры; первый символ в имени переменной должен быть буквой; в имени переменной должны отсутствовать пробелы; имя должно быть уникальным в пределах области видимости.

  10. Типы данных • В Visual Basic вы можете применять следующие типы данных: • числовой(integer, Long, Single, Double, Currency); • строковый(String); • типа дата (Date); • байтовый (Byte); • логический (Boolean); • произвольный (variant); • объектный (object).

  11. Все элементы массива имеют одинаковый тип. Однако если массив имеет тип variant, то отдельные элементы могут содержать данные разных типов. Например, одни элементы могут быть числами, другие — строками или объектами.

  12. Индекс элемента указывается в круглых скобках после имени массива. Например, strNames(l), strNames(2), strNames(10) ЯВЛЯЮТСЯ элементами массива с именем strNames. Вы можете использовать каждый из элементов массива точно так же, как и простую переменную.

  13. глобальный массив объявляется с помощью оператора public в секции Declaration модуля:

  14. массив уровня модуля — с помощью оператора private в секцииDeclaration модуля;

  15. локальный массив — с помощью оператора private процедуры.

  16. Объявление динамического массива • При объявлении глобального массива необходимо выбрать ключевое слово Public, при объявлении массива на уровне модуля — Dim, при объявлении массива в процедуре — Dim или static. Например, • Dim intCountPar (20)As Integer

  17. С помощью выполняемого оператора ReDim • . указывается размерность массива в виде числа или выражения. Синтаксис оператора ReDim аналогичен синтаксису оператора объявления массива фиксированного размера. Например, размерность массива может быть задана любым из следующих способов: • ReDim intCountPar (х) • ReDim intCountPar (20) • ReDim intCountPar (1 То 20)

  18. В нижеприведенном тексте программного VBA-кода содержатся строки по организации массивов различных типов: • Private Sub CommonButton1_Click() • Dim A (1To 25), B (1 to 25), C(1 to 25) As Integer • Dim Viktor (1To 56) As Single • Dim Slovo (1To 10) As String* 15 • Dim fox (1To 16) As Boolean • Dim I, N As Byte • Rem ВВОД данных массивов • N= InputBox (“введите N”) • For I= 1 To N • A(I) = InputBox (“введите a(i)- целое”) • Viktor(I) = (“ введите viktor (i)- вещественное”) • Slovo (I) = InputBox (“введите slovo (i) – текстовое”) • For I= InputBox (“введитеfox(i) - логическое”) • Next I • Rem ОБРАБОТКА данных массивов • For I= 1 To n • B(I) = A (i)^2 • C(i) = A(i)+b(I) • Next I • Rem ВЫВОД данных массивов • For I= 1 To n • MsgBox A(I) & “ “& b(i) & “ “& C(i) • MsgBox Viktor(I) • MsgBox Slovo(I) • MsgBox fox(I) • Next I • End Sub

  19. Пример 1. Электротехнические характеристики трансформатора представлены массивами данных U и I. Определить сумму и произведение элементов в массиве U. Посчитать количество положительных элементов в массиве I. Сформировать третий массив данных с именем Р, каждый элемент которого образуется по правилу: PJ= UJ IJ. Распечатать значения элементов массива Р. Private Sub CommonButton1_Click() Dim U (1To 50), I (1To 50), P (1To 50) As Single Dim Sum, PR As Single Dim J,N, Kol As Byte N = InputBox (“Cк. Элементов в массиве?”) FOR J = 1 TO N U(J) = InputBox (“введите U(j)”) I(J) = InputBox (“введите I(j)”) NEXT J Sum=0 : Pr= 1: Kol=0 FOR J = 1 TO N Sum= Sum+I(J) Pr = Pr*I(J) NEXT J MsgBox “ сумма=”& Sum &” произв. =”& Pr FOR J = 1 TO N IF U (J)> 0 then KOL +1 NEXT J MsgBox “колич. полож. элементов=”& KOL Rem Новый массив FOR J = 1 TO N P(J)= U(J)*I(J) MsgBox” элемент нового массива =” & P(J) NEXT J END Sub

  20. Пример 2. Среднее время Т безотказной работы электродвигателей определяется по формуле: Т= ( Lg e)/m+J/LgN- Lg (N-1)), Где N – число электродвигателей; m – число двигателей, вышедших из строя при испытании на надежность работы; ТJ- время безотказной работы j –го двигателя до его поломки, ч Private Sub CommonButton1_Click() Dim T (1To 30) As Single Dim TT As Single Dim J, N, M, As Byte N= InputBox (“введите N”) M= InputBox (“введите M”) MsgBox “ введите значения элементов T(J):” FOR J = 1 TO N T(J)= InputBox (“введите очередной элемент)”) NEXT J MsgBox “Теперь определим сумму элементов:” FOR J = 1 TO M S=S+T(J) / (LOG(N)/LOG(10)-LOG(N-1)/LOG(10)) NEXT J MsgBox “ Сумма элементов равна: & S MsgBox” Определим время безотказной работы: “ TT=(LOG(EXP(1))/LOG(10))/M+S MsgBox”времяТ =” & TT END Sub

  21. Пример 3. Пример3. Среди элементов массива электротехнических данных найти минимальный и максимальный элементы, количество ненулевых элементов, а также все элементы, кратные семи: Private Sub CommonButton1_Click() Dim A (1To 30) As Single Dim Max, Min,S,P As Single Dim J,N,M,K As Byte N= InputBox (“сколько элементов в массиве?”) S = 0: P = 1:К = 0 MsgBox “введите значения элементов А:” FOR J = 1 TO N MsgBox “введите очередной элемент)”) NEXT J MsgBox “Определим максимум и минимум” Max = A(1): Min = A(1) FOR J = 1 TO N IF A (J)> = MAX THEN MAX = A(J) IF A (J)< = MIN THEN MIN = A(J) Next J MsgBox “максимум= “ & max & “минимум = “& min MsgBox “Определим количество ненулевых элементов” FOR J = 1 TO N IF A (J)> < = 0 THEN K = K+1 Next J MsgBox “Количество ненулевых элементов = “& K MsgBox “Определим элементы, кратные семи: “ FOR J = 1 TO N IF A (J)/7 = INT (A(J)/7) THEN MsgBox “A(“&_J &”) = “& A (J) END Sub

  22. Пример 4. Определить значение статистического показателя: Z= 2 cosK +i+Xi)/ (w*m) + b Private Sub CommonButton1_Click() Dim Т (1To 50),Х (1To 50), А (1To 50) As Single Dim К, S, P,W, M, Z As Single Dim I, C, N, B As Byte N= InputBox (“сколько элементов в массивах Т и Х?”) С= InputBox (“сколько элементов в массиве А?”) S = 0: P = 1 К = InputBox (“Введите К”) М = InputBox (“Введите М”) W= InputBox (“Введите W”) MsgBox “Введем значения элементов массивов Т и Х:” FOR I = 1 TO N T(I) = InputBox (“введите очередной элемент)”) Х(I) = InputBox (“введите очередной элемент)”) NEXT I MsgBox “Рассчитаем сумму” S=S+(T(I)+X(I)/W*m) MsgBox “Введем значения элементов массива А:” FOR B = 1 TO C A (B) = InputBox (“введите очередной элемент)”) NEXT B MsgBox “Рассчитаем произведение” FOR B = 1 TO C P=P*5*sin (A(b)) NEXT B Z=2*cos (K)+S+P MsgBox “значение Z=”& Z End Sub

  23. Контрольные задания Составить блок-схемы и программы для решения следующих задач: Задание 1. Электропроводность твердых тел определяется по формуле: V=i*exp(Wi/KT)) Где Wi и Ai – энергия перемещения иона и электрона Задание 2. Модель повреждения кабельных электролиний в течении года по месяцам имеет вид: M= A/2+n * cos (nk/6) +n * sin (nk/6) Задание3.Спектр электромагнитного сигнала может быть аппроксимирован функциональным рядом, который предусматривает обработку числовых массивов. Определить значение функции для первых пяти гармоник (т.е. при К=5) указанного ряда и квадрат значения I. I=b/2n+j * cos (nt+Fj), где Aj=sqr (U2j+ U2j) Задание 4. Среди совокупности электротехнических характеристик выбрать все положительные и определить их индексы, для отрицательных элементов- найти произведение, указать также количество нулевых элементов. Задание5. Определить сумму и произведение первых 17 элементов массива и среди десяти последующих элементов найти все неотрицательные и одновременно кратные трем. Задание 6. Найти значение выражения Z= 5 cos3x+6 sin7y, если Х- количество положительных элементов массива, а у- произведение первых 12 элементов того же массива.

  24. Начало Ввод: N S:=0; Р =1; К=0 J:=1, N Ввод: .AJ MAX:=А1MIN:=А1 J:=1, N ДА Aj>=max Max:=Аj НЕТ ДА AJ<= min Min:=АJ НЕТ J:=1, N К:= К+1 AJ >< 0 ДА НЕТ Вывод: АJ AJ/7=int(AJ/7) КОНЕЦ Блок-схема

More Related