Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

diegostf

[Resolvido]  Vetor + Repetição PARA!

Recommended Posts

Boa noite pessoal!

terminei meu Curso de logica a pouco tempo, e pretendo começar o curso de VB mais antes estou estudando para ja ir me acostumando!

 

e tenho a seguinte duvida! Com vetores e o Comando de repetição FOR

 

quero fazer o Seguinte....

Colocar em uma Form um Button e um TextBox

Mudar o nome do Button para Adicionar!

 

e cada vez que e Digitado um Numero no TextBox e clicar no Botao "Adicionar" ele guarda no Vetor o numero!

eu queria repetir isto 10 vezes!

e depois que adicionar 10 Numeros ele mostrar os 10 numeros guardados no vetor!

 

Bom na logica mesmo montando isso no programinha que tenho e super Simples ja no VB como estou começando agora me atrapalhei todo!

 

Bom para dizer que nao tentei fazer ta ai oque saiu

 

Dim vet(10) As Integer
		Dim contador As Integer
		For contador = 0 To 10
			vet(contador) = txtbox.Text
		Next
		For contador = 0 To 10
			MsgBox(vet(contador))
		Next
	End Sub
Alguem me ajuda Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Diego.

 

Se utilizar o for da forma que está utilizando, não irá conseguir inserir um número diferente para cada vetor, pois o seu for será executado de uma só vez, do 0 ao 10, quando clicar no botão adicionar. Ou seja, sua lógica que está errada.

 

E o mesmo serve para sua mensagem, Irá aparecer a primeira mensagem, quando clicar em ok, irá aparecer a segunda e assim sucessivamente.

 

Você precisa criar uma lógica que, em cada clique, seja adicionado um único valor em cada vetor, sem o for.

 

Dê uma pesada ai e veja se consegue.

 

Qualquer coisa, posta ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Diego.

 

Se utilizar o for da forma que está utilizando, não irá conseguir inserir um número diferente para cada vetor, pois o seu for será executado de uma só vez, do 0 ao 10, quando clicar no botão adicionar. Ou seja, sua lógica que está errada.

 

E o mesmo serve para sua mensagem, Irá aparecer a primeira mensagem, quando clicar em ok, irá aparecer a segunda e assim sucessivamente.

 

Você precisa criar uma lógica que, em cada clique, seja adicionado um único valor em cada vetor, sem o for.

 

Dê uma pesada ai e veja se consegue.

 

Qualquer coisa, posta ai.

 

Obrigado por responder "Claudio Neto"

 

Entao eu pensei em colocar o comando de repetição porque na logica mesmo a gente fazia o seguinte!

 

PARA contador DE 1 ATE 10 FACA

leia (vet[contador])

FIMPARA

 

so isso, ele ja ia repetindo, pedindo o numero a ser digitado e guardando no Vetor!

mais parece que no VB e mais complicado que isso rsrsrs!

vou dar uma tentada aqui mais creio que nao vou conseguir, acabei de começar usar VB e nao sei quase nada!

Comandos Sintaxe Etc, se puder me dar uma Luz para montar isso ai agradeço!

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas ai que está. Do jeito que está sendo feito, ele não está pedindo o número a ser digitado. Ele está inserindo dez vezes o mesmo número.

 

Faça assim, para cada clique você irá adicionar um novo número, então no evento click do botão faça assim:

 

if contador < 10 then
   contador = contador + 1
   vetor(contador) = text1.text
end if

Sendo que suas variáveis deverão ser declaradas com private.

 

Dessa maneira, para clique que der no botão, o contador somará mais um, e colocará um valor diferente para cada vetor. Quando chegar a dez, a condição será falsa, então não armazenará mais valores no vetor.

 

Depois para exibir as mensagens, pode deixar da maneira que está mesmo, caso seja sua intenção que sejam exibidas uma após a outra.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas ai que está. Do jeito que está sendo feito, ele não está pedindo o número a ser digitado. Ele está inserindo dez vezes o mesmo número.

 

Faça assim, para cada clique você irá adicionar um novo número, então no evento click do botão faça assim:

 

if contador < 10 then
   contador = contador + 1
   vetor(contador) = text1.text
end if

Sendo que suas variáveis deverão ser declaradas com private.

 

Dessa maneira, para clique que der no botão, o contador somará mais um, e colocará um valor diferente para cada vetor. Quando chegar a dez, a condição será falsa, então não armazenará mais valores no vetor.

 

Depois para exibir as mensagens, pode deixar da maneira que está mesmo, caso seja sua intenção que sejam exibidas uma após a outra.

Claudio Neto Obrigado por responder!

 

entao agora entendi, mais me veio outra Duvida!

como eu declaro as variaveis em Private como voce disse!?

nao e apenas declarar deste modo?

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim contador As Integer

Dim vetor(10) As integer

 

e colocar o resto do codigo abaixo?

 

If contador < 10 Then

contador = contador + 1

vetor(contador) = text1.Text

End If

 

 

 

ou as variaveis tem que ser declaradas de outro modo?!

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, para declarar como private, você precisa declarar fora da sua sub ou function. Normalmente faz-se acima de todo seu código, e ai invés de você usar dim, use private.

 

Existem três maneiras de declarar uma variável, com dim, private ou public.

 

Dim você declara normalmente dentro de um sub, mas não é obrigatório que seja assim.

A dim, somente armazenará o valor durante o evento que você está executando no momento, para o próximo evento ela estará vazia.

 

A private guardará o valor enquanto seu form estiver aberto, e você pode usar em todo o form, mas só dentro do form.

 

E a pública, você precisa declarar dentro de um module. Ela serve para você usar em todo seu programa (em diversos form), e seu valor fica armazenado durante todo o tempo que seu programa está aberto.

 

Então se usar para isso, uma variável do tipo dim, o contado sempre perderá o valor, e sempre será zero e não dará certo.

 

Ufa!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, para declarar como private, você precisa declarar fora da sua sub ou function. Normalmente faz-se acima de todo seu código, e ai invés de você usar dim, use private.

 

Existem três maneiras de declarar uma variável, com dim, private ou public.

 

Dim você declara normalmente dentro de um sub, mas não é obrigatório que seja assim.

A dim, somente armazenará o valor durante o evento que você está executando no momento, para o próximo evento ela estará vazia.

 

A private guardará o valor enquanto seu form estiver aberto, e você pode usar em todo o form, mas só dentro do form.

 

E a pública, você precisa declarar dentro de um module. Ela serve para você usar em todo seu programa (em diversos form), e seu valor fica armazenado durante todo o tempo que seu programa está aberto.

 

Então se usar para isso, uma variável do tipo dim, o contado sempre perderá o valor, e sempre será zero e não dará certo.

 

Ufa!!

 

Putz Bela explicação Claudio, nossa!

tinha essa Super duvida de para que servia o Private e Public, voce me ajudou a exclarecer todas!

Muito obrigado pela ajuda e pela explicação!

e desculpe ter enchido tanto o saco uAHSuHASuh :D

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.