diegoborgir Posted June 1, 2015 Report Share Posted June 1, 2015 Buenas: Necesito si alguien informático me ayude a solucionar un algoritmo que nos mando un profe, es en pseudocodigo ( no se si este tema este bien creado en esta sección). El asunto es que debo crear un algoritmo que pueda reservar asientos de un cine, los creamos con el programa "pseint". tengo gran parte del algoritmo creado pero, no puedo hacer que el programa me pida un asiento y este quede reservado, si no que me pide que elija una fila y una columna y ahi lo reserva. les dejo el bosquejo que tengo hasta el momento Proceso Cine_Detroit_S_A dimension cine[10,5] A=""cine[1,1]="1"cine[1,2]="2"cine[1,3]="3"cine[1,4]="4"cine[1,5]="5"cine[2,1]="6"cine[2,2]="7"cine[2,3]="8"cine[2,4]="9"cine[2,5]="10"cine[3,1]="11"cine[3,2]="12"cine[3,3]="13"cine[3,4]="14"cine[3,5]="15"cine[4,1]="16"cine[4,2]="17"cine[4,3]="18"cine[4,4]="19"cine[4,5]="20"cine[5,1]="21"cine[5,2]="22"cine[5,3]="23"cine[5,4]="24"cine[5,5]="25"cine[6,1]="26"cine[6,2]="27"cine[6,3]="28"cine[6,4]="29"cine[6,5]="30"cine[7,1]="31"cine[7,2]="32"cine[7,3]="33"cine[7,4]="34"cine[7,5]="35"cine[8,1]="36"cine[8,2]="37"cine[8,3]="38"cine[8,4]="39"cine[8,5]="40"cine[9,1]="41"cine[9,2]="42"cine[9,3]="43"cine[9,4]="44"cine[9,5]="45"cine[10,1]="46"cine[10,2]="47"cine[10,3]="48"cine[10,4]="49"cine[10,5]="50" Mientras Con=s Hacer Escribir "= Sistema de reserva de butacas =" Escribir " " Para F<-1 Hasta 10 Con Paso 1 Hacer Para C<-1 Hasta 5 Con Paso 1 Hacer A=A+"-"+cine[f,c] Fin Para Escribir A A="" Fin Para Escribir " " Escribir "Indique fila" Leer Fila F=Fila Escribir " " Escribir "Indique columna" Leer Columna C=Columna Si cine[f,c]="X" Entonces Escribir "El asiento se encuentra reservado" Sino Escribir "Si desea reservar presione 1" Leer R Si R=1 Entonces Escribir "Asiento reservado" cine[f,c]="X" Sino Escribir "Accion cancelada por el usuario" Fin Si Fin Si Escribir "Desea consultar nuevamente la tabla? (s)" Leer Cond Limpiar Pantalla Fin Mientras FinProceso Link to comment Share on other sites More sharing options...
cañangasñangas Posted June 2, 2015 Report Share Posted June 2, 2015 (edited) Me da paja pseint te dejo un pseudocódigo a mi pinta. Lo hice a la rápida espero que funcione y/o se entienda la idea Cargamos la sala filas = 10; //tu elijes columnas = 25; //tu elijes, este último son la cantidad de asientos de c/fila sala[filas][columnas]; para(i=0; i<filas; i=i+1){ para(k=0; k<columnas; k=k+1){ sala[i][k] = 0; } }Ahora hacemos las reservas continuar = 1; mientras(continuar == 1){ Escribir: Opciones Reservar(1) - Salir(2); opcion = LeerTeclado; if(opcion == 1){ Esciribr: Elija fila; fil = LeerTeclado; Escribir: Elija asiento; col = LeerTeclado; si(fil<=0 o fil>filas o col<=0 o col>columnas){ Escribir: Este asiento no existe; } sino{ fil = fil-1; col = col-1; si(sala[fil][col] == 1){ Escribir: Este asiento está ocupado; } sino{ sala[fil][col] = 1; Escribir: Asiento asignado; } } } sino si(opcion == 2){ continuar = 0; Escribir: Ha salido del programa; } sino{ Escribir: Esta opción no existe; } }La idea es que al principio todos los asientos tienen como estado el numero 0, a medida que vas asignado asientos el estado del asiento cambia a 1. con esto logras saber si esta ocupado o no. imagina que los "{" significa abrir el bloque y los "}" cerrar el bloque (FinAlgo) Espero te sirva.. Mira lo hice en Pseint pero como no lo tengo instalado no lo probe pero espero que se entienda: Proceso Cine filas <- 10 columnas <- 25 sala[filas, columnas] Para i<-0 Hasta filas-1 Paso 1 Hacer Para k<-0 Hasta columnas-1 Paso 1 Hacer sala[i,k] = 0 FinPara FinPara continuar <- 1 Mientras continuar = 1 Hacer Escribir "Opciones: Asignar asiento(1) - Salir(2)" Leer opcion quehacer <- 0 Segun opcion Hacer 1: quehacer <- 1 2: quehacer <- 2 De Otro Modo: quehacer <- 3 FinSegun Si quehacer = 1 Entonces Escribir "Ingrese fila" Leer fil Escribir "Ingrese asiento" Leer col Si fil <= 0 | fil > filas | col <= 0 | col > columnas Entonces Escribir "El asiento no existe" Sino fil <- fil-1 col <- col-1 Si sala[fil, col] = 1 Entonces Escribir "El asiento está ocupado" Sino sala[fil,col] <- 1 Escribir "Asiento asignado" FinSi FinSi FinSi Si quehacer = 2 Entonces continuar <- 0 Escribir "Ha salido del programa" FinSi Si quehacer = 3 Entonces Escribir "Esta opción no existe" FinSi FinMientras FinProceso Edited June 2, 2015 by cañangasñangas Link to comment Share on other sites More sharing options...
diegoborgir Posted June 2, 2015 Author Report Share Posted June 2, 2015 si amigo muchas gracias saque bastantes ideas de ahí, eres capo¡¡¡¡¡¡¡¡¡¡¡ :salto: Link to comment Share on other sites More sharing options...
cañangasñangas Posted June 3, 2015 Report Share Posted June 3, 2015 (edited) Para eso estamos, quiero agregar que yo nunca hago la pega completamente pero como estas en pseint eso indica que estás partiendo con programación, vi tu código y lo encontré un poco perdido.Lo importante es que hayas entendido la idea del código.Quiero agregar una cosa más no escribas las cosas en línea, es decir no esribas asi Proceso Cine Si a=1 EntoncesSi b=2 EntoncesEscribir "Algo"FinSiFinSi FinProceso Ocupa tabulaciones para organizar bien tu código y saber en donde estas: Proceso Cine Si a=1 Entonces Si b=2 Entonces Escribir "Algo" FinSi FinSi FinProcesoDe ese modo está más organizado Edited June 3, 2015 by cañangasñangas Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now