Advertisement
Guest User

Untitled

a guest
May 20th, 2018
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.56 KB | None | 0 0
  1. // 0 = Esta Libre
  2. // 1 = Esta ocupado
  3.  
  4. Funcion IndexLugar<-LugarVacio(Array,cFila,cAsiento)
  5.  
  6. //Para IndiceFila<-0 Hasta cFila-1 Con Paso 1 Hacer
  7. // ¿Esto funcionara aca?
  8. // En caso de funcionar, Esto retorna si el esta indice libre
  9. Definir IndexLugar Como real
  10.  
  11. Si Array(cFila,cAsiento)=0 entonces
  12. IndexLugar=0
  13. SiNo
  14. IndexLugar=1
  15. fin si
  16.  
  17. //Fin Para
  18.  
  19. Fin Funcion
  20.  
  21. Funcion ListarColectivo(Array,cFila,cAsiento)
  22. Definir Fila como Entero
  23. Definir Asiento como Entero
  24. Definir Estado Como Caracter
  25.  
  26. Para Fila<-0 Hasta cFila-1 Con Paso 1 Hacer
  27. Para Asiento<-0 Hasta cAsiento-1 Con Paso 1 Hacer
  28.  
  29. Si LugarVacio(Array,Fila,Asiento)=0 Entonces
  30. Estado="Libre"
  31. SiNo
  32. Estado="Ocupado"
  33. FinSi
  34.  
  35. // Sumo +1 a ambas variable para que empiece desde 1 la fila, queda mas bonito que de fila 0 xd
  36. Escribir "~ Fila : ", (Fila+1) , " ~ Asiento: " , (Asiento+1) , " ~ Estado: " , Estado
  37.  
  38. Fin Para
  39. Fin Para
  40.  
  41. Fin Funcion
  42.  
  43. Funcion LimpiarPasajeros(Array,cFila,cAsiento)
  44. Definir Fila como Entero
  45. Definir Asiento como Entero
  46. Definir Estado Como Caracter
  47.  
  48. Para Fila<-0 Hasta cFila-1 Con Paso 1 Hacer
  49. Para Asiento<-0 Hasta cAsiento-1 Con Paso 1 Hacer
  50. Array(Fila,Asiento)=0
  51. Fin Para
  52. Fin Para
  53.  
  54. fin funcion
  55.  
  56. Algoritmo Colectivo
  57.  
  58. // Limite de Asientos y Filas.
  59. Definir c_Fila como entero
  60. Definir c_Asiento como entero
  61. c_Fila=20
  62. c_Asiento=3
  63.  
  64. // Matriz del colectivo
  65. Definir c_Pasajeros Como Entero
  66. Dimension c_Pasajeros[c_Fila,c_Asiento]
  67.  
  68. // Sin esta porqueria No funciona el programa asi que meh
  69. LimpiarPasajeros(c_Pasajeros,c_Fila,c_Asiento)
  70.  
  71. // Variable Para Leer las acciones en bucle
  72. // Como Real Por si algun gracioso
  73. // quiere poner un 0 y romper el programa
  74. Definir ColectivoAccion como Real
  75.  
  76. // Usamos estas 2 variables para tomar el asiento y fila
  77. Definir u_Fila como Real
  78. Definir u_Asiento como Real
  79.  
  80. // Bucle infinito wii y su Variable de ejecuccion
  81. Definir ColectivoActivo como Logico
  82. ColectivoActivo=Verdadero
  83.  
  84. Mientras ColectivoActivo Hacer
  85. // Le damos valor a la variable
  86. Escribir "Ejecutar Accion."
  87. Leer ColectivoAccion
  88.  
  89. Segun ColectivoAccion Hacer
  90.  
  91. 1: // Listamos en pantalla segun asiento y fila
  92. ListarColectivo(c_Pasajeros,c_Fila,c_Asiento)
  93.  
  94. 2:
  95. Escribir "Ingrese la Fila que le gustaria ocupar."
  96. leer u_Fila
  97. // Se preguntan porque hago el -1 aca ? Bueno esto es una mierda de lenguaje y punto.
  98. u_Fila = u_Fila-1
  99.  
  100. Mientras u_Fila <0 Hacer
  101. Escribir "Ingresar una Fila Valida."
  102. leer u_Fila
  103. Fin Mientras
  104.  
  105. Escribir "Ingrese el asiento que le gustaria ocupar."
  106. leer u_Asiento
  107. // Aca lo mismo que arriba.
  108. u_Asiento=u_Asiento-1
  109.  
  110. Mientras u_Asiento <0 Hacer
  111. Escribir "Ingresar un Asiento valido."
  112. leer u_Asiento
  113. Fin Mientras
  114.  
  115. Si LugarVacio(c_Pasajeros,u_Fila,u_Asiento)=0 Entonces
  116. Escribir u_Fila,u_Asiento
  117. // Como Esta Libre el lugar, Ocupamos el que ponemos.
  118. c_Pasajeros(u_Fila,u_Asiento)=1
  119. SiNo
  120. Escribir "Lugar Ocupado, Seleccionar otro"
  121. FinSi
  122.  
  123. 3:
  124. ColectivoActivo=Falso
  125.  
  126. 7:
  127. Escribir "Accion 1; Imprime en pantalla la lista de asientos y si estan o no ocupados."
  128. Escribir "Accion 2; El usuario Ingresa Asiento y lugar en caso de estar libre, lo ocupa, si no muestra un mensaje."
  129. Escribir "Accion 3; Cierra el programa"
  130.  
  131. De Otro Modo:
  132. Escribir "Presionar 7 para obtener ayuda."
  133.  
  134. Fin Segun
  135.  
  136. Fin Mientras
  137.  
  138. FinAlgoritmo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement