Ir ao conteúdo

Ocupar parte da matriz em java


leonardocintra

Posts recomendados

Postado

alguem pode me mostra

como faz pra eu ocupar uma parte da matriz?

por exemplo, num teatro,

mostrar cadeiras livres e ocupadas,

e falar pro usuario quais sao disponiveis??

coloquem so a parte da matriz que eu teno o resto

valeuu!!:confused:

  • Membro VIP
Postado
alguem pode me mostra

como faz pra eu ocupar uma parte da matriz?

por exemplo, num teatro,

mostrar cadeiras livres e ocupadas,

e falar pro usuario quais sao disponiveis??

coloquem so a parte da matriz que eu teno o resto

valeuu!!:confused:

Não entendi bem o que você deseja. Mas se você deseja percorrer a matriz inteira será necessário utilizar dois laços aninhados (de preferência usando for), o laço externo ficaria responsável por percorrer as linhas e o interno por percorrer as colunas, ou vice-versa.

Seria algo como:

for(int i = 0; i < 40; i++)
for(int j = 0; j < 20; j++)
System.out.println(matriz[j][i]);

Abraços.

  • 3 semanas depois...
Postado

Peço as Administradores que não exclua

esse topico pois muita gente pode usar como exemplo :lol:

CLASSE SALA DO CINEMA!


public class Sala
{
private int linha;
private int coluna;
private int numsala;
private String poltronas[][] = new String[10][10];
public Sala(int num,int linha,int coluna)
{
numsala = num;
poltronas = new String[linha][coluna];
this.linha = linha;
this.coluna = coluna;
int aux=1;
for (int l=0;l<this.linha;l++)
{
for(int c=0;c<this.coluna;c++)
{
poltronas[l][c] = Integer.toString(aux);
aux++;
}
}
}
public String reservalugar(int lugar)
{
String aux = "Lugar Indisponível";
for (int l=0;l<this.linha;l++)
{
for(int c=0;c<this.coluna;c++)
{
if(poltronas[l][c].equals(Integer.toString(lugar)))//Separando o lugar desejado na matriz
{
if(!poltronas[l][c].equals("X"))//compara se a poltrona ja esta preenchida
{
aux = "LUGAR "+lugar+" RESERVADO COM SUCESSO !";//exibi a mensagem na tela
poltronas[l][c] = "X";//reserva uma poltrona na sala
return aux;
}
}
}
}
return aux;
}
//O usuário indicará a sua fileira e o programa reservara, se disponivel, um lugar nesta fileira
public String ReservanaFileira(int fileira)
{
String aux = "NÃO POSSUI LUGAR DISPONIVEL NESTA FILEIRA !";//se acaso ele não encontrar lugars disponiveis(Diferente de "X" o programa lhe retornará esta frase
for(int c=0;c<this.coluna;c++)
{
if(this.linha > fileira && fileira >= 0)//compara se fileira desejada existe
{
if(!poltronas[fileira][c].equals("X"))//compara se a poltrona já esta preenchida
{
aux = "LUGAR "+poltronas[fileira][c] + " RESERVADO COM SUCESSO";//mensagem que será exibida na tela com as informações da poltrona
poltronas[fileira][c] = "X";//reserva uma poltrona na sala
return aux;
}

}
else
{
aux = "FILEIRA NÃO EXISTE POR FAVOR DIGITE NOVAMENTE";//fileira deseja não existe
}
}
return aux;
}
//O usuario dirá ao programa a quantidade de lugares desejados
//e o método reservará as poltronas retornando as mesmas reservadas automaticamente pelo programa
public String ReservaQtd(int qtd)
{
int cont = 0;//contador para comparar os lugares disponíveis
String aux = " LUGARES RESERVADOS: ";//variável que receberá os acentos reservados pelo programa
if(qtd > (linha*coluna) || qtd <= 0)//valida a quantidade indicada pelo usuário é maior que a sala ou menor que a sala
{
return "LUGARES INDISPONIVIES";
}
String vet[] =new String[qtd];//vetor que armazena lugares disponíveis
for (int l=0;l<this.linha;l++)
{
for(int c=0;c<this.coluna;c++)
{
if(!poltronas[l][c].equals("X") && cont < qtd)//compara se a poltrona ja esá preenchida e se o vetor ja atingiu a quantidade de lugares desejados
{
vet[cont] = poltronas[l][c];//guardando o numero da poltrona no vetor
poltronas[l][c] = "X";//reservando lugar na matriz
cont++;
}
}
}
for(int i=0;i<qtd;i++)
{
aux = aux + vet[i]+" ,";//armazenando poltonas reservadas no aux para serem mostradas na tela
}
return aux;
}
//metodo que retorna o numero da sala
public int getNumSala()
{
return numsala;
}
//método retorna a sala
public void MostraPoltronas()
{
for (int l=0;l<linha;l++)
{
System.out.print(" "+(l+1)+" =>");//mostra o numero da coluna da sala
for(int c=0;c<coluna;c++)
{
System.out.print(" "+poltronas[l][c]+" |");//mostra a sala prenchida com o numero das cadeiras
}
System.out.print(" \n");
}
System.out.println(" \n");
}

}

