Ir para conteúdo
Entre para seguir isso  
Boleta

[Aula 10] Arrays e Conversão de Valores

Recommended Posts

Boleta    1
Boleta

Olá a todos!

Depois de alguns meses sem fazer aulas, eis aqui o tio bolétiz voltando a "rotina". Prometo que vou voltar a lançar mais aulas com frequência a partir de agora tongue.gif

 

Na aula de hoje, vamos aprender a usar Arrays e a Converter Valores. Ambos são muito importantes para qualquer programador, em qualquer linguagem.

 

Arrays

 

Conceito: Arrays são espécies de multiplas variáveis, onde o usuário economiza muito tempo e linhas de código declarando a variável uma vez, porém criando váriais matrizes. Essas matrizes são várias instâncias de variáveis, onde você possui um índice, que indica qual matriz usaremos. Vamos à sintaxe:

 

'Declaração de váriaveis Arrays
Dim [variavel](Min To Max) As [tipo]

 

Só isso?

Sim, só isso. Porém, temos algo novo: (Min To Max)

O uso dos parênteses logo após o nome da variável indica que estamos criando matrizes. Para isso, podemos indicar o número mínimo e o número máximo do Index.

O Index é o que vai direcionar à variavel qual valor ela assumirá naquela instância. Por exemplo, se fizermos isso:

 

Dim Characteres(0 To 254) As String
Dim i As Integer
For i = 0 To 254
    Characteres(i) = Chr(i)
Next

 

Faremos com que cada instância referente a cada index assumirá um valor diferente. No caso acima, atribui 255 valores (contando com o 0) a 255 variáveis diferentes, com apenas 5 linhas. Vamos a mais um exemplo.

 

Dim Nums(2) As Integer
Nums(0) = 15
Nums(1) = 20
Nums(2) = 100
MsgBox Nums(0) & vbTab & Nums(1) & vbTab & Nums(2)

 

Note que acima não atribui um valor minimo à index. Sendo assim, o valor minimo é 0, e terminará em 2, que será considerado o valor máximo.

 

Tio Bolétiz, ainda não vi muita utilidade nisso...[/b]

 

Ao fim da aula veremos um exemplo prático.

 

Conversão de Variáveis

 

A conversão de variáveis é bem simples. Elas servem para convertermos certos tipos de dado para outros. Por exemplo, um valor String que possui apenas um número pequeno pode ser convertido para um valor Integer. Ou então, queremos retornar se certas condições são verdadeiras sem criarmos uma clausula If. Enfim, são bem simples. Para cada tipo de dado há uma função de conversão. Não vou cita-las aqui. Você pode consulta-las indo no Object Browser e procurando pelo módulo "Conversion".

 

Aqui vai um exemplo de como usar:

 

Dim vStr As String
Dim vInt As Integer
vStr = "123"
vInt = CInt(vStr)

 

Cuidado: tentar converter strings com caracteres alfanuméricos resultará em erro tongue.gif

 

-----------------

 

Bem, então lá vamos usar um exemplo que incorpora nossas aulas. Nele, farei um suposto sistema para armazenar valores de Players em um jogo.

 

Exemplo

Private Type Pls
    Name As String
    Vocation As Integer
    Level As Long
End Type
Dim Players(1 To 5) As Pls

Private Function VerInfos(PlayerIndex As Integer) As String
If PlayerIndex < LBound(Players) Or PlayerIndex > UBound(Players) Then 
     VerInfos = "Este index não foi declarado!"
     Exit Function
End If
VerInfos = "Player Name: " Players(PlayerIndex).Name & vbCrlf & _
"Vocation Number: " & Players(PlayerIndex).Vocation & vbCrlf & _
"Level: " & Players(PlayerIndex).Level
End Function

Private Sub Form_Load()
Dim Rand As Integer
Dim i As Integer
Randomize
For i = 1 To 5
     Players(i).Name = Chr(Rnd * 100)
     Players(i).Vocation = CInt(Rnd * 5)
     Players(i).Level = CLng(Rnd * 1000000)
Next
Rand = CInt(Rnd * 8)
MsgBox "Informações do player de index " & Rand & ":" & vbCrlf & VerInfos(Rand)
End Sub

 

 

----------

 

Essa foi mais uma aula de Visual Basic. Espero que tenham gostado, pois em breve, teremos mais aulas quentinhas, saindo do forno biggrin.gif

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites
imported_chunin_lee    0
imported_chunin_lee

Boa!!!! Tô querendo aprende além sobre suas aulas de VB! não estou falando que está ruim mais vi um tutorial super-completo!! Se quiser ver ele me fale!!

Ótimos Tutoriais!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
Kevox    0
Kevox

Finalmente brother! Estava há tempos pedindo para novos Tutoriais aqui na seção VB. Esta estava muito parada, sem dinâmica, mas parece que voltou, hein? Espero que sim!

Valeu por criar este novo Tutorial e que venha outros biggrin.gif

 

 

 

 

Edit:

 

 

vInt = CInt(vStr)[/b]

 

Ainda não aprendemos o que é CInt, tio! =/

Compartilhar este post


Link para o post
Compartilhar em outros sites
guttoxd    0
guttoxd

nao intendi

Compartilhar este post


Link para o post
Compartilhar em outros sites
Kevox    0
Kevox

guttoxd:

 

Cuidado com o flood bro. Próxima vez poderá levar um alerta.

Compartilhar este post


Link para o post
Compartilhar em outros sites
plomentes    0
plomentes

Gostei, esta bem explicados não li as outras aulas mais da pra ter uma idéia =]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×