ayuda en matriz c++

Iniciado por sabar, 8 Diciembre 2014, 02:12 AM

0 Miembros y 1 Visitante están viendo este tema.

sabar

Código (cpp) [Seleccionar]
#include<iostream>
#include<stdlib.h>


using namespace std;




int main(){
           char sala[50][50];
           int fila2,colum2,fila,opcion,colum,i,j;
           cout<<"ingrese tamaño de la fila: ";
           cin>>fila;
           cout<<"ingrese tamaño de la columna: ";
           cin>>colum;
           for(i=0;i<fila;i++){
            for(j=0;j<colum;j++){
                cout<<"0"<<" ";
                }
                cout<<endl;
                }


           while(opcion!=2){
                cout<<"\nseleccione una opcion.";
                cout<<"\n1. ingresar una silla a llenar. ";
                cout<<"\n2. salir. \n";
                cin>>opcion;
                system("cls");
                if((opcion<2)&&(opcion>0)){
                   switch(opcion){
                       case 1:{
                              cout<<"ingrese la fila de la silla a ocupar: ";
                              cin>>fila2;
                              cout<<"ingrese la columna de la silla a llenar: ";
                              cin>>colum2;
                               for(i=0;i<fila;i++){
                               for(j=0;j<colum;j++){
                                if(i==fila2&&j==colum2){
                                 sala[fila2][colum2]= 3;
                                    cout<<sala[i][j]<<" ";
                                    }else{
                                    cout<<"0"<<" ";
           }
           }
                           cout<<endl;
                           }

                           opcion=0;
                           }break;
                           }
                }else if(opcion==2){
                           break;
                        }else{
                        cout<<"opcion incorrecta, escoja otro valor"<<endl;
                        }
           }

}






el problema dice lo siguiente:En una matriz se va a representar una sala de cine. Cada posición es una silla. Haz un programa que permita que la vendedora digite la fila y la columna y se cambie esa silla a ocupado o no disponible utilizando los simbolos que requieras como por ejemplo un * para libre y una x para ocupado, eres libre de decidir los símbolos. Esto se debe hacer hasta que la sala esté llena.
lo que quiero es saber como ir guardando el progreso de la sala (lugares que esten llenos y vacios) ya que no los guarda, lo que quiero es ver donde puedo meter un cin u otro metodo para que me guarde el progreso y asi me aparezca en pantalla como va la sala de cine.

Orubatosu

La verdad es que no veo el problema, quizás es que lo enfocas mal.

Tienes una matriz de (por ejemplo) 50x50 sillas, y quieres saber cuantas están libres... bueno, pues tienes dos maneras, la "bruta" y la "obvia".

La bruta sería recorrer toda la tabla sumando las vacias, la obvia es mucho mas simple.

50 x 50 son 2.500 sillas, cada vez que vendas una, resta a ese número una unidad, y tendrás las sillas libres, o acumula en una variable de tipo entero las vendidas y por diferencia sacarás las libres.
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998