Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить

Задать двух-размерный массив с данными в VB6

Вс мар 15, 2020 19:00:42

Господа, Help.
Нужно задать двумерный массив 8x8 целых чисел
1, 0, 0, 0, 0, 0, 0, 0
0, 1, 0, 0, 0, 0, 0, 0
...
0, 0, 0, 0, 0, 0, 0, 1

Предположим

Dim Colon(8,8) As Integer

А как выглядит сама строчка задания значений ?????

Colon() = (1, 0, 0, 0, 0, 0, 0, 0), (0, 1, 0, 0, 0, 0, 0, 0), ..., ( 0, 0, 0, 0, 0, 0, 0, 1) - Выдаёт синтаксическую ошибку !!!!!!!!!!!!!!!!!!!!
Уже мозги свихнул. Как правильно ???
Хелп!!!

Re: Задать двух-размерный массив с данными в VB6

Вс мар 15, 2020 19:07:59

https://docs.microsoft.com/ru-ru/dotnet ... es/arrays/
Там фигурные скобки. И двойные крайние.

Re: Задать двух-размерный массив с данными в VB6

Вс мар 15, 2020 19:47:58

Нет. Эту ссыль я видел. Она похоже к более новым Бейсикам, типа .NET чтоли. В них синтаксис на СИ смахивает. А тут именно синтаксическая заковыка.
Вложения
VB6.JPG
(49.47 KiB) Скачиваний: 245

Re: Задать двух-размерный массив с данными в VB6

Вс мар 15, 2020 21:05:41

Или пробовать разные скобки, он же конкретно ругается на символ, или попробовать нажать кнопку "справка".

Re: Задать двух-размерный массив с данными в VB6

Пн мар 16, 2020 03:13:29

Беда в том что справка о чем угодно, но не об этом. Короче - нашел переводной (на русский) учебник по VB6. Там написано что можно вручную.
Dim Colon (8,8) As Integer
...
Colon(0,0) = а : Colon(0,1) = в : ... : Colon(8,8) = n - Пришлось сделать именно так за неимением лучшего.

Но не утверждается что ТОЛЬКО вручную...

Re: Задать двух-размерный массив с данными в VB6

Пт мар 20, 2020 21:10:45

Беда в том что справка о чем угодно, но не об этом. Короче - нашел переводной (на русский) учебник по VB6. Там написано что можно вручную.
Dim Colon (8,8) As Integer
...
Colon(0,0) = а : Colon(0,1) = в : ... : Colon(8,8) = n - Пришлось сделать именно так за неимением лучшего.

Но не утверждается что ТОЛЬКО вручную...




Можно же программно. Это заполнение главной диагонали матрицы, азы так сказать:
Код:
'Заполнить
Dim A(1 To 8, 1 To 8)
For i = 1 To 8
A(i, i) = 1
Next



Для проверки можно написать такой код:
Код:
' Проверка
For i = 1 To 8
    For J = 1 To 8
      St$ = St$ & Str(A(i, J))
    Next
Print St$
St$ = ""
Next
End Sub


P.S.
Обратите внимание, что при таком объявлении, как у вас
Код:
Dim Colon (8,8) As Integer

будет 9х9 матрица!
Значения с 0 по 8, это 9 колонок!

Re: Задать двух-размерный массив с данными в VB6

Сб мар 21, 2020 22:49:01

Это понятно. Но что это меняет ? Чтобы "автоматом" программа заполнила значения "ячеек" матрицы - эти значения надо программе сначала задать. А как задать совершенно нерегулярные значения ? - Очевидно - вручную задав значения такой же матрицы, или автоматом объединяя кучу одномерных матриц, которые тоже надо задать. Потому и вопрос чтоб обойти этот лишний процесс.
Про размерность матрицы - согласен - описАлся однако. ))))
Ответить