MAIOR DE CINCO

JABA 03/04/2013 13:45:36
#421458
Tente assim então:

Public Function GetMaiorNumero(numeros() As Integer) As Integer
Dim x, y, resultado As Integer
resultado = numeros(0)
For x = 0 To UBound(numeros)
For y = x + 1 To UBound(numeros)
If numeros(y) > resultado Then
resultado = numeros(y)
End If
Next
Next
Return resultado
End Function
FILMAN 04/04/2013 02:26:01
#421490
Utilzando os valores citados acima
Alguns debugs:
N1 = 12
N2 = 48
N3 = 15
N4 = 7
N5 = 97
NMAIOR = 97
NMENOR = 7

N1 = 6
N2 = 44
N3 = 1
N4 = 87
N5 = 53
NMAIOR = 87
NMENOR = 1

No TextBox digite os valores acima da seguinte forma e clique no botão para executar
12;48;15;7;97
6;44;1;87;53


Segue anexo
ERINALDO 04/04/2013 08:33:04
#421495
Resposta escolhida
Option Explicit
Dim aArray() As Variant
Private Function fuOrdenar() As String
Dim i As Integer, j As Integer
Dim aArrayTemp As Variant
Dim sTemp As String

For i = LBound(aArray) To UBound(aArray)
For j = LBound(aArray) To UBound(aArray)
If CInt(aArray(i)) < CInt(aArray(j)) Then
sTemp = aArray(i)
aArray(i) = aArray(j)
aArray(j) = sTemp
End If
Next j
Next i

sTemp = [Ô][Ô]
For Each aArrayTemp In aArray
sTemp = sTemp & aArrayTemp & [Ô],[Ô]
Next aArrayTemp
fuOrdenar = Left(sTemp, Len(sTemp) - 1)
End Function
Private Sub Command1_Click()
Dim sArray() As String
aArray = Array(10, 5, 15, 25, 45, 1)
sArray = Split(fuOrdenar, [Ô],[Ô])

MsgBox [Ô]Menor valor [Ô] & sArray(LBound(sArray))
MsgBox [Ô]Maior valor [Ô] & sArray(UBound(sArray))
End Sub


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


ou assim


Dependendo de como está o seu programa isso pode funcionar.

Num módulo declare assim:

Global lMaior as Long, lMenor as Long
Global Flag_MaiorMenor as Boolean

Public Sub S_MaiorMenor(ByVal variavel as Long)
IF Flag_MaiorMenor Then
IF variavel > lMaior Then
lMaior = variavel
ENDIF
IF variavel < lMenor Then
lMenor = variavel
ENDIF
ELSE
Flag_MaiorMenor = true
lMaior = variavel
lMenor = variavel
ENDIF
End Sub

No decorrer do seu programa:
A = 10
Call S_MaiorMenor(A)
B = 5
Call S_MaiorMenor(B)

é só chamar a variável lMenor e lMaior para saber, naquele instante, quais são o menor e maior valor.


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

ou assim

Dim A(N) as integer [ô] N é a qtde de variaveis que vc vai usar no caso seria 6
dim menor as integer
dim maior as integer

public sub maiormenor()
menor=0
maior=0
for i= 1 to N [Ô]não eskeça de substituir o N!
if i= 1 then
menor=A (i)
maior=A(i)
else
if menor> A(i) then
menor= A(i)
else
endif
if maior < A(i) then
maior=A(i)
else
endif
next i
end sub


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


ou


Dim maior, menor As Integer

For ctd = 0 To 4

If valores(ctd) > numero Then
maior = valores(ctd)
lbmaior.Text = maior
End If
If valores(ctd) < numero Then
menor = valores(ctd)
lbmenor.Text = menor

End If



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



Testa Responde ai
ERINALDO 04/04/2013 09:07:03
#421498
Option Explicit
Dim aArray() As Variant
Private Function fuOrdenar() As String
Dim i As Integer, j As Integer
Dim aArrayTemp As Variant
Dim sTemp As String

For i = LBound(aArray) To UBound(aArray)
For j = LBound(aArray) To UBound(aArray)
If CInt(aArray(i)) < CInt(aArray(j)) Then
sTemp = aArray(i)
aArray(i) = aArray(j)
aArray(j) = sTemp
End If
Next j
Next i

sTemp = [Ô][Ô]
For Each aArrayTemp In aArray
sTemp = sTemp & aArrayTemp & [Ô],[Ô]
Next aArrayTemp
fuOrdenar = Left(sTemp, Len(sTemp) - 1)
End Function
Private Sub Command1_Click()
Dim sArray() As String
aArray = Array(N1, N2, N3, N4, N5,)
sArray = Split(fuOrdenar, [Ô],[Ô])

MsgBox [Ô]Menor valor [Ô] & sArray(LBound(sArray))
MsgBox [Ô]Maior valor [Ô] & sArray(UBound(sArray))
End Sub
Página 2 de 2 [14 registro(s)]
Tópico encerrado , respostas não são mais permitidas