Pergunta/Tarefa:
Considere o seguinte trecho de código:
// declara, constrói e inicializa um array de 10 inteiros
int[] valores = { 6, 3, 90, 1, 54, 7, 12, 32, 9, 4 };
int temp;
Escreva um programa VB.NET que inverta a ordem dos elementos do vetor valores usando apenas a variável temp, ou seja, não é permitido usar nenhuma função disponível em bibliotecas VB.NET. Sua saída deverá ser algo como:
Ordem inicial:
6 3 90 1 54 7 12 32 9 4
Ordem invertida:
4 9 32 12 7 54 1 90 3 6
Resposta/Solução:
Veja a resolução comentada deste exercício usando VB.NET:
Imports System
Module Program
' função principal do programa VB.NET
Sub Main(args As String())
' varíáveis usadas na resolução do problema
' declara, constrói e inicializa um array de 10 inteiros
Dim valores() As Integer = {6, 3, 90, 1, 54, 7, 12, 32, 9, 4}
Dim temp, inicio, fim As Integer
' vamos mostar a ordem inicial dos elementos no vetor
Console.WriteLine("Ordem inicial:" & vbCrLf)
For i As Integer = 0 To valores.Length - 1
Console.Write(valores(i) & " ")
Next
' vamos inverter a ordem dos elementos no array
inicio = 0
fim = valores.Length - 1
While inicio < fim
temp = valores(inicio)
valores(inicio) = valores(fim)
valores(fim) = temp
' incrementa e decrementa as variáveis de controle
inicio = inicio + 1
fim = fim - 1
End While
Console.WriteLine(vbCrLf & vbCrLf & "Ordem invertida:" & vbCrLf)
For i As Integer = 0 To valores.Length - 1
Console.Write(valores(i) & " ")
Next
Console.WriteLine(vbCrLf & vbCrLf & "Pressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
|