Sign in to follow this  
doisreal

Vetor Em Visual Basic

Recommended Posts

Tenho que fazer um vetor que vai receber 60 numeros. Em uma listbox esses numeros iram aparecer na ordem que foram digitados. Na outra listbox os numeros pares apareceram nas posiçoes impares por exemplo se eu digitar : 1, 2, 3, 4 vai aparecer assim: 2,1,4,3.................obs: não pode ser digitado 0

alguém poderia me passar o codigo ?

Share this post


Link to post
Share on other sites

vê se te ajuda:

Dim vet

Dim i As Integer

Dim msg2 As String

vet = "1,2,3,4,5,6"

vet = Split(vet, ",")

For i = 1 To UBound(vet) Step 2

msg2 = msg2 & "-" & vet(i) & "-" & vet(i - 1)

Next

MsgBox msg2

Share this post


Link to post
Share on other sites
Guest Visitante

Dim vet(1 To 10) As Integer

Dim num As Integer

Dim cont As Integer

Dim par As Integer

Dim impar As Integer

par = 1

impar = 2

For cont = 1 To 10

num = Val(InputBox("Digite um nº", "Digitação", ""))

vet(cont) = num

lst_1.AddItem vet(cont)

If (num Mod 2 = 0) Then

vet(par) = numero

par = par + 2

Else

vet(impar) = numero

impar = impar + 2

End If

Next

For cont = 1 To 10

lst_2.AddItem vet(cont)

Next

Acima é o codigo que eu fiz.

A 1° list box o resultado sai certo, porem na segunda listbox os numeros pares aparecem só nas posiçoes pares e as posiçoes impares aparecem só o nº "0" exemplo : 0, 2, 0, 4........ O que eu to fazendu di errado ?

Share this post


Link to post
Share on other sites

Como os dados teriam que aparecer na 2º List ??

Por exemplo eu digito: 1, 2, 3, 4, 5, 6. Na 1º lista deve aparecer 1, 2, 3, 4, 5, 6. Já na 2º lista eles devem aparecer: 2,1,4,3,6,5, ou seja numeros pares em posiçoes impares.

Esse é meu codigo:

Dim vet(1 To 6) As Integer

Dim num As Integer

Dim cont As Integer

Dim par As Integer

Dim impar As Integer

par = 1

impar = 2

For cont = 1 To 6

num = Val(InputBox("Digite um nº", "Digitação", ""))

Do While num = 0

MsgBox "Numero inválido"

num = Val(InputBox("Digite um nº", "Digitação", ""))

Loop

vet(cont) = num

lst_1.AddItem vet(cont)

If (num Mod 2 = 0) Then

vet(par) = num

par = impar + 1

Else

vet(impar) = num

impar = par + 1

End If

Next

For cont = 1 To 6

lst_2.AddItem vet(cont)

Next

Com esse meu codigo a 2º lista aparece 2,3,4,5,6,6..... O que estou fazendo de errado ?

Acho que eu vou precisar de outra variavel pra acumular " "

Ou seja por exemplo eu digito só numeros pares: 2,4,6,8,10,12 aí na 2º lista temq aparecer 2, , 4, , 6, , 8, , 10, , 12........As posiçoes pares n recem numero nenhum porque eu n digitei nenhum numero impar.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this