Ir para conteúdo

POWERED BY:

Arquivado

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

FabiiChan

Java - Problemas prá continuar o programa...

Recommended Posts

Pessoal quem puder me ajudar agradeço muuuito... :thumbsup:

 

O problema é o seguinte preciso fazer um programa em java com as seguintes especificações:

 

1. O programa deverá gerenciar os dados:

a) O programa gerencia um vetor de famílias, sendo que cada família é um vetor de pessoas.

Repare que não é necessariamente obrigatório criar a classe Familia, uma vez que esta

estrutura/conceito é apenas um vetor de pessoas;

b ) Uma pessoa, neste caso, é uma abstração composta de nome, idade, sexo, chefe de família –

campo lógico verdadeiro/false; apenas um por família – , papel – filho/a, marido, esposa, pai,

mãe, sogra, enteado/a, cunhado/a (sempre referente ao chefe da família);

c) Iniciar o programa perguntando quantas famílias e criar a estrutura adequada a partir desta

informação;

d) Cadastrar famílias, perguntando quantos elementos e depois os dados de cada pessoa;

e) Excluir famílias inteiras de uma vez;

f) Alterar famílias, através da alteração dos dados de cada membro;

g) Listagem das famílias – primeiro o chefe de família, depois os membros, para todas as

famílias;

h) Relatório sintetizando os dados das famílias: quantas famílias, número médio de pessoas por

família, proporção homem/mulher chefe de família, média e desvio padrão da idade de todas

pessoas desta população;

i) (Opcional) Gravar e ler do disco.

2. Orientação a Objetos:

a) Construtores adequados para Pessoa;

b ) Encapsulamento dos atributos;

c) Getters e setters para todos atributos, com as validações que forem adequadas – idade > 0 etc.

* Sem interfaces gráficas (jOptionPane etc..) sem usar classes pronas de java (Collections).

 

Enfim, o que eu fiz até agora eh isso:

 

public class TrabalhoT1POO { // Classe principal

 

public static void main(String[] args) { // Método main

int n; // Variável que irá receber a quantidade de famílias a serem criadas

Scanner leitura = new Scanner(System.in); // Lê o que for digitado a partir do teclado

// Cria, enquanto n for maior 0, um vetor com a quantia de famílias atribuindo o que foi digitado a n

do {

System.out.println("Você deseja criar quantas famílias? ");

n = leitura.nextInt();

} while (n < 0);

Pessoa[] pessoa = new Pessoa[n];

for (int i = 0; i < n; i++) {

pessoa = new Pessoa();

 

// Menu para o usuário escolher a ação

int op = 0;

switch (op) {

case 1:

vetPessoa.cadastrar();

break;

case 2:

excluir();

break;

case 3:

alterar();

break;

case 4:

listar();

break;

case 5:

gerarRelatorio();

break;

case 6:

gravar();

break;

case 7:

ler();

break;

 

 

}

}

 

}

}

 

public class Pessoa {

// Definição dos atributos de Pessoa

private static Object vetPessoa[];

private String nome;

private int idade;

private String sexo;

private boolean chefeDeFamilia;

private String papel;

Pessoa vetpessoa[];

 

// getter e setter para os atributos de Pessoa

public String getNome() {

return nome;

}

 

public void setNome(String nome) {

this.nome = nome;

}

 

public int getIdade() {

return idade;

}

 

public void setIdade(int id) {

if (id > 0) {

this.idade = id;

}else{

System.out.println("Idade informada incompatível!");

}

}

 

public String getSexo() {

return sexo;

}

 

public void setSexo(String sexo) {

this.sexo = sexo;

}

 

public boolean isChefeDeFamilia() {

return chefeDeFamilia;

}

 

public void setChefeDeFamilia(boolean chefe) {

if (chefe = true) {

this.chefeDeFamilia = chefe;

}

}

 

public String getPapel() {

return papel;

}

 

public void setPapel(String papel) {

this.papel = papel;

}

 

 

// Métodos

public void cadastrar() {

int n;

Scanner leitura = new Scanner(System.in);

do {

System.out.println("Quantas pessoas pertencem a essa família? ");

n = leitura.nextInt();

} while (n <= 0);

Pessoa[] vetPessoa = new Pessoa[n];

for (int i = 0; i < vetPessoa.length; i++) {

int p = 1;

System.out.println("Insira os dados da " + (p++) + "ª pessoa: ");

vetPessoa = new Pessoa();

}

 

}

 

public void deletar() {

int n;

Scanner leitura = new Scanner(System.in);

do {

System.out.println("Qual família você deseja excluir? ");

n = leitura.nextInt();

} while (n <= 0);

vetPessoa[n] = null;

System.out.println("Família " + vetPessoa[n]+ "excluída!");

}

 

public void alterar() {

 

}

 

public void listar() {

}

 

public void gerarRelatorio() {

}

 

public void gravar() {

}

 

public void ler() {

}

}

 

Não sei se o que eu fiz até agora está certo e TRAVEI! Não consigo terminar :cry:

Compartilhar este post


Link para o post
Compartilhar em outros sites

FabiiChan...

 

Acrescente um objeto separado para manipulação dos dados (vetores), pode chamar esta classe de PessoaDAO ou FamiliaDAO.

 

Acho que isto será suficiente para você entender melhor o que se faz necessário.

 

Se precisar de mais ajuda, fique a vontate.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.