Bueno esto es un programa que quiero que haga estas 2 cosas:
1.) Tienes un array con un número cualquiera de elementos, averigua cual de las variables de ese array es la que tiene el valor mayor.
2.) La que tiene el valor menor y que no sea cero.
entonces para el primer ejercicio tengo este código:
'Poner este código en el Form_Load
Dim Hora(24) As Integer
Dim i As Integer, Mayor As Integer
'Llenar el array con números...
'(en esta entrega veremos cómo hacerlo de forma aleatoria)
'...
'Comprobar cual es el mayor
For i = 1 To 24
If Hora(i) > Mayor Then
Mayor = Hora(i)
End If
Next
Print "El número mayor es:"; Mayor
Y ahora para el segundo ejercicio tengo este código:
'Los mismos comentarios iniciales que el primero
Dim Hora(24) As Integer
Dim i As Integer, Menor As Integer
'
For i = 1 To 24
If Hora(i) Then 'Sólo si no vale cero
If Menor = 0 Then 'Si aún no tiene un valor
Menor = Hora(i) 'se lo asignamos
Else
If Hora(i) < Menor Then 'Si el contenido de Hora(i) es menor
Menor = Hora(i) 'lo asignamos como menor
End If
End If
End If
Next
Print "El número menor es "; Menor
Bueno esto lo mire de una pagina por que estoy dando esto de los arrays y eso y quise practicar pero cuando lo probé en mi vb6 y le di al commandButton
me imprimió en el primer ejercicio que el número mayor es: 0
y cuando probé el código del segundo ejercicio mi imprimió:
que el numero menor es: 0
Cosa que no lo entiendo en todo caso el numero mayor sería el 24
y el numero menor el 0 ¿no?
Si me puedes explicar las lineas se lo agradecería para entenderlo mejor es que me cuesta
Gracias >:D
Es algo insolito lo que estas haciendo lo que pasa, mira.. veo que andas perdido, te recomendaria que busques un buen tutorial de esos grandes, que habra en esta sección y te pongas a estudiar asi como hacen todos ya que parece que tu metodo de aprendizaje no te esta sirviendo.
No lo tomes a mal, solo te digo para que no pierdas el tiempo y aprendas como se debe.
Es que raul me aconsejo elguille y por lo que veo es que es bueno pero los ejercicios que manda o no esta bien explicados o manda cosas demasiado dificil o no lo explica muy bien
si alguien me dice un buen manual se lo agradecería pero que se de las APIS y todo eso si puede ser uno bueno
HOLA!!!
Te Recuerdo que no somos una escuelita, por favor hace un buen tutorial (a mi parecer elGuille es muy bueno y no es nada dificil ni mal explicado).
Aca tenes una solucion basica:
Dim Matriz(100) As Long
Private Sub Form_Load()
Dim Min As Long
Dim Max As Long
Call LlenarArrayAleatoriamente(1000) 'Lleno la matriz
For x = 0 To UBound(Matriz) 'Busco el mayor
If Matriz(x) > Max Then Max = Matriz(x)
Next
Min = Max 'Inicializo Min = Max
For x = 0 To UBound(Matriz) 'Busco el minimo
If Matriz(x) < Min Then If Matriz(x) <> 0 Then Min = Matriz(x)
Next
MsgBox "Minimo: " & Min & " Maximo: " & Max, , "Ejemplo para SixToes por 79137913" 'Muestro el resultado
End 'cierro
End Sub
Private Sub LlenarArrayAleatoriamente(MaxInt As Long)
On Error GoTo Err:
For x = 0 To UBound(Matriz)
Randomize Timer 'Hago que sea aleatorio
Matriz(x) = Int(Rnd() * MaxInt) 'Lleno la matriz
Next
Err:
End Sub
GRACIAS POR LEER!!!
@7913
Randomize Timer 'Hago que sea aleatorio
metelo dentro del for...
Dulces Lunas!¡.
ese codigo que pusistes es por que .El que yo puse estaba mal?
es que solo pedi el por que el numero mayor es 0 y el menor tambien 0 yo me creía que el numero mayor DE MI CODIGO es el 24 y el menor el 0 evidentemente
Saludos
HOLA!!!
Gracias Black, Buena idea, modificado.
Si, Sixtoes tu codigo estaba mal y era muy rebuscado.
GRACIAS POR LEER!!!
Esque cuando vos creaste el array, el tamaño del array es de 24, pero estan vacios, si nunca pusiste ningun dato en ninguno :/ por eso daba 0 siempre
Ans ok es que me extrañaba gracias por la ayuda :P
Y el tuto de guille si que es bueno, pero leelo tranquilo, dejando pasar unos dias mientras practicas lo aprendido, etc, porque sino no aprendemos nada
Una pregunta... yo solo quiero mostrar del 1 al 24 osea el 1 y debajo del 1 el 2 y así...
por que me da error cuando hago esto:
Dim hora(24) as integer
for hora = 1 to 24
print hora
Y me salta un error.. ¿Por que?
luego probe con esto
Dim hora (1 to 24) as integer
for hora = 1 to 24
print hora
y tambien me salta error
Bueno eso era todo...
Saludos
HOLA!!!
Te insisto LEE UN MANUAL DE VISUAL BASIC.
VAGO
'Mostrar del 1 al 24
For x=1 to 24
Print x
Next
GRACIAS POR LEER!!!
Citar
'Mostrar del 1 al 24
For x=1 to 24
Print x
Next
lo he modificado un poco para practicar, pero tengo una duda
Option Explicit
Private Sub Command1_Click()
Dim num As Integer
Dim num2 As Integer
num2 = 5
For num = 1 To 10
Print num
If num = num2 Then Exit Sub
Next
End Sub
Los "IF" no siempre deben acabar con un "End if"? Es que si pongo "End if" mme da error "End if sin bloque"
:xD
79137913
estoy con elguille
los Arrays no funciona en el bucle for?
Pitoloko: el end if se pone solo y unicamente cuando no esta en bloque por ejemplo
if pitoloko = 10 then
pitoloko = 20
end if
aquí si tienes que poner el end if por que es un bloque pero en cambio si
lo pones así no...
If pitoloko = 10 then: pitoloko = 20
Saludos
Edito: ya lo solucione gracias..