Los foros del Guille

elGuille.hosting: La oferta avanzada:
.NET 2.0, SQL Server, 4000MB, 30GB transf. por 19.95 Eur al mes

Si no encuentras respuesta, puedes buscar en el sitio del Guille

Google
 
Selecciona el foro y pulsa en mostrar:     Mostrar 
De tu interés (algunos de los avisos publicados)

24/mar/2007
IMPORTANTE Por favor, cuando hagas una consulta, comprueba si te han respondido, y en caso de que la respuesta sea satisfactoria, indicalo pulsando en el botón de que esa respuesta es la correcta. Es lo menos que debes hacer, ya que así más gente sabrá que esa respuesta contestaba a tu duda.
Gracias.

  Foro: C / C++.General Cantidad:  Desde:   Hasta:    Aplicar   Responder 
Respuestas a: 55085 - como comparar distintos vectores
IDAsuntoFechaNick 
55085 como comparar distintos vectores28/04/11 15:27jorge22   
Escribir un programa para asignar los pasajeros de un avión, suponga que el avión es pequeño y tiene la siguiente numeración
1 A B C D
2 A B C D
3 A B C D
4 A B C D
5 A B C D
6 A B C D
7 A B C D
El programa deberá mostrar el patrón de asientos marcados con una “X” los asientos que ya se asignaron. Por ejemplo, después de ocuparse los asientos 1A, 2B Y 4C la pantalla deberá ser
1 X B C D
2 A X C D
3 A B C D
4 A B X D
5 A B C D
6 A B C D
7 A B C D
Después de mostrar los asientos disponibles, el programa pide al asiento deseado, el usuario teclea el asiento y luego se actualiza la presentación de asientos disponibles. Esto continua hasta que todos los asientos se ocupan o hasta que el usuario indica que el programa debe continuar. Si el usuario teclea un asiento que ya se asignó, el programa deberá decir que el asiento está ocupado y pedir otra selección.

mi posible respuesta es la siguiente;
LO UNICO QUE ME HACE FALTA ES MANDAR UN MENSAJE EN CASO DE QUE YA SE ENCUENTRE REPETIDO EL ASIENTO
#include "stdafx.h"
#include
#include
using std::cout;
using std::printf;
using std::scanf;
using std::cin;
char a[7][4]={{'A','B','C','D'},{'A','B','C','D'},{'A','B','C','D'},{'A','B','C','D'},{'A','B','C','D'},{'A','B','C','D'},{'A','B','C','D'}};
int num[7]={1,2,3,4,5,6,7}; int f,c, n,j=0,jj=0,resp; char let;
void ja(){
printf("*************** Prototipo de asientos del avion ***************\n\n\n");
for(f=0;f<7;f++){
cout<<"\t"< for(c=0;c<4;c++){
cout<<"\t"< }printf("\n");
}
}
void jorge(){
printf("\nindique en que lugar desea permanecer en el avion\ndigite primero el numero "); cin>>n;
if(n<1){ cout<<"ingrese solo del 1 al 7\n"; cout<<"\n digite nuevamente el numero ";cin>>n;}
if(n>7){ cout<<"ingrese solo del 1 al 7\n"; cout<<"\n digite nuevamente el numero ";cin>>n;}
cout<<"ahora digite la letra en que desea permanecer "; cin>>let;
if(let<'a'){ cout<<"ingrese solo de la letra a ala d\n"; cout<<"\n digite nuevamente la letra ";cin>>let;}
if(let>'d'){ cout<<"ingrese solo de la letra a ala d\n"; cout<<"\n digite nuevamente la letra ";cin>>let;}
}
void menu(){
cout<<"\n************ bienvenido que es lo que desea realizar ************\n\n";
cout<<"\t1 registro en el avion\n";
cout<<"\t2 salir\n\n";
}
int _tmain(int argc, _TCHAR* argv[])
{
ja();//los asientos
do{
menu();//contiene el menu principal
cin>>resp;
switch(resp){
case 1:
jorge();//se le pide al usuario que ingrese su lugar
for(c=0;c<7;c++){ if(n==num[c]){ j=n-1; }}//para hacer esta comparacion solo se compara el num con el vector
for(c=0;c<4;c++){//para hacer la comparacion con la matriz e indicar el lugar
if (toupper(let)==a[j][c]){ a[j][c]='X'; break;}//para convertir la minuscula a mayuscula y salir
}
/*for(c=0;c<7;c++){
for (f=0;f<4;f++){
if ((a[c][f])==(a[j][f])){ cout<<"\n lo siento ese lugar no esta disponible eliga otro\n"; break;}}}*/

for(f=0;f<7;f++){//imprime la actualizacion del registro
cout<<"\t"< for(c=0;c<4;c++){
cout<<"\t"< }printf("\n");
}
break;
case 2:
jj=29;
break;
default:
cout<<"opcion invalida\n\n";
break;
}
jj++;
}while(jj<2rie_gafas;
system ("pause");
return 0;
}
IDAsuntoFechaNick 
55086 Re: como comparar distintos vectores (Resp: 55085)28/04/11 15:36RFOG   
¿Y qué es para ti "MANDAR UN MENSAJE"? Porque en el código pones que el asiento está repetido...

Por cierto, en C++, para imprimir un fin de línea/salto de carro es "endl". Es decir,

cout<<"Hola mundo"<<endl;

Y ya que estás en C++ podrías utilizar un vector de la STL


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.

 
(c) Guillermo 'guille' Som, 2005-2017  - foros.elGuille v1.0.5.3 (23/Mar/2009 14:50 GMT +1)  - (ASP.NET 2.0 v2.0.50727.8762)
 
Usuarios activos: 81 - App. iniciada: 18/11/2017 1:11:19 GMT - La hora GMT del servidor es: 18/11/2017 10:13:43 GMT