Você está na página 1de 21

Aulão de

Algoritmos
2023.1 - TVC 4
Revisão:
Matrizes
Assim como os vetores, as matrizes são
estruturas de dados homogêneas. Podem ser
construídas dos diversos tipos básicos primitivos
(real, inteiro, caractere).

Principal diferença em relação aos vetores


(unidimensionais): possui uma ou mais dimensões
adicionais.

>>>>>>Exemplos:
Programar um jogo de xadrez o tabuleiro é naturalmente
bidimensional.
Matrizes:
DECLARAÇÃO DE UMA MATRIZ:
<tipo> <identificador>[numLinhas][numColunas];

. tipo: int, float, double, etc.

. identificador: é o nome da variável que identifica o vetor

. número de posições: é o tamanho do vetor!


Matrizes:
DECLARAÇÃO DE UMA MATRIZ:

Exemplos:

int mat[3][4];
// matriz 3 linhas e 4 colunas do tipo inteiro
// esta matriz tem 12 elementos

double notas[50];

char palavra[20];
Matrizes:
Atribuição:

Ex:
Matrizes:
● Analisando a passagem de uma matriz em uma função:
Estruturas de Dados Heterogêneas:
→Até agora vimos as estruturas de dados
homogêneas: vetores, matrizes e strings. Nestas estruturas todos os elementos da
estrutura são de tipos de dados primitivos: inteiro, real, caractere, etc.

→No entanto, em muitos casos, necessitamos


armazenar conjuntos de informações
relacionadas, formados por diversos tipos de
dados primitivos.

→Exemplos:
• Endereço;
• Fichas com dados pessoais de um cliente;
• Fichas com dados de um produto.
Estruturas de Dados Heterogêneas:
DECLARAÇÃO DE UMA STRUCT:
→Sintaxe para definir uma estrutura com n
campos em C++:
Estruturas de Dados Heterogêneas:
Para declararmos variáveis do tipo da
estrutura, basta utilizar o nome da estrutura
como tipo da variável:

• Exemplo:
<nomeEstrutura> var1, ..., varN;
Estruturas de Dados Heterogêneas:

A definição de um tipo estrutura deve ficar fora do


programa principal (main) e de qualquer função.

Veremos mais sobre nos exemplos nas páginas a seguir:


Estruturas de Dados Heterogêneas:
*Manipulação:
Estruturas de Dados Heterogêneas:
*Último exemplo:
Exercícios
Revisão 2023.1 - Questão 1
a)Faça o teste de
mesa do programa
ao lado e indique a
saída impressa pelo
programa.

b) Indique o estado
final da matriz.
Revisão 2023.1 - Questão 2
a) Faça uma função que receba uma matriz preenchida, a quantidade de linhas e a quantidade de
colunas. Em seguida, realize os seguintes passos:

i. Identifique o maior e o menor número positivos da matrix.

ii. Retorne para a função principal a raiz quadrada da soma desses dois elementos.

b) Faça um programa principal que declare uma matriz 3 × 4. Em seguida, preencha toda a matriz
lendo seus valores via teclado. Chame a função criada em a). Por fim, imprima o valor retornado pela
função.
Revisão 2023.1 - Questão 3
Um determinado município concede auxílio financeiro a famílias pobres. As famílias são consideradas
pobres quando a renda per capita é menor ou igual a R$ 210,00. O auxílio concedido possui um valor fixo
de R$ 300,00, além de um valor variável que depende da idade dos integrantes da família. Será pago o
valor de R$ 130,00 por criança com idade entre 0 e 3 anos, além de R$ 65,00 por integrante com idade
entre 4 e 21 anos.

a) Crie uma estrutura que armazene as informações de uma família, as quais são: CPF do responsável
pela família, renda per capita, número de integrantes da família e um vetor com a idade de cada
integrante da família. Considere que as famílias possuem, no máximo, 100 integrantes.

b) Crie uma função que receba como parâmetro uma estrutura criada no item a) e calcule o valor total
do auxílio que será concedido. Ao final, imprima o CPF do responsável e o valor total do auxílio.
Caso a família não deva receber o auxílio, a função deve imprimir "Família não é elegível".
Revisão 2023.1 - Questão 3
c) Na função principal, declare uma variável do tipo da estrutura criada, leia e armazene as
informações da família na seguinte ordem: CPF do responsável, renda per capita, número de integrantes
da família e idade de cada integrante, conforme exemplo de entrada abaixo. Em seguida, chame a função
criada para mostrar o valor do auxílio concedido à família.
QUESTÃO 1 GDB Questão 1

QUESTÃO 2 GDB questão 2

QUESTÃO 3 GDB questão 3


Slides aulão 4
/get.engcomputacional@engenharia.ufjf.br

/http://www.ufjf.br/get_engcomp

/get.engcomp

/GetEngComp

Augusto: 32991460017

Você também pode gostar