|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.10.2011, 09:45 | #1 |
Новичок
Джуниор
Регистрация: 15.10.2011
Сообщений: 2
|
Формирование матрицы соединений!
Доброе время суток друзья)) Прошу вас помочь с моей проблемой или дать совет как лучше сделать.
Суть подпрограммы:формирование матрицы соединений)) исх данные: таблица из 2х столбцов и Nого количества строк. Первый столбец: начало ветви схемы, Второй: конец ветви схемы. Нужно получить: матрицу соединений, в которой столбцы, это номера ветвей (и следовательно номера строк в таблице исх. данных), а строки это узлы(колличество узлов равно максимальному элементу таблицы исх. данных). В итоге в матрице будет следующая картина: если в i-ой строке исх таблицы присутствует k-ый узел, тогда в новой матрице элементу присвоенно значение 1, если нет, то 0. Вот часть программы что сделал, в итоге я получаю таблицу со всеми нулевыми элементами. Sub MASSIVI() Dim MASS_ISX() As Double, MASS_REZ() As Double 'Переменные массивов' Dim i As Integer 'номер строки MASS_ISX, номер столбца массива MASS_REZ' Dim j As Integer 'номер столбца массива MASS_ISX' Dim k As Integer 'номер строки массива MASS_REZ' 'Размерности массивов' 'Для массива MASS_ISX' g = Selection.Rows.Count 'количество строк в диапозоне' h = Selection.Columns.Count 'количество столбцов в диапозоне' 'Для массива MASS_REZ' o = 4 'количество строк(узлов в схеме) в массиве MASS_REZ' p = g 'количество столбцов(ветвей в схеме) в массиве MASS_REZ' 'Формирование массива' ReDim MASS_ISX(g, h) ReDim MASS_REZ(o, p) 'Цикл формирования матрицы результата' For k = 1 To o For i = 1 To p For j = 1 To h If MASS_ISX(i, j) = k Then MASS_REZ(k, i) = 1 Else MASS_REZ(k, i) = 0 End If Next j Next i Next k 'Итоговый массив' Worksheets("Лист2").Cells(1, 1).Resize(o, p).Value = MASS_REZ End Sub Заранее благодарю за вашу помощь)) Последний раз редактировалось chege; 15.10.2011 в 10:28. |
15.10.2011, 10:19 | #2 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
Читайте правила форума. p.s. Не удивлюсь, если модераторы удалят или закроют Вашу тему... p.p.s. А вот теперь мой пост хоть удаляй))
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 Последний раз редактировалось VictorM; 15.10.2011 в 10:41. |
|
15.10.2011, 11:05 | #3 |
Новичок
Джуниор
Регистрация: 15.10.2011
Сообщений: 2
|
Нееее оставлю на память))) Спасибо и за эту помощь)))
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
добрый день на паскале | ddeman666 | Помощь студентам | 3 | 03.06.2010 17:08 |