• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

AndreOliveira

registo - Data de Nascimento

1 mensagem neste tópico

Boas pessoal. Sou novo aqui.

Entrei agora na universidade e comecei logo com java.

tenho exame daqui a algum tempo e isto ta um bocado mau...

Bem... bou deixar aqui o meu problema.

public class dadosAlunoUA

{

 

  static class Aluno

  {

    String nome;

    int numeroMecanografico;

    Data dataNascimento;

    int numeroTelemovel;

    String morada;

  }

   

  static class Data

  {

  int dia;

  int mes;

  int ano;

  }

   

   

  public static void main(String[] args)

  {

    Aluno[] x = new Aluno[30];

    for (int i=0;i<30;i++)

    {

    x = new Aluno();

    x.dataNascimento = new Data();

    }

    Aluno novo;

    novo= new Aluno();

    char operacao;

   

    do

    {

    operacao = menu();

     

    switch (operacao)

    {

      case 'a': inserirDados(novo);

      break;

     

      case 'm':;

      break;

       

      case 'n':;

      break;

     

      case 'o':;

      break;

    }

  }while (operacao != 's');

    System.exit(0);

  }

  private static void inserirDados(Aluno x)

  {

    writelnString("            Insira os seus dados:            ");

    writelnString("  -----------------------------------------  ");

   

    //Inserir o Nome

    x.nome = readLine ("Nome: ");

   

    //Inserir Número Mecanográfico

    x.numeroMecanografico = readInt ("Nº Mecanográfico: ");

   

    //Inserir Data de Nascimento

    writelnString ("Data de nascimento: ");

    x.dataNascimento.dia = readInt ("\tDia: ");

    x.dataNascimento.mes = readInt ("\tMês: ");

    x.dataNascimento.ano = readInt ("\tAno: ");

   

    //Inserir Numero de Telemovel

    x.numeroTelemovel = readInt("Nº Telemóvel: ");

   

    //Inserir Morada

    x.morada = readLine ("Morada: ");

  }

 

  public static char menu ()

  {

    writelnString("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");

    writelnString("*                    Escolha a operação a efectuar:                                      *");

    writelnString("*  ---------------------------------------------------------------------              *");

    writelnString("*    a ->  Inserir novo aluno                                                                  *");

    writelnString("*    m ->  Mostrar todos os alunos inseridos                                        *");

    writelnString("*    n ->  Mostrar todos os alunos ordenados por nome                      *");

    writelnString("*    o ->  Mostrar todos os alunos ordenados por número mecanográfico*");

    writelnString("*    s ->  Sair do programa                                                                    *");

    writelnString("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");

    return readChar("Operação -> ");

  }

}

Então cá vai... o problema deve-se encontrar no código que coloquei a vermelho.

Tipo.. dá para inserir tudo bem só que quando é para inserir a data, eu escrevo o dia e carrego em enter e nao passa para o mês.

Provavelmente isto é de fácil resolução mas não liguem à minha ignorância. Sou mesmo novato :P

Obrigado desde já pela ajuda

Portem-se bem e boas Passagens para 2008 :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora