Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Dim A_mas() As Single

Dim A_mas()As Single 2 страница | Dim A_mas()As Single 3 страница | Dim A_mas()As Single 4 страница | Function FnZ(y, m) As Single | Function FnG(x, n) As Single | Function Max(a, b) As Single |


Читайте также:
  1. A single story
  2. Collective nouns denote a number or collection of similar indi­viduals or things regarded as a single unit.
  3. Dim A_mas()As Single 1 страница
  4. Dim A_mas()As Single 2 страница
  5. Dim A_mas()As Single 3 страница
  6. Dim A_mas()As Single 4 страница

Dim i, p As Byte

p =1

While p =1 ' Аналіз значення індикатора перестановок

p =0

For i =1 To n - 1

If A(i) < A(i + 1) Then

ap =A(i): A(i) =A(i + 1): A(i + 1) =ap

p =1

End If

Next i

Wend

End Sub

 

' Сортування одновимірного масиву методом пошуку найменшого елемента

Sub Sort_M(A, n)

Dim min As Single

Dim i, p As Byte

For i =1 To n - 1

min =A(i): p =i

For j =i + 1 To n ' Пошук мінімального значення серед елементів

If min > A(j) Then

min =A(j): p =j

End If

Next j

A(p) =A(i): A(i) =min

Next i

End Sub

 

Sub Zavd_6_11() ' Сортування рядка за спаданням значень його елементів

Dim j, col, ozn As Byte

Dim A_mas() As Single

 

Set myCELL = Application.InputBox (_

prompt:="Виберіть вхідний рядок даних (без заголовка)", _

Type:=8)

 

Set myCELL2 = Application.InputBox (_

prompt:="Виберіть клітинку, з якої будуть виводитися отримані результати", _

Type:=8)

 

ozn = Application.InputBox ("Введіть ознаку сортування: 1 - за спаданням; 2 - за зростанням")

col =myCELL. Columns. Count ' Обчислення кількості стовпців

 

ReDim A_mas(1 To col)

 

'Занесення введених елементів у одновимірний масив

For j =1 To col

A_mas(j) =myCELL. Columns (j). Cells (1)

Next j

 

If ozn =1 Then ' Сорт. масиву за спаданням

' Сортування одновимірного масиву методом перестановок

Call Sort_P(A_mas, col)

Else ' Сорт. масиву за зростанням

' Сортування одновимірного масиву методом пошуку найменшого елемента

Call Sort_M(A_mas, row)

End If

 

' Виведених елементів одновимірного масиву

For j =1 To col

myCELL2. Offset (0, j - 1) .Value =A_mas(j)

Next j

 

myCELL2. Offset (1, 0) .Value ="Кінець розрахунку"

End Sub

 

Сортування стовпця за зростанням значень його елементів

  B C D E F G H I J K
  D   D'              
  1,08   -4,91              
  -4,91   1,08              
  31,34   31,34              
  324,23   33,37              
  2365,17   187,39              
  6003,80   324,23              
  4236,29   1111,89              
  1111,89   2365,17              
  187,39   4236,29              
  33,37   6003,80              

Порядок виконання дій – для середовища Excel

1. Формування рядка D:

Клі­ти­ни B77:B86 à =C14 – <Ctrl + Enter>

2. Формування рядка D':

Клі­ти­ни B77:B86 à – <Ctrl + C> (де C – copy)

Клі­ти­на D77 à – Правка, Специальная вставка... Вставить: значения <OK>

3. Сортування рядка D':

Клі­ти­ни B67:K67 à Данные, Сортировка:

1. Сортировать по: возрастанию

2. Идентифицировать поля по: отсутствует

3. Параметры...

4. Сортировать по первому ключу: не производится

5. Сортировать: строки диапазона

6. <OK>

Тексти процедур і функцій – для середовища Visual Basic

Sub Zavd_6_12() ' Сортування стовпця за спаданням значень його елементів

Dim i, j, row, ozn As Byte

Dim A_mas() As Single

 

Set myCELL = Application.InputBox (_

prompt:="Виберіть вхідний стовпець даних (без заголовка)", _

Type:=8)

 

Set myCELL2 = Application.InputBox (_

prompt:="Виберіть клітинку, з якої будуть виводитися отримані результати", _

Type:=8)

 

ozn = Application.InputBox ("Введіть ознаку сортування: 1 - за спаданням; 2 - за зростанням")

row =myCELL. Rows.Count ' Обчислення кількості рядків

 

