Apostila Elementos de Programação
61 pág.

Apostila Elementos de Programação


DisciplinaElementos de Programação de Computadores5 materiais54 seguidores
Pré-visualização11 páginas
\u2022 Diferenciar array de registro. 
 
Conteúdos da aula 
 
Acompanhe os assuntos desta aula, se preferir, ao 
terminar, assinale o conteúdo já estudado. 
\ufffd Variáveis compostas heterogêneas 
\ufffd Aplicação prática usando registros 
 
Prezado(a) aluno(a), nesta aula você terá o primeiro 
contato na forma de armazenamento mais comum 
dos dados em um computador. Normalmente 
desejamos armazenar um conjunto de informações para depois 
utilizá-las das mais variadas formas. Vimos na aula anterior, que 
um array nos permite trabalhar com um grande conjunto de dados, 
mas ele é limitado a um único tipo de dados. Já um registro, amplia 
a abordagem do array, permitindo que seus elementos possam 
armazenar tipos de dados diferentes. É uma construção simples e 
extremamente poderosa. 
\u201cMãos à obra\u201d e boa Aula! 
 
 
 
 
 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
22 
1 VARIÁVEIS COMPOSTAS HETEROGÊNEAS 
 
 Como vimos na aula anterior, um array pode armazenar dados com os mesmos 
tipos (por exemplo: tipos numéricos ou texto), em uma forma de matriz, mas há 
necessidade de armazenamento de informações, usando a mesma abordagem de 
um array, com tipos de dados diferentes. A construção de uma estrutura de dados, 
na forma de matriz, que permite o armazenamento de diferentes tipos de dados em 
seus elementos é conhecida como variável composta heterogênea. 
 É importante ressaltar que esse tipo de estrutura de dados também é 
conhecido como \u201cregistro\u201d e cada um de seus elementos são chamados de 
\u201ccampos\u201d. Esse tipo de abordagem busca associar à composição de um registro de 
informações, por exemplo: um cadastro de clientes. A figura 7 mostra os campos 
para que sejam registradas informações sobre um cliente. 
Cadastro de ClientesCadastro de Clientes
Nome
Endereço
Bairro
Cidade
Estado
Salvar Cancelar
Idade
 
Figura 7 \u2013 Exemplo de campos para registro de informações 
 
 A representação na memória de um registro você pode visualizar na figura 8. 
 
 
Figura 8 \u2013 Representação de registro na memória 
 
 
 
Campos 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
23 
1.1 REPRESENTAÇÃO DE UM REGISTRO EM PSEUDOCÓDIGO 
 
 Para criar um registro, utilizamos um nome e um conjunto de variáveis, 
especificando o tipo de cada variável. 
 Vamos avaliar a instrução de pseudocódigo abaixo: 
[nome do registro]: REGISTRO 
 [campo 1] [tipo de dados] 
 [campo 2] [tipo de dados] 
 [campo n] [tipo de dados] 
FIM REGISTRO 
 
 Agora vamos entender cada componente do pseudocódigo (figura 9), 
utilizando como exemplo o Cadastro de Clientes que foi apresentado. 
 
 
 Figura 9 \u2013 Componentes do pseudocódigo de um registro 
 
1.2 MANIPULAÇÃO DE REGISTROS 
 
 Quando criamos um registro, na memória há uma área de armazenamento, na 
forma de matriz, cujo elemento corresponde a um \u201ccampo\u201d do registro. Cada campo 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
24 
pode conter tipos de dados diferentes. No exemplo de Cadastro de Clientes, que 
estamos utilizando, visualizemos a figura 10, para entender como a informação é 
armazenada na memória. 
 
 
Figura 10 \u2013 Exemplo de um conjunto de registros 
 
 Observe que, a cada registro armazenado na memória (ou linha de informação) 
corresponde um conjunto de dados que estão associados e participam de uma 
estrutura maior de dados. 
 Outro aspecto fundamental a ser observado é que a estrutura de dados 
armazena as informações como uma matriz. Por isso, cada linha possui uma 
referência numérica na memória, para que possamos encontrar as informações 
armazenadas. 
 Em pseudocódigo, para determinarmos o número de registros do conjunto de 
dados e criarmos uma \u201cmatriz de registros\u201d, utilizamos a seguinte instrução: 
 
[nome do registro]: [nome da matriz] [dimensões] 
 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
25 
 A instrução acima precisa ser informada logo após a construção do registro. 
Para recuperar uma informação de determinado campo de um registro em 
pseudocódigo, você deve utilizar a seguinte instrução: 
IDENTIFICADOR[índice].Campo 
 \u201cIdentificador\u201d é o nome utilizado para a criação do registro, entre colchetes o 
