проверьте мои задания..

Программирование на Visual Basic for Applications
muter
Новичок
Новичок
 
Сообщения: 28
Зарегистрирован: 29.04.2005 (Пт) 19:05

проверьте мои задания..

Сообщение muter » 08.05.2005 (Вс) 17:05

проверьте кому не впадлу правильно я сделал и есть ли предложения по оптимизации кода.

Код: Выделить всё
'Дана матрица D(M,N).
'Преобразовать исходную матрицу в одномерный массив W
'по следующим правилам:
'а) компоненты матрицы D располагаются в массиве W по строкам;
'б) компоненты матрицы D располагаются в массиве W по столбцам.

Sub f1_1()
Dim m, n, W1(), W2(), D() As Integer
Dim txt3, txt, txt2 As String
Dim i, j, p As Byte
  m = Val(InputBox("Количество столбцов"))
  n = Val(InputBox("Количество строк"))
  If m <= 0 Or n <= 0 Then
    MsgBox "Неккоректный ввод данных!"
    GoTo fin
  End If
  ReDim D(m, n), W1(m * n), W2(m * n)
  For i = 1 To m
    For j = 1 To n
'ввод элементов матрицы с порядковым номером
      D(i, j) = Val(InputBox("Введите элемент матрицы с порядковым номером D (" & i & "," & j & ")", "Ввод"))
    Next j
  Next i
'по строкам
  For i = 1 To m
    For j = 1 To n
      W1(p) = D(i, j)
      p = p + 1
    Next j
  Next i
  p = 0
'по столбцам
  For j = 1 To n
    For i = 1 To m
      W2(p) = D(i, j)
      p = p + 1
    Next i
  Next j
  For i = 1 To m
    For j = 1 To n
      txt3 = txt3 & CStr(D(i, j)) & " "
    Next j
    txt3 = txt3 & Chr(13)
  Next i
  For i = 0 To m * n
    txt = txt & CStr(W1(i)) & " "
    txt2 = txt2 & CStr(W2(i)) & " "
  Next i
'вывод строчки
  MsgBox "Матрица: " & Chr(13) & txt3 & "По строкам: " & txt & Chr(13) & "По столбцам: " & txt2
fin: End Sub

FaKk2
El rebelde gur&#250;
El rebelde gur&#250;
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 08.05.2005 (Вс) 17:24

muter

Ты просишь, потому что не работает или по другой причине?

Я к тому, что, навряд ли, кто то за тебя будет делать уроки.
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 08.05.2005 (Вс) 18:01

Я точно не буду.
Потому что уроки задают для того, чтобы ты чему-то научился. А перед этим дают всё необходимое.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

muter
Новичок
Новичок
 
Сообщения: 28
Зарегистрирован: 29.04.2005 (Пт) 19:05

Сообщение muter » 08.05.2005 (Вс) 19:21

оно работает, а проверить надо, чтобы оно правильно работало :)


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 3

    TopList