O loop while estrutura
Pergunta
No loop do while estrutura normalmente há uma parte onde você declarar uma variável igual a um número (no caso eu) e, em seguida, em uma segunda parte que você faça um incremento de (i+1)
.Eu fiz este exemplo em vba, mas a estrutura pode ser repetido em diversas linguagens de programação como o for
em php quando você está recebendo dados de um banco de dados.Agora, o que eu gostaria de entender melhor a relação entre as referidas declarações, que é i = some number
e i = i + 1
.Não seria isso gerar um problema de interpretação, uma vez que você está declarando uma variável para algo e, em seguida, atribuir um valor diferente para a direita depois?É a segunda declaração do valor da variável, i = i + 1
, uma nova variável chamada anterior de um ou ambos os eu são o mesmo?Esta é uma orientação geral que eu pretendo com esta questão.Eu acho explicando a colher de ambas as variáveis gostaria de ajuda para entender.Obrigado!
Sub DoWhile()
Dim x, i, sum
x = 10
i = 1
sum = 0
Do While i < x
sum = sum + i
i = i + 1
Loop
MsgBox “Sum = ” & sum
End Sub
Solução
Desde que você tenha criado a variável i
como uma variável global, qualquer referência ou modificação i
no sub vai ser na mesma variável.O que está sendo dito:
Dim i as int
i = 1
Do while i < 11
MsgBox("The value of i is: " & i)
i = i + 1
Loop
gostaria de apresentar 10 messageboxes mostrando o valor de i entre 1 e 10.
Quando o programa encontra i = i + 1
, o computador " vê " este como o valor de i, é, e armazenar o resultado na variável i.
Espero que ajude.
Outras dicas
Uma variável é realmente apenas um local na memória.Essa localização pode ter qualquer valor.Por definição i=i+1, você está realmente dizendo: "toma o valor na posição i, suplemento 1, e armazená-lo na posição que eu".Nenhuma nova variável é criada.Não há nenhum problema com o computador interpretação - o que lhe importa é a localização do eu, o que não é mudando.Ele ainda sabe onde encontrar eu, independentemente de quantas vezes você mudar o valor.