Pessoal quem puder me ajudar agradeço muuuito… :thumbup:
O problema é o seguinte preciso fazer um programa em java com as seguintes especificações:
- 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. - 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[i] = 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[i] = 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 
