ACHAR O MAIOR VALOR DE UM INDEX

USUARIO.EXCLUIDOS 15/12/2006 18:51:10
#190288
Galera é o seguinte, tenho uma Variável(x) com mais de 100 números
gostaria que o sistema retornasse o valor de X com a variável de valor mais alto.

Será que existe algum método específico?
Vlw
USUARIO.EXCLUIDOS 15/12/2006 20:28:57
#190308
faz um for com uma condição que resolve tudo...
USUARIO.EXCLUIDOS 16/12/2006 02:38:41
#190342
foi o que tentei
fiz da seguinte maneira


dim A(100) as string
for x = 0 to 99
for z = 0 to 99
if a(z)>a(x) then goto nao
msgbox a
goto fim
next z
nao:
next x
fim:


Funciona, mas com strings com muitas variaveis o processo fica meio lento, gostaria de uma maneira de deixar tudo em ordem crescente.. comoem um listobox(ate pensei em usar um)

vlw
HARRY.POTTER 16/12/2006 03:17:55
#190343
Resposta escolhida
2 FORs? Não precisa de tudo isso não! Faz assim:

Dim Valor as Integer 'retorna o maior valor
Dim Posicao as Integer 'retorna a posição do maior valor
Dim Numeros(X) as Integer 'são os números a serem analizados. Altere o X para o valor correto

posicao = -1 'pra indicar que não foi inicializada ainda
For i = lbound(Numeros) to ubound(Numeros)
if posicao = -1 then
posicao = i
valor = numeros(i)
else
if valor < numeros(i) then
posicao = i
valor = numeros(i)
end if
end if
Next

Msgbox "O maior numero é " & valor & " na variavel de posicao " & posicao

USUARIO.EXCLUIDOS 16/12/2006 08:27:23
#190347
Cara o maior valor? Sem complicação, é só usar a função UBound:

MsgBox UBound(Variavel)


Só pra constar, se quiser pegar o menor valor é só usar o LBound, é fato que em 99,9% dos casos o menor valor é zero, mas vc pode declarar por exemplo Dim variavel(2 To 20), nesse caso o LBound(Variavel) retornaria 2 e o UBound(Variavel) retornaria 20, sendo assim vc pode pegar tb o nr de valores do array:

TotalValores = UBound(Variavel) - LBound(Variavel)


E ainda, se quiser um loop pra ler todos os itens, é só unir as duas funções num loop for:
Dim i As Integer

For i = LBound(Variavel) To UBound(Variavel)
Msgbox "O valor de posição " & i & " é igual à : " & Variavel(i)
Next i


é isso, qualquer dúvida poste...flw
USUARIO.EXCLUIDOS 16/12/2006 15:00:23
#190389
Vlw Harry Potter, era exatamente isso.. brigadão

Matioli, eu agradeço, mas o que eu queria era a relção dos valores da variaveis e nao dos numeros delas.. ams agradeço

flw
Tópico encerrado , respostas não são mais permitidas