índice ou linha correspondente, seguido do sinal ponto (.) e, finalmente, o nome do 
campo que se deseja utilizar. Veja um exemplo na figura 11: 
 
 
Figura11 \u2013 Como obter informações de um registro 
 
 Para armazenar uma informação em um registro, em pseudocódigo você deve 
utilizar a seguinte instrução: 
 
IDENTIFICADOR[índice].Campo \ufffd [Valor] 
 
 
2 APLICAÇÃO PRÁTICA USANDO REGISTROS 
 
 Usando os conceitos apresentados nessa aula, vamos realizar uma abordagem 
prática na construção e manipulação de registros, através de pseudocódigo. 
Infelizmente, a ferramenta Portugol, bem como as demais ferramentas conhecidas 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
26 
como Interpretador de Linguagem Algorítmica (ILA), não suportam variáveis 
compostas heterogêneas. Por isso, neste módulo vamos construir o nosso 
pseudocódigo usando o bloco de notas (ou um editor de textos de sua preferência). 
 
2.1 PROBLEMA 
 
 Dado um conjunto de 40 registros contendo informações de alunos, calcular a 
média e a situação desses alunos. O algoritmo deverá exibir uma lista dos alunos 
contendo a média e a situação. 
 
2.2 SOLUÇÃO 
 
 O número total de entradas que serão fornecidas é informado no problema (10 
idades), portanto, a lógica para a leitura de dados deverá ser controlada por um 
contador. Vamos utilizar um laço de repetição com contador automático. 
 Para obter a média e a situação dos alunos, primeiramente vamos obter as 
informações usando a entrada de dados pelo usuário. 
 
2.3 PROCEDIMENTO 
 
13. Executar o Bloco de Notas; 
14. Digite a abertura e fechamento do pseudocódigo: 
Inicio 
Fim 
15. Abaixo da instrução Início, vamos declarar as variáveis: 
Inicio 
 Reg_Alunos: REGISTRO 
 Texto Nome, Situacao 
 Real Nota1, Nota2, Nota3, Nota4, Media 
 Inteiro Faltas, Contador 
 FIM REGISTRO 
Fim 
Elementos de Programação 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
27 
16. Agora vamos declarar a quantidade de registros que serão armazenados na 
estrutura de dados. Informe a instrução abaixo do texto \u201cFim Registro\u201d. 
Reg_Alunos:aluno[40] 
17. Vamos obter as informações do usuário: 
Para Contador de 0 até 39 passo 
 Ler Aluno[Contador].Nome 
 Ler Aluno[Contador].Nota1 
 Ler Aluno[Contador].Nota2 
 Ler Aluno[Contador].Nota3 
 Ler Aluno[Contador].Nota4 
 Ler Aluno[Contador].Faltas 
Próximo 
18. Agora vamos realizar os cálculos necessários. 
 Insira as instruções acima da palavra \u201cPróximo\u201d no laço anterior (Item 5), 
considerando que vamos efetuar o cálculo a cada entrada de dados. 
Aluno[Contador].Media \ufffd (Nota1+Nota2+Nota3+Nota4)/4 
SE Aluno[Contador].Media >= 7 E Aluno[Contador].Faltas <= 10 ENTÃO 
 Aluno[Contador].Situacao \ufffd \u201cAprovado\u201d 
 Senão 
 Aluno[Contador].Situacao \ufffd \u201cReprovado\u201d 
FIMSE 
19. Agora vamos imprimir a lista de alunos: 
Contador \ufffd 0 
Para Contador 0 até 39 passo 
 Escrever \u201c\nAluno: \u201c,Aluno[Contador].Nome, \ufffd 
 Aluno[Contador].Media, Aluno[Contador].Situacao 
Próximo 
20. Observe que, na instrução \u201cEscrever\u201d, há um texto a ser apresentado na 
tela com a seguinte composição: \u201c\nAluno: \u201c. Os caracteres \n, no texto, 
serão interpretados como uma quebra de linha, ou seja, antes de 
apresentar na tela a informação, será realizada uma quebra de linha. 
Também observe que a instrução não cabe no leiaute da apostila, por isso o 
símbolo \ufffd, ao final da primeira linha da instrução
Tiago
Tiago fez um comentário
Três livros de formatos regulares, cada um com peso W e comprimento a são empilhados como mostrado na figura. Determine a máxima distância d que o livro de cima pode se deslocar em relação ao livro de baixo de modo que a pilha não desmorone:
0 aprovações
Carregar mais