Autor
|
Tema: Simulacion de semaforo (AYUDA) (Leído 7,587 veces)
|
reeyesg
Desconectado
Mensajes: 25
|
Bnas nochees.. bnos les escriiibo porq me mandaron a hacer un proyecto de simulacion.. se hacer muy pocas cosas para lo q me piden y quisiera q me diern unas ideas para yo hacer este proyecto no les pido q me lo haga solo q me faciliten conocimientos y ayudas como qpuedo utilizar para armarlo aqui les dejo los requisitos.. ya se mas o menos la logica q debe llevar para lo del cambio de las luces pero lo otro es lo q me jode un poco
Se plantea la necesidad de Desarrollar una aplicación en Visual Basic, que permita mostrar una simulación del proceso realizado en un semáforo. Como entrada de datos, se debe solicitar al usuario el tiempo de duración de la simulación.
Para el proceso de simulación se debe tomar en cuenta: · Deben existir al menos 3 vías controladas por el semáforo en la simulación. · El semáforo debe tener 4 luces: rojo, verde, amarillo y flecha (para cruzar), las cuales cambiaran cada cierto tiempo (el intervalo queda a criterio del programador) · La asignación de la vía que tomara cada vehículo, cuando el semáforo este en verde, debe ser seleccionada aleatoriamente. · Se debe mostrar en pantalla el tiempo de ejecución de la aplicación, y un contador de la cantidad de vehículos que han pasado el semáforo. · Deberá existir un botón que permita detener la simulación antes del tiempo establecido. Al finalizar la simulación, se debe mostrar una caja de mensajes, con las estadísticas finales del proceso: cantidad total de vehículos que transitaron y duración total de la simulación.
|
|
« Última modificación: 11 Noviembre 2014, 21:19 pm por reeyesg »
|
En línea
|
|
|
|
reeyesg
Desconectado
Mensajes: 25
|
Dim a As Integer Dim tiempo As Integer Private Sub Command1_Click() a = 0 Timer1.Enabled = True Timer1.Interval = 1000 tiempo = InputBox("Escriba el tiempo de Simulacion del Semaforo", "Simulacion de Semaforo") Label1.Caption = tiempo End Sub Private Sub Timer1_Timer() a = a + 1 If a = 1 Then Image1.Visible = True 'Luz Roja Image2.Visible = False 'Luz Amarilla Image3.Visible = False 'Luz Verde Image4.Visible = False 'Luz Roja Image5.Visible = True 'Luz Amarilla Image6.Visible = False 'Luz Verde End If If a = 7 Then Image1.Visible = False Image2.Visible = True Image3.Visible = False Image4.Visible = False Image5.Visible = False Image6.Visible = True End If If a = 12 Then Image1.Visible = False Image2.Visible = False Image3.Visible = True Image4.Visible = True Image5.Visible = False Image6.Visible = False End If If a = 14 Then a = 0 End If Label1.Caption = Label1.Caption - 1 If Label1.Caption < 1 Then Timer1.Enabled = False End If End Sub
Eso es lo poco que e hecho.. estan lo de insertar el tiempo de cuanto durara la simulacion.. el cambio de luces.. faltaria el de mover los carros aleatoriamente.. porq ta tngo este otro codigo q es el q hara q se muevan los carros pero no se como se hara aleatorio q vayan a la derecha izquierda o derecho if(image2.visible =true or image3.visible=true) then 'cuando muestre la luz amarilla y verde se mueve imageCarro.left=imagecarro.left+20 '20 es la velocidad q se movera el carro elseif image1.visible=true then ' cuando se pone la luz roja imagecarro.left=imagecarro.ledt+0 ' la velocidad es 0 porq se detiene end if
espero su ayuda
|
|
« Última modificación: 11 Noviembre 2014, 21:32 pm por reeyesg »
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Con Rnd() sacas un número aleatorio 0 <= X < 1. Puedes usarlo para aleatorizar la dirección que tomará el coche.
Te diría que tabules el código, y que le pongas nombres más intuitivos a las variables. Pero bueno, eso ya es cosa tuya.
Por cierto, en el enunciado pone que los semáforos tendrán 4 luces.
|
|
|
En línea
|
|
|
|
reeyesg
Desconectado
Mensajes: 25
|
Con Rnd() sacas un número aleatorio 0 <= X < 1. Puedes usarlo para aleatorizar la dirección que tomará el coche.
Te diría que tabules el código, y que le pongas nombres más intuitivos a las variables. Pero bueno, eso ya es cosa tuya.
Por cierto, en el enunciado pone que los semáforos tendrán 4 luces.
sii lo de las luces lo se,, pero si uno le pone el rnd().. es para q vayan a la derecha, izquierda o siga derecho.. y ahi se podria ir pa otros lados jajajaja,, pero bueno tratare de hacerlo asi como me dices aunq no se mucho.. espero q me ayuden mas
|
|
|
En línea
|
|
|
|
reeyesg
Desconectado
Mensajes: 25
|
Buenas vengo a revivir el post.. porq quisieraaa una ayuda ya q es lo unico q me falta bueno quisiera mover ese shape.. aleatoriamente hacia arriba a la derecha e izquierda.. y q terminado el recorrido vuelva a su lugar podrian ayudarme porfa.. ya se como moverlos pero mas no se como hacerlo aleatorio
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Lo de Rnd() no te sirvió?
Si tienes 3 posibilidades, multiplicas Rnd() por 3. Así, saldrá un número del 0 al 3 (3 excluído). -> 0,1,2 -> izquierda, centro, derecha
|
|
|
En línea
|
|
|
|
reeyesg
Desconectado
Mensajes: 25
|
La verdad no se q hacer ya.. solo hice q funcionara para q suba y cuando llegue vuelva a iniciar.. tambn hice el de q vaya a la izquierda y derecha pero no logro.. para q vuelva a su posicion inicial.. el carro se me desaparece.. Este me va bn para q vaya al centro If (Image2.Visible = True Or Image3.Visible = True) Then Shape1.Top = Shape1.Top - 1800 ElseIf Image1.Visible = True Then Shape1.Top = Shape1.Top - 0
Este es para cuando llegue cuente el carro y regrese a su posicion inicial: Private Sub Label1_Change() If Shape1.Top = -960 Then 'posicion de llegada del carro Label2.Caption = Label2 + 1 'Contador Shape1.Top = 6240 'Posicion inicial del carro End If
me va bn hasta ahiii.. pero cuando pongo los q cruzan.. el carro no me vuelve a la posicion inicial.. quisiera mas ayuda porfavor
|
|
|
En línea
|
|
|
|
agusdmb
Desconectado
Mensajes: 6
|
xq los q cruzan nunca llegan a ser true en el predicado "Shape1.Top = -960"..
yo tambien te recomendaria q aprendas buenas practicas de programacion.. identar bien el codigo, no usar las imagenes como condiciones (si es visible o no).. eso deberia ser secundario.. las imagenes deberian depender del estado de ciertas variables, y no el programa de las imagenes
ademas en vez de tener esos ifs tan largos podrias hacer metodos q llames para "prender" o "apagar" cada una de las luces
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
semaforo en puerto paralelo en vb
Electrónica
|
prosk8er
|
1
|
4,804
|
1 Abril 2005, 10:45 am
por BADBYTE-K
|
|
|
Necesito ayuda para hacer un juego de simulacion de hackeo...
Java
|
rober1985
|
2
|
3,263
|
23 Junio 2008, 22:54 pm
por rober1985
|
|
|
Semáforo con Arduino
Electrónica
|
@synthesize
|
2
|
10,887
|
18 Junio 2010, 19:40 pm
por Debci
|
|
|
Cambiar De Semaforo A Tuberias
Programación C/C++
|
candycrush
|
0
|
1,697
|
30 Agosto 2014, 02:02 am
por candycrush
|
|
|
AYUDA simulacion de un switch sin un break
Programación C/C++
|
mc275
|
4
|
2,980
|
22 Septiembre 2016, 16:40 pm
por dato000
|
|