CLASSE SESSAO DO CINEMA!


public class Sessao
{
private int codsessao;//codigo da sessão instanciada
private String data;//a data
private String hora;// e a hora
private int codTicket;//atributo para controlar o codigo do Ticket pois nenhum pode ser igual ao outro
private String recebecadeira;//atributo para guardar o lugar reservado do usuário para ser emitido no ticket
Sala s;//Instancia de Sala
Filme f;//Intancia de Filme
public Sessao(int num, int linha, int coluna, //parametros para instanciar o objeto Sala
int codfilme,String nome,String faixa,String duracao, //parametros para instanciar o objeto Filme
int cod, String data, String hora)//parametros para instanciar atributos desta classe
{
s = new Sala(num,linha,coluna);//instancia o objeto Sala
f= new Filme(cod,nome,faixa,duracao);//instacia o objeto Filme
codsessao = cod;
this.data = data;
this.hora = hora;
this.codTicket = 1;//iniciando o valor do ticket
}
public void ConsultaSala()//método para consultar as poltronas da sala
{
s.MostraPoltronas();
}
public void ReservarPoltrona(int lugar)//metodo para reservar uma poltrona especifica indicada pelo usuario
{
String valor = s.reservalugar(lugar);
if(valor.equals("Lugar Indisponível"))//se o valor retornado pelo método for false o lugar ja esta ocupado
{
System.out.println("LUGAR INDISPONÍVEL");//exibe a mensagem na tela de lugar indisponiel
s.MostraPoltronas();//mostra a sala
}
else//se o valor retornado pelo método for true mostra o ticket contendo todas as informações e exibe a sala novamente
{
recebecadeira = valor;//passa o lugar desejado para o metodo onde reserva a poltrona
MostraTicket();

}
}
//usuario indicara a fileira que desejara e o sistema indicara o assento disponivel
//exibindologo apos a sala
public void IndicarFileira(int numfileira)
{
recebecadeira = s.ReservanaFileira(numfileira-1);//auxiliar para comparaçao de valores e exibição do Ticket
if(!recebecadeira.equals("FILEIRA NÃO EXISTE POR FAVOR DIGITE NOVAMENTE"))
{
MostraTicket();
}
else
{
System.out.println(" " +s.ReservanaFileira(numfileira-1));
}
}
public void ReservarLugares(int qtd)//usuario indicara a quantidade de lugar a ser reservado
{
recebecadeira = s.ReservaQtd(qtd);
MostraTicket();
}
public void MostraTicket()
{
System.out.println(" Codigo do Ticket "+codTicket);
System.out.println(" Data: "+data);
System.out.println(" Horas: "+hora);
System.out.println(" "+recebecadeira);
System.out.println(" Codigo do Filme: "+f.getCodFilme());
System.out.println(" Nome do Filme: "+f.getNome());
System.out.println(" Faixa Etária: "+f.getFaixaEtaria());
System.out.println(" Duração: "+f.getDuracao());
codTicket++;//para que o valor do ticket não seja igual
s.MostraPoltronas(); //exibe na tela a sala com o lugar reservado como X
}


}

CLASSE FILME (filme que o usuario escolher!)


public class Filme
{
//atributos do filme
private int codfilme;//codigo correspondente ao filme
private String nome;//Nome do filme
private String F_etaria;// Faixa etária do filme
private String duracao;//duração do filme
public Filme()
{
//construtor padrão
}
//contrutor inicializado
public Filme(int cod,String nome,String faixa,String duracao)
{
codfilme = cod;
this.nome = nome;
F_etaria = faixa;
this.duracao = duracao;
}
//O metodo setCodFilme se usa para alterar o código adjacente ao filme
public void setCodFilme(int cod)
{
this.codfilme = cod;
}
//Retorna o codigo do filme
public int getCodFilme()
{
return codfilme;
}
//O metodo setNome altera o nome do filme
public void setNome(String nome)
{
this.nome = nome;
}
//Retorna o nome do filme
public String getNome()
{
return nome;
}
//O metodo o altera a Faixa Etaria
public void setFaixaEtaria(String faixa)
{
this.F_etaria = faixa;
}
//Retorna a faixa etaria do filme
public String getFaixaEtaria()
{
return F_etaria;
}
//O metodo setDuracao alterar o a duração do filme
public void setDuracao(String duracao)
{
this.duracao = duracao;
}
//Retorna a duraçao do filme
public String getDuracao()
{
return duracao;
}

}

  • Membro VIP
Postado

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!