ReDim A_mas(1 To row)

 

'Занесення введених елементів у одновимірний масив

For i =1 To row

A_mas(i) =myCELL. Columns (1). Cells (i)

Next i

 

If ozn =1 Then ' Сорт. масиву за спаданням

' Сортування одновимірного масиву методом перестановок

Call Sort_P(A_mas, col)

Else ' Сорт. масиву за зростанням

' Сортування одновимірного масиву методом пошуку найменшого елемента

Call Sort_M(A_mas, row)

End If

 

' Виведених елементів двовимірного масиву

For i =1 To row

myCELL2. Offset (-1 + i, 0) .Value =A_mas(i)

Next i

 

myCELL2. Offset (row, 0) .Value ="Кінець розрахунку"

End Sub

Задача 6.2. Відповідно до номера варіанту (прикл. 1 і 2), з використанням засобів середовищ Excel та Visual Basic відсортувати елементи дво­ви­мір­ного масиву, а саме:

● рядків матриці у порядку спадання значень їх елементів;

● стовпців матриці у порядку зростання значень їх елементів;

● матриці по рядках у порядку спадання значень їх елементів;

● матриці по стовпцях у порядку зростання значень їх елементів.

Сортування елементів двовимірного масиву

Сортування рядків матриці у порядку спадання значень їх елементів

  B C D E F G H I J K L
  А           А'        
  0,10 8,11 40,44 65,52 57,51   65,52 57,51 40,44 8,11 0,10
  1,20 2,97 6,75 12,61 14,10   12,61 14,10 6,75 2,97 1,20
  1,29 11,08 47,19 78,13 71,61   78,13 71,61 47,19 11,08 1,29
  2,49 14,05 53,95 90,75 85,70   90,75 85,70 53,95 14,05 2,49
  3,79 25,13 101,14 168,88 157,31   168,88 157,31 101,14 25,13 3,79

Порядок виконання дій – для середовища Excel

1. Формування матриці <А>:

Клі­ти­ни B92:F96 à =C48 – <Ctrl + Enter>

2. Формування матриці <А'>:

Клі­ти­ни B92:F96 à – <Ctrl + C> (де C – copy)

Клі­ти­на H92 à – Правка, Специальная вставка... Вставить: значения <OK>

3. Сортування рядків матриці <А'>:

Клі­ти­ни H92:L96 à Данные, Сортировка:

1. Сортировать по: убыванию

2. Идентифицировать поля по: отсутствует

3. Параметры...

4. Сортировать по первому ключу: не производится

5. Сортировать: столбцы диапазона

6. <OK>

Сортування стовпців матриці у порядку зростання значень їх елементів

  B C D E F G H I J K L
  А           А'        
  0,10 8,11 40,44 65,52 57,51   3,79 25,13 101,14 168,88 157,31
  1,20 2,97 6,75 12,61 14,10   2,49 14,05 53,95 90,75 85,70
  1,29 11,08 47,19 78,13 71,61   1,29 11,08 47,19 78,13 71,61
  2,49 14,05 53,95 90,75 85,70   1,20 2,97 6,75 12,61 14,10
  3,79 25,13 101,14 168,88 157,31   0,10 8,11 40,44 65,52 57,51

Порядок виконання дій – для середовища Excel

1. Формування матриці <А>:

Клі­ти­ни B107:F111 à =C48 – <Ctrl + Enter>

2. Формування матриці <А'>:

Клі­ти­ни B107:F111 à – <Ctrl + C> (де C – copy)

Клі­ти­на H107 à – Правка, Специальная вставка... Вставить: значения <OK>

3. Сортування рядків матриці <А'>:

Клі­ти­ни H107:L111 à Данные, Сортировка:

1. Сортировать по: возрастанию

2. Идентифицировать поля по: обозначениям столбцов листа

3. Параметры...

4. Сортировать по первому ключу: не производится

5. Сортировать: строки диапазона

6. <OK>

Сортування матриці по рядках у порядку спадання значень їх елементів

  B C D E F G H I J K L
  А           А'        
  0,10 8,11 40,44 65,52 57,51   0,10 1,20 1,29 2,49 2,97
  1,20 2,97 6,75 12,61 14,10   3,79 6,75 8,11 11,08 12,61
  1,29 11,08 47,19 78,13 71,61   14,05 14,10 25,13 40,44 47,19
  2,49 14,05 53,95 90,75 85,70   53,95 57,51 65,52 71,61 78,13
  3,79 25,13 101,14 168,88 157,31   85,70 90,75 101,14 157,31 168,88
  AR                    
  0,10 8,11 40,44 65,52 57,51 1,20 2,97 6,75 12,61 14,10 1,29
  ARс                    
  0,10 1,20 1,29 2,49 2,97 3,79 6,75 8,11 11,08 12,61 14,05

Порядок виконання дій – для середовища Excel

1. Формування матриці <А>:

Клі­ти­ни B123:F127 à =C48 – <Ctrl + Enter>

2. Формування рядка АR:

Клі­ти­ни B129:F129 à =B123 – <Ctrl + Enter>

Клі­ти­ни G129:K129 à =B124 – <Ctrl + Enter>

....................................

Клі­ти­ни V129:Z129 à =B127 – <Ctrl + Enter>

3. Формування рядка АRc:

Клі­ти­ни B129:Z129 à – <Ctrl + C> (де C – copy)

Клі­ти­на B131 à – Правка, Специальная вставка... Вставить: значения <OK>

4. Сортування рядка АRc:

Клі­ти­ни B131:Z131 à Данные, Сортировка:

1. Сортировать по: возрастанию

2. Идентифицировать поля по: отсутствует

3. Параметры...

4. Сортировать по первому ключу: не производится

5. Сортировать: столбцы диапазона

6. <OK>

5. Формування матриці <А'>:

Клі­ти­ни H123:L123 à =B131 – <Ctrl + Enter>

Клі­ти­ни H124:L124 à =G124 – <Ctrl + Enter>

....................................

Клі­ти­ни V127:L127 à =V131 – <Ctrl + Enter>

Сортування матриці по стовпцях у порядку зростання значень їх елементів

  B C D E F G H I J K L
  А           А'        
  0,10 8,11 40,44 65,52 57,51   168,88 78,13 47,19 12,61 2,97
  1,20 2,97 6,75 12,61 14,10   157,31 71,61 40,44 11,08 2,49
  1,29 11,08 47,19 78,13 71,61   101,14 65,52 25,13 8,11 1,29
  2,49 14,05 53,95 90,75 85,70   90,75 57,51 14,10 6,75 1,20
  3,79 25,13 101,14 168,88 157,31   85,70 53,95 14,05 3,79 0,10
  АR                    
  0,10 1,20 1,29 2,49 3,79 8,11 2,97 11,08 14,05 25,13 40,44
  АRc                    
  168,88 157,31 101,14 90,75 85,70 78,13 71,61 65,52 57,51 53,95 47,19

Порядок виконання дій – для середовища Excel

1. Формування матриці <А>:

Клі­ти­ни B143:F147 à =C48 – <Ctrl + Enter>

2. Формування рядка АR:

Клі­ти­ни B149:F149 à =ТРАНСП(B143:B147) – <Ctrl + Shift + Enter>

Клі­ти­ни G149:K149 à =ТРАНСП(C143:C147) – <Ctrl + Shift + Enter>

....................................

Клі­ти­ни V149:Z149 à =ТРАНСП(F143:F147) – <Ctrl + Shift + Enter>

3. Формування рядка АRc:

Клі­ти­ни B149:Z149 à – <Ctrl + C> (де C – copy)

Клі­ти­на B151 à – Правка, Специальная вставка... Вставить: значения <OK>

4. Сортування рядка АRc:

Клі­ти­ни B151:Z151 à Данные, Сортировка:

1. Сортировать по: убиванию

2. Идентифицировать поля по: отсутствует

3. Параметры

4. Сортировать по первому ключу: не производится

5. Сортировать: столбцы диапазона

6. <OK>

5. Формування матриці <А'>:

Клі­ти­ни H143:H147 à =ТРАНСП(B151:F151) – <Ctrl + Shift + Enter>

Клі­ти­ни I143:I147 à =ТРАНСП(G151:K151) – <Ctrl + Shift + Enter>

....................................

Клі­ти­ни L143:L147 à =ТРАНСП(V151:Z151) – <Ctrl + Shift + Enter>

Тексти процедур і функцій – для середовища Visual Basic

' Сорт. рядків матриці у порядку зрост./спад. значень їх елементів

Sub Sort_rM(A, m, n)


Дата добавления: 2015-11-14; просмотров: 66 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Dim m, n, nr, ns, i, j, z, k As Integer 5 страница| Dim A_mas()As Single 1 страница

mybiblioteka.su - 2015-2024 год. (0.024 сек.)