dúvida in exercício!

0 respostas
J
Bom dia todos. minha dúvida está qdo escolho a opção "n" : o aplicativo não mostra a mensagem e também o aplicativo não se encerra. Quando termina uma das contagens de poltronas para uma das classes o exercicio não força a contagem para outra classe. Como faço para melhorar o meu exercicio?
/* Exercício 7.19 Java Como Programar. Sistema de reserva de passagens aéreas.
 *
 *Uma pequena companhia aérea acabou de comprar um computador para seu novo sistema 
 *automatizado de reservas. Você foi solicitado a desenvolver o novo sistema. Você escreverá
 *um aplicativo para atribuir assentos para cada vôo da companhia aérea para somente um 
 *avião(capacidade: 10 assentos). Seu aplicativo deve exibir as seguintes alternativas:
 * "Por favor digite 1 para Primeira Classe" ou "Por favor digite 2 para Classe Econômica".
 *Se o usuário digitar 1, seu aplicativo deve atribuir assentos na primeira classe
 *(poltronas 1-5). Se o usuário digitar 2, seu aplicativo deve atribuir um assento na classe 
 *econômica(poltronas 6-10). Em seguida, seu aplicativo deve exibir um cartão de 
 *embarque indicando o numero da poltrona da pessoa e se elea está na primeira na Primeira 
 *Classe ou na Classe Econômica. Utilize um array unidimensional do tipo primitivo boolean
 *para representar o grafico de assentos do avião. Inicialize todos os elementos do array
 *como false para indicar que todas as poltronas estão desocupadas. A medida que cada
 *assento é atribuido, configure os elementos correspondentes do array como true para
 *indicar que o assento não está mais disponível. Seu aplicativo nunca deve atribuir uma 
 *poltrona que já foi reservada. Quando a classe econômica estiver lotada, seu aplicativo
 *deve perguntar a pessoa se ela aceita ficar na primeira classe (e vice-versa). Se sim, 
 *faça a atribuição apropriada de assento. Se não, exiba a mensagem "O próximo vôo parte
 *em 3 horas"*/
 
 import java.util.*;
 public class Exerc7_19_JCP {
 	
 	int tipoClasse; //1 para Primeira Classe e 2 para Classe Econômica
 	boolean poltrona[] = new boolean[5]; //true para poltrona ocupada e false para desocupada
 	boolean poltrona1[] = new boolean[5];
 	int i=0;
 	int j=0;
 	String resposta;
 	
 	
 	//obj para entra do tipo de classe(1 ou 2)
 	Scanner entrada = new Scanner(System.in);
 	
 	//método para inserir passageiro
 	public void inserirPassageiro(){
 		
 		System.out.print("Por favor digite 1 para \"Primeira Classe\" ou 2 para \"Classe Econômica\": ");
 		tipoClasse = entrada.nextInt();
 		
 		if(tipoClasse == 1){
 			
 			if(poltrona[4] == true){
 				System.out.print("A Primeira Classe está lotada deseja ficar na Classe Econômica? (S/N)");
 				resposta = entrada.next();
 				if(resposta == "N" || resposta == "n"){
 					System.out.println("O próximo vôo parte as 3 horas.");
 				}
 				else{
 					while(j<5){
 						if(poltrona1[j] == false){
 						    poltrona1[j] = true;
 						    exibirCartaoEmbarqueClasseEconomica();
 							break;
 					    }	
 						else
 							j++;	
 					}
 				} 	
 			}
 			else {
 				while(i<5){
 					if(poltrona[i] == false){
 						poltrona[i] = true;
 						exibirCartaoEmbarquePrimeiraClasse();
 						break;
 					}
 					else
 						i++;
 				}
 			}
 		}
 		else if(tipoClasse == 2){
 			if(poltrona1[4] == true){
 				System.out.print("A Classe Econômica está lotada deseja ficar na Primeira Classe? (S/N)");
 				resposta = entrada.next();
 				if(resposta == "N" || resposta == "n")
 					System.out.println("O próximo vôo parte as 3 horas.");
 				else{
 					while(i<4){
 						if(poltrona[i] == false){
 							poltrona[i] = true;
 							exibirCartaoEmbarquePrimeiraClasse();
 							break;
 						}
 						else
 							i++;	
 					}
 				} 	
 			}
 			else{
 				while(j<5){
 					if(poltrona1[j] == false){
 						poltrona1[j] = true;
 						exibirCartaoEmbarqueClasseEconomica();
 						break;
 					}
 					else
 					    j++;	
 			}
 		}
 	} 
 		
 }
 int num1 = 0;
 int num2 = 5;
 public void exibirCartaoEmbarquePrimeiraClasse(){
 	
 	
 		System.out.println("Você esta viajando na Primeira Classe.");
 		System.out.println("Sua poltrona é: "+(num1+1));
 		num1++;
 }		
 public void exibirCartaoEmbarqueClasseEconomica(){
 	    
 	    System.out.println("Você esta viajando na Classe Econômica.");
 		System.out.println("Sua poltrona é: "+(num2+1));
 		num2++;
 }	
}//fim da classe Exerc7_19_JCP
public class Testa_Exerc7_19_JCP {
	
	public static void main(String args[]){
		
		Exerc7_19_JCP teste = new Exerc7_19_JCP();
		
		for(int i=0; i<10; i++){
			teste.inserirPassageiro();
		}
		
		
	}
}
Criado 7 de junho de 2007
Respostas 0
Participantes 1