Home Registros em Java
Post
Cancelar

Registros em Java

Imagine quanto trabalho seu amigo terá para controlar todas as fichas. Para ajudá-lo, você pode desenvolver um programa de computador. Antes, porém, deve criar um algoritmo, seguindo algumas etapas.

Declare as variáveis necessárias para ler a ficha.

1
2
3
4
5
6
7
8
9
NOME, ESTADOCIVIL, NOMECONJ, ENDERECO, BAIRRO,CIDADE, UF, EMAIL: literal
IDADE, DATANASC, NUMERO, CEP, FONE1, FONE2, FONE3: numérico

Se quiser, você pode utilizar um vetor de três posições para os telefones.

NOME, ESTADOCIVIL, NOMECONJ, ENDERECO, BAIRRO,CIDADE, UF, EMAIL: literal
IDADE, DATANASC, NUMERO, CEP: numérico
FONE: conjunto [1..3] numérico

Registro de ficha

Para resolver o problema anterior, existe o recurso de se utilizar uma variável heterogênea, isto é, que permite armazenar vários tipos diferentes de constantes. Esse recurso chama-se Registro. Ao contrário do vetor e da matriz, o registro pode conter variáveis simples e/ou compostas. As variáveis do registro são chamadas Campos. Observe como fica a declaração das variáveis por meio do registro FICHA. Declarando as variáveis do registro

1
2
3
4
5
6
7
FICHA: registro

NOME, ESTADOCIVIL, NOMECONJ, ENDERECO, BAIRRO,CIDADE, UF, EMAIL: literal
IDADE, DATANASC, NUMERO, CEP: numérico
FONE: conjunto [1..3] numérico

fim-registro

Exemplo de Registro de alunos

Utilizar a estrutura de registro para cadastrar matrículas e notas de alunos em determinada disciplina.

Problema: Monte o algoritmo de cadastramento de alunos utilizando a estrutura de registros. Represente o algoritmo em pseudocódigo.

Montar um algoritmo de cadastramento de alunos utilizando a estrutura de registros. Represente o algoritmo em pseudocódigo, e o código em java para fazer um formulário em uma gui swing, salvando em arquivo texto.

Segue abaixo o pseudocódigo para o algoritmo de cadastramento de alunos utilizando a estrutura de registros, seguido do código em Java para criar um formulário em uma GUI Swing e salvar as informações em um arquivo de texto:

Pseudocódigo:

  1. Definir a estrutura de registro para o aluno, contendo os campos nome, idade, matrícula e curso.
  2. Inicializar as variáveis de entrada nome, idade, matrícula e curso.
  3. Criar um formulário com campos de entrada para nome, idade, matrícula e curso.
  4. Ler as informações de entrada do usuário e armazená-las nas variáveis correspondentes.
  5. Criar um objeto do tipo Aluno com as informações armazenadas nas variáveis.
  6. Escrever as informações do objeto Aluno em um arquivo de texto.
  7. Exibir uma mensagem de confirmação para o usuário.

Código em Java:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
// Definir a estrutura de registro para o aluno

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

class Aluno extends JFrame implements ActionListener{
  String nome;
  int idade;
  int matricula;
  String curso;
// Inicializar as variáveis de entrada
JTextField nomeTextField, idadeTextField, matriculaTextField, cursoTextField; 


public Aluno() {
  super("Cadastro de Aluno");
}

// Criar o formulário
public void CadastroAluno() {


  // Criar os campos de entrada para nome, idade, matrícula e curso
  JLabel nomeLabel = new JLabel("Nome:");
  nomeTextField = new JTextField(20);
  JLabel idadeLabel = new JLabel("Idade:");
  idadeTextField = new JTextField(3);
  JLabel matriculaLabel = new JLabel("Matrícula:");
  matriculaTextField = new JTextField(10);
  JLabel cursoLabel = new JLabel("Curso:");
  cursoTextField = new JTextField(20);

  // Criar o botão para submeter o formulário
  JButton cadastrarButton = new JButton("Cadastrar");
  cadastrarButton.addActionListener(this);

  // Adicionar os campos de entrada e o botão ao formulário
  JPanel panel = new JPanel(new GridLayout(5, 2));
  panel.add(nomeLabel);
  panel.add(nomeTextField);
  panel.add(idadeLabel);
  panel.add(idadeTextField);
  panel.add(matriculaLabel);
  panel.add(matriculaTextField);
  panel.add(cursoLabel);
  panel.add(cursoTextField);
  panel.add(new JLabel(""));
  panel.add(cadastrarButton);
  add(panel);

  // Configurar o tamanho e a visibilidade do formulário
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setSize(300, 200);
  setVisible(true);
}

// Ação do botão cadastrar
public void actionPerformed(ActionEvent event) {
  try {
      // Ler as informações de entrada do usuário
      String nome = nomeTextField.getText();
      int idade = Integer.parseInt(idadeTextField.getText());
      int matricula = Integer.parseInt(matriculaTextField.getText());
      String curso = cursoTextField.getText();

      // Criar um objeto Aluno com as informações lidas
      Aluno aluno = new Aluno();
      aluno.nome = nome;
      aluno.idade = idade;
      aluno.matricula = matricula;
      aluno.curso = curso;

      // Escrever as informações do objeto Aluno em um arquivo de texto
      FileWriter writer = new FileWriter("alunos.txt", true);
      PrintWriter printer = new PrintWriter(writer);
      printer.printf("%s,%d,%d,%s\\n", aluno.nome, aluno.idade, aluno.matricula, aluno.curso);
      printer.close();

      // Exibir uma mensagem de confirmação para o usuário
      JOptionPane.showMessageDialog(this, "Aluno cadastrado com sucesso!");

      // Limpar os campos de entrada
      nomeTextField.setText("");
      idadeTextField.setText("");
      matriculaTextField.setText("");
      cursoTextField.setText("");
  } catch (NumberFormatException e) {
      // Exibir uma mensagem de erro para o usuário caso a idade ou a matrícula não sejam números
      JOptionPane.showMessageDialog(this, "A idade e a matrícula devem ser números!");
  } catch (IOException e) {
      // Exibir uma mensagem de erro para o usuário caso ocorra um erro ao escrever no arquivo
      JOptionPane.showMessageDialog(this, "Erro ao cadastrar aluno!");
  }
}

// Método main para iniciar o programa
public static void main(String[] args) {
  Aluno Aluno = new Aluno();
  Aluno.CadastroAluno();
}
}

Este código cria uma interface gráfica para cadastro de alunos com campos para nome, idade, matrícula e curso. Quando o usuário clica no botão “Cadastrar”, o código lê as informações dos campos de entrada, cria um objeto Aluno com essas informações, escreve as informações do aluno em um arquivo de texto e exibe uma mensagem de confirmação para o usuário. Se a idade ou a matrícula não forem números, o código exibe uma mensagem de erro. Se ocorrer um erro ao escrever no arquivo, o código também exibe uma mensagem de erro.

Este é apenas um exemplo que deve ser evoluído para a solução do problemas inicial.

Referências

Esta postagem está licenciada sob CC BY 4.0 pelo autor.