PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
Capítulo 13 Livro Algoritmos e Programação de Computadores Autores JR., Dilermando
1. Objetivos
• Identificar e agrupar dados sobre diferentes
objetos.
• Criar e utilizar registros de dados.
• Relacionar dados de registros diferentes.
2. Para começar...
Você usa alguma rede social?
Quais informações ela armazena sobre você?
Informações pessoais:
nome: STRING [40];
cidadeOndeMora: STRING [20];
:
Educação e trabalho:
:
Atividades e interesses:
:
3. Conhecendo a teoria para programar
Um registro é uma reunião de dados sobre um objeto com o objetivo de
facilitar sua organização e uso.
Cada um desses dados, também chamados atributos ou campos, podem
também ser outras estruturas de dados como, por exemplo, outros registros.
Exemplo:
amigo1 é um registro com três atributos:
nome, string [30], com o valor “Carol”.
cidadeOndeMora, string [20], com o valor “São Paulo”.
Sexo, caracter, com o valor “F” (feminino).
Assim, o registro amigo1 ocupa 51 bytes (30+20+1).
5. Em VisuAlg não há registros. Se houvesse, seria algo como:
Vamos Programar
VisuAlg
tipo
dadosAmigos = registro
nome: caractere
cidadeOndeMora: caractere
sexo: caractere
fimregistro
6. Definição do novo tipo dadosAmigos, com três campos (nome,
cidadeOndeMora e sexo):
Vamos Programar
Pascal
type
dadosAmigos = record
nome: string;
cidadeOndeMora: string;
sexo: char;
end;
7. A variável amigos irá armazenar 100 registros com dados dos amigos:
Vamos Programar
Pascal (continuação)
var
i: integer;
amigos: array[1..100] of dadosAmigos;
A seguir, o vetor será preenchido com os dados de 100 amigos:
for i:= 1 to 100 do
begin
readln (amigos[i].nome);
readln (amigos[i].cidadeOndeMora);
readln (amigos[i].sexo);
end;
8. O trecho de código a seguir imprime apenas os nomes dos amigos do
sexo feminino:
Vamos Programar
Pascal (continuação)
for i:= 1 to 100 do
if amigos[i].sexo =’F’ then
writeln (amigos[i].nome);
9. Definição do novo tipo dadosAmigos:
Declaração da variável amigos e
leitura dos dados:
struct dadosAmigos {
char nome[30];
char cidadeOndeMora[20];
char sexo;
};
struct dadosAmigos amigos[100];
for (i=0; i<100; i++){
printf("nnDigite o nome:");
gets(amigos[i].nome);
printf("nDigite a cidade:");
gets(amigos[i].cidadeOndeMora);
printf("nDigite o sexo:");
scanf("%c", &amigos[i].sexo);
};
Vamos Programar
C
10. Impressão dos nomes dos amigos do sexo feminino:
Vamos Programar
C (continuação)
printf("Amigos do sexo feminino:n");
for(i=0;i<100;i++)
if ((amigos[i].sexo=='F')||(amigos[i].sexo=='f'))
printf("Nome: %sn", amigos[i].nome);
11. Definição da classe DadosAmigo:
Vamos Programar
Java
class DadosAmigo {
String nome;
String cidadeOndeMora;
String sexo;
}
12. Impressão dos dados:
Vamos Programar
Java (continuação)
for(contadorCadastro = 0 ; contadorCadastro < 100 ; contadorCadastro++){
amigo.nome = dados.readLine("%s","n Digite seu nome : ")
amigo.cidadeOndeMora = dados.readLine("%s","n Digite nome
da sua cidade : amigo.sexo = dados.readLine("%s","n Digite [M]
Masculino ou [F] Feminino : ");
//Salva o amigo no array de amigos
variosAmigos[contadorCadastro] = amigo;
//Cria uma nova instância de amigo
amigo = new DadosAmigo();
}
}
13. Leitura dos dados:
Vamos Programar
Java (continuação)
for(int contadorImpressao = 0 ; contadorImpressao < 100 ;
contadorImprssao++){
System.out.println("n Nome :
"+variosAmigos[contadorImpressao].nome);
System.out.println("n Cidade :
"+variosAmigos[contadorImpressao].cidadeOndeMora);
System.out.println("n Sexo :
"+variosAmigos[contadorImpressao].sexo);
}
15. DadosAmigo com os atributos iguais dos exemplos anteriores:
Vamos Programar
PHP
session_start();
class DadosAmigo{
var $_nome;
var $_cidade;
var $_sexo;
public function __construct($_nome,$_cidade,$_sexo){
$this->_nome = $_nome;
$this->_cidade = $_cidade;
$this->_sexo = $_sexo;
}
}
$_dadosAmigo = new
DadosAmigo($_POST['nome'],$_POST['cidade'],$_POST['sexo']);
$_SESSION["DadosAmigos"][] = $_dadosAmigo;
16. Estamos trabalhando cada vez mais com estruturas de dados
mais complexas e que nos permitirão desenvolver sistemas mais
complexos de forma mais organizada e eficaz.
Existe ainda um tipo de variável muito poderoso, que permite
o desenvolvimento de sistemas muito mais flexíveis e eficientes:
são os ponteiros.