Título: Reserva de asientos en un cine Publicado por: sora_ori en 22 Enero 2014, 22:05 pm Hola compañeros,
Estoy haciendo un programa en C que me haga con una matriz los asientos de un cine, y me ha surgido un problema tonto. Cuando asigno un asiento reservado y muestro por pantalla me aparece así: (http://i43.tinypic.com/28vq7o4.png) Yo escogí reservar fila 3 y columa 3 y me reserva los anteriores, es decir, donde he marcado en rojo debería estar en "0". Código
Gracias! Título: Re: Reserva de asientos en un cine Publicado por: engel lex en 22 Enero 2014, 22:12 pm Decidiste reservas fila 3 Y columna 3 o decifiste reservar el asiento que cumpla ambas condiciones?
Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 22 Enero 2014, 22:13 pm Solamente el asiento, como se ve en la imagen, el color verde es el correcto, el color rojo es lo que sobra.
Saludos Título: Re: Reserva de asientos en un cine Publicado por: ivancea96 en 22 Enero 2014, 22:28 pm Tal como está, yo quitaría los 2 for, y lo dejaría:
Código
Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 22 Enero 2014, 22:47 pm @ivancea96
De esa forma no me funciona. Si no recorro la matriz no se puede hacer nada. Título: Re: Reserva de asientos en un cine Publicado por: dato000 en 22 Enero 2014, 23:19 pm Puede ser que el scanf este guardando en el buffer de memoria el salto de linea lo que provoca esos errores.
Intenta con: Código
Título: Re: Reserva de asientos en un cine Publicado por: rir3760 en 23 Enero 2014, 03:10 am Estoy haciendo un programa en C que me haga con una matriz los asientos de un cine, y me ha surgido un problema tonto. Cuando asigno un asiento reservado y muestro por pantalla me aparece así: El problema se debe a que por alguna extraña razón estas utilizando un bucle:(http://i43.tinypic.com/28vq7o4.png) Código
Basta con eliminar el bucle, quedando así: Código
Un saludo Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 23 Enero 2014, 13:23 pm Gracias "dato000" y "rir3760" por la ayuda, hice las sugerencias de ambos y me sigue printando igual (en el caso de "dato000") y en el caso de "rir3760" me lo deja todo en 0.
Saludos Título: Re: Reserva de asientos en un cine Publicado por: ivancea96 en 23 Enero 2014, 14:56 pm Código
Si con eso que hemos dicho, sin los bucles, no te va, es que ha de haber algo mal en el código. Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 23 Enero 2014, 15:33 pm Posteo todo el code haber si así me podeis ayudar a encontrar el error.
Gracias! Código
Título: Re: Reserva de asientos en un cine Publicado por: ivancea96 en 23 Enero 2014, 15:44 pm En primer lugar:
Código
No inicializas la variable opcion. Inicializala a un número diferente de 0, o usa do-while. Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 23 Enero 2014, 15:46 pm int opcion
Si que la he inicializado, pero el error que tengo en lo de antes no viene de ahí ¿verdad? Saludos Título: Re: Reserva de asientos en un cine Publicado por: dato000 en 23 Enero 2014, 17:34 pm int opcion Si que la he inicializado, pero el error que tengo en lo de antes no viene de ahí ¿verdad? Saludos Pues habian varios, pero el relacionado con el tema era que usabas un ciclo en el que recorria todos los valores de la sala desde i=0 y j=0 hasta la columna y fila deseada, por lo que mientras recorria todo el arreglo rellenando los valores, ahora, eso seria a modo general pero tu usaste la siguiente sentencia en el ciclo for: Código
No necesitas usar un ciclo, si solo una sentencia de validación if para comprobar si es un asiento ocupado o no, eso es todo, ya tienes la columna y la fila que necesitas, el usuario la da, solo es comprobar si ya esta ocupada. En fin, hay varias cosas, dejo el código, suerte con eso, sigue con el empeño. Código
Título: Re: Reserva de asientos en un cine Publicado por: sora_ori en 23 Enero 2014, 17:38 pm Muchas gracias!
Ahora funciona perfecto, seguiré mejorandolo :P Saludos |