C++ Ayudita please :/

DavidPalmer

Bovino adolescente
#1
Hola como les va.

Necesito una manito please, se trata de un codigo que escribi para una reserva de pasajes de un programa que me pidieron en clases.

La reserva de pasajes todo ok, pero lo unico que me falta es
hacer que cuando se haya ocupado un asiento del autobus, este
se marque con otro caracter, ya sea un -- o un ** .

este es el codigo:

//creando la reserva de asientos del autobus
#include <conio.c>
#include <stdio.h>

int bus[10][4],i,j,l,sit,status[10][4];
char option;

main()
{
clrscr();
l=1;
for (i=0;i<=9;i++)
{
for(j=0;j<=3;j++)
{
bus[j]=l;
status[j]=l;
printf("%i ",bus[j]);
l=l+1;

}
printf("\n");
}
//comenzamos a asignar asientos

do
{
gotoxy(2,20);
printf("Ingrese asiento a vender :");
gotoxy(30,20);
scanf("%i",&sit);
if(sit>44){
do
{
gotoxy(2,15);
printf("Solo disponible hasta el asiento 44...");
getche();
printf(" ");
gotoxy(2,20);
printf("Ingrese asiento a vender : ");
gotoxy(30,20);
scanf("%i",&sit);
}

while(sit>44);
}

for (i=0;i<=3;i++)

for(j=0;j<=9;j++)
{
if(sit==bus[j] && sit == status[j])
{
gotoxy(2,15);printf("Asiento %i disponible",bus[j]);


getch();
gotoxy(2,15);printf(" ");
status[j]=0;
}
else
if(sit==bus[j] && status[j]==0)
{
gotoxy(2,22);printf("Asiento ocupado");
getch();
gotoxy(2,22);printf(" ");
}

}


gotoxy(2,15);printf("Desea solicitar otro asiento? s/n:");scanf("%s",&option);
gotoxy(2,15);printf(" ");
}
while(option=='s' || option=='S');

getch();
return(0);
}

}


Desde ya, gracias por sus comentarios.
 

trancosx

Bovino maduro
#2
men primero aqui no se hace la tarea :) y segundo tas bien jodido hay que meterle poquito

solo hay que hecharle imaginacion si sabes matrices estaria mejor pero con ciclos pues te jodes mas pero da igual


//aqui comienza
if(sit>44){
do // esto esta mal lo que estas diciendo es si, es mayor di que no se puede, y se tendria que regresar y lo que estas haciendo es k diga que nose puede y guardara el numero//
{
gotoxy(2,15);
printf("Solo disponible hasta el asiento 44...");
getche();
printf(" ");
gotoxy(2,20);
printf("Ingrese asiento a vender : ");
gotoxy(30,20);
scanf("%i",&sit);
}

solo en este caso lo acomodaria asi


do
{
gotoxy(2,20);
printf("Ingrese asiento a vender :");
gotoxy(30,20);
scanf("%i",&sit);
if(sit>44)
{ //recuerda que el if dice si es has esto y si no sigue compa//
gotoxy(2,15);
printf("Solo disponible hasta el asiento 44...");
clrscr();
}
if(sit<44)
{
gotoxy(2,20);
printf("Ingrese asiento a vender : ");
gotoxy(30,20);
scanf("%i",&sit);
}
........

y hasta ahi nomas para que te des una idea en el corralñ no se hace tarea, solo coloca adornos para que se ve mejor y sea funcional
 

joch_pa

Bovino adolescente
#3
Bueno ya te dieron un tip basico (no tareas), y para ayudarte un poco seria

El array es el autobus no???
bueno al llegar el bus este llega vacio por lo tanto debes inicializar tu array algo como bus={0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0}...etc.
la idea que te dio trancosx esta bien y es lo mas optimo para verifcar si el asiento es correcto....
Despues recuerda como va la numeracion de los asientos :
1234
5678
......
eso servira para saber como recorrer el array en busca del asiento
cuando lo encuentes verifica el contenido de la posicion si es un cero en este caso esta disponible si es otro valor esta ocupado
verificas que lo compre y ahora si lo marcas como bus[j]=1;

Es un pequeño algoritmo que te ayudara, claro evito detalles, pero esa era tu chamba... ahora ya sabes como puedes hacerlo (espero)
 

DavidPalmer

Bovino adolescente
#4
Si, va reservando los asientos, ya se me ocurrio como hacerlo,
asi que gracias de todos modos, encontré la respuesta durmiendo (soñando, jojojo)
 

betto gnr

Bovino maduro
#5
Puedo apoyarte amigo...
alberto16_04@hotmail.com
dime ke eres de la comunidad bakuna y cual es tu caso especifico y kon mucho gusto te apoyaré, puedes preguntar con algunos vacunos, ya los he apoyado.

En cuanto a C, cuenten conmigo!!!
Saludos!
 
Arriba