Continuando com a resolução dos meus primeiros exercícios em Vba aqui fica mais um:

Elabore um algoritmo que permita Construir uma Matriz Quadrada Cujos os Elementos Sejam a Soma dos Seus Índices.

Aqui fica o código que resolve o exercício:

Sub BuildMatrixij()
    Dim InitialCell As Range
    Dim n As Integer
    Dim mat() As Integer
    Dim i As Integer, j As Integer

    ' Tamanho da matriz
    Do
        n = InputBox("Tamanho da matriz?")
    Loop Until n < 1001

    ' Dimensionar a matriz
    ReDim mat(1 To n, 1 To n)

    ' calcular a matriz
    For i = 1 To n ' linhas
        For j = 1 To n ' colunas
            mat(i, j) = i + j
        Next j
    Next i

    ' Imprimir na folha a matriz
    Set InitialCell = Range("A1") '  Primeira célula

    For i = 1 To n ' linhas
        For j = 1 To n ' colunas
            InitialCell.Offset(i - 1, j - 1).Value = mat(i, j)
        Next j
    Next i
End Sub

Não sei se a forma como implementei a resolução do exercício é a mais correcta, e por isso fico à espera de comentários, ou mesmo de correcções e dicas de melhoramento do código que apresento.

Share

Leave a Reply