Estruturas de Dados Estáticas Cont.

Documentos relacionados
Estruturas de Dados Estáticas

ESTRUTURAS DE DADOS ESTÁTICAS: MATRIZES

Algoritmos e Programação

Algoritmos e Programação

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Matrizes. Prof. Alex Camargo

1 - VARIÁVEIS COMPOSTAS HOMOGÊNEAS (VETORES E MATRIZES)

1 - VARIÁVEIS COMPOSTAS HOMOGÊNEAS (VETORES E MATRIZES)

Disciplina de Algoritmos e Programação. Vetor e Matriz

PROGRAMAÇÃO A. Matrizes

Algoritmos e Programação

Exercícios: Vetores e Matrizes

PROGRAMAÇÃO A. Vetores

1. [VETOR][SALA] Cálculo da média aritmética de 10 valores armazenados em um vetor.

CAPÍTULO VIII. Variáveis Indexadas: Vetores e Matrizes CAPÍTULO VIII VARIÁVEIS INDEXADAS VARIÁVEIS INDEXADAS HOMOGÊNEAS UNIDIMENSIONAIS (VETORES)

Vetores e Matrizes. Vetores

Computação Eletrônica. Vetores e Matrizes. Prof: Luciano Barbosa. CIn.ufpe.br

LISTA DE EXERCÍCIOS: 2ª Unidade Funções

Algoritmos e Programação

BAC004 Informática Teórica T2 Professora: Fabiana Costa Guedes Lista 05 Vetores e Matrizes Vetores

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Matrizes. Para começar... Matrizes. Matrizes

Capítulo 7 Matriz. Roteiro

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

Exercícios V1 = V2 = V1 = V2 =

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

DCC001 - Programação de Computadores. Lista de Exercícios 02 - Estruturas de Dados Homogêneas (Vetores).

CONCEITOS DE ALGORITMOS

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Estruturas Indexadas Vetores e Matrizes

Algoritmos - 6. Alexandre Diehl. Departamento de Física - UFPel

Lógica de Programação e Algoritmos

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

4ª Lista de Exercícios de Programação I

LISTA DE EXERCÍCIOS: 2ª Unidade. Comandos de Repetição

Linguagem C Vetores, Matrizes e Strings

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

Lista de Exercícios Algoritmos Vetores. 10) Escreva um algoritmo em PORTUGOL que armazene em um vetor todos os números

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Introdução a programação Vetores

4ª Lista de Exercícios de Programação I

Linguagem C (Funções)

CA II Variável Composta

Faculdades Integradas Rui Barbosa Programação II Prof. Marcos Antonio Estremote. Exercícios com Vetores e Matrizes

Laboratório de Programação A Exercícios sobre vetores e matrizes

4ª Série de Exercícios Variáveis Compostas Homogêneas 1. Faça um algoritmo que leia, via teclado, 10 valores do tipo inteiro e os guarde na memória.

Aula 10: Introdução a Vetores e Matrizes

Aula 06 Introdução à Programação Matrizes

Vetores. e o programa deverá ler os valores separadamente:

Lista 2 TP060. Exercícios Vetores

EXERCÍCIOS DE RECORDAÇÃO DE ALGORITMOS

Estruturas Compostas Matriz

Lista de Exercícios 5

PROGRAMAÇÃO DE COMPUTADORES I - BCC Vetores e matrizes

SCS Sistemas de Controle / Servomecanismos. Aula 01 Introdução ao software MATLAB

LISTA DE EXERCÍCIO. 2) Fazer um algoritmo para calcular a soma entre dois números e multiplicar o resultado pelo primeiro.

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Algoritmos e Estruturas de Dados II IEC013

Computação 2. Aula 2. Profª. Fabiany Vetores e Matrizes

ESTRUTURAS DE DADOS ESTÁTICAS: VETORES

Saída Média dos valores digitados: 3.40

Introdução à Programação. Vetores. Prof. José Honorato F. Nunes

ESTRUTURAS DE CONTROLE - LAÇOS OU MALHAS DE REPETIÇÃO

Programação de Computadores 1 Lista 2. Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP

AULA 12: Variáveis Compostas Homogêneas Vetores

BCC201 Introdução à Programação ( ) Prof. Reinaldo Silva Fortes. Prática 04 Estruturas de Dados Homogêneas Vetores

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

Lista de Exercícios ICC 1 Ponteiros

Algoritmos e Estruturas de Dados. Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras PURO

Programação: Vetores

Programação de Computadores I. Aula - Vetores. Professor Ilaim Costa Junior.

Estrutura de Dados e Lógica de Programação. Cátia Alves Marcelo Nunes 102 h/a 17/08/2015 a 12/12/2015

Variável Composta Homogênea Unidimensional e Multidimensional - ARRAY

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

1. VARIÁVEIS COMPOSTAS HOMOGÊNEAS (VETORES E MATRIZES)

Arrays e Marizes. João Paulo Q. dos Santos

UNIVERSIDADE ANHANGUERA-UNIDERP

Valor: 0,0 CORREÇÃO. 1. Construa um programa que leia a sua idade, o seu nome e depois imprima na tela.

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer

Matrizes (Vetores Bidimensionais)

Lista de exercícios Matrizes

Introdução a Programação de Jogos

ESTRUTURA DE DADOS CIÊNCIA E TECNOLOGIA DO RIO. Curso de Tecnologia em Sistemas para Internet

Estruturas de Repetição WHILE e DO- WHILE

Aula 25: Funções com Arrays

Estrutura Condicional

Departamento de Sistemas de Computação Universidade de São Paulo Laboratório de Introdução a Ciência de Computação I.

Variáveis Compostas. Vanessa Braganholo

Aula 9 Oficina de Programação Matrizes. Profa. Elaine Faria UFU

Universidade Federal de Mato Grosso do Sul. Lista de Exercícios 2

Linguagem de programação Estruturas de armazenamento

Lista de exercícios Matrizes

Transcrição:

Estruturas de Dados Estáticas 1 Estruturas de Dados Estáticas Cont. Matriz (arrays multidimensionais) Uma matriz é uma variável composta homogênea bidimensional formada por uma sequência de variáveis, todas do mesmo tipo, com o mesmo identificador (mesmo nome) e alocadas sequencialmente na memória. Uma vez que as variáveis têm o mesmo nome, o que as distingue são índices que referenciam sua localização dentro da estrutura. Uma variável do tipo matriz é composta por linhas e colunas. Estruturas indexadas que necessitam de mais de um índice para identificar um de seus elementos são chamadas matrizes de dimensão n, onde n representa o número de índices requeridos. Uma matriz de dimensão 2 é uma matriz que exige dois índices para identificar um elemento em sua estrutura. Exemplo: suponha que se necessite desenhar um gráfico de uma curva no plano e que seja necessário guardar as posições dos pontos dessa curva em coordenadas x e y, uma maneira possível de armazenar em memória o total dos pontos dessa curva seria na forma de uma matriz de dimensão 2. Nela, um dado elemento conteria o valor correspondente ao ponto identificado pelo índice de x para a abscissa e y para a ordenada desse elemento. Declaração de matriz A declaração de uma matriz é muito semelhante à declaração de vetor. Delimitadas entre os colchetes, temos duas declarações de tipo associadas aos índices, separadas por uma vírgula. A convenção mais comum é dizermos que o primeiro índice identifica uma linha de uma matriz bidimensional e o segundo, uma coluna. NOME[LINHA, COLUNA] TIPO Onde, nome é o nome da variável do tipo matriz, linha é a quantidade de linhas que vão compor a matriz, coluna é a quantidade de colunas que vão compor a matriz e tipo é o tipo de dados que poderá ser armazenado na sequência de variáveis que formam a matriz. VENDAS : VETOR [1..M, 1..N] DE INTEIROS X : VETOR [3,5] DE INTEIROS 1 2 3 4 5 1 X 2 3 X[1,1] X[3,4] Exemplo de algoritmo para carregar uma matriz. PARA i 1 ATÉ 3 FAÇA PARA j 1 ATÉ 5 FAÇA ESCREVA ( Digite o número da linha, i, e coluna, j);

2 Lógica de Programação LEIA (X [i, j]); Exemplo de algoritmo para mostrar os elementos de uma matriz. PARA i 1 ATÉ 3 FAÇA PARA j 1 ATÉ 5 FAÇA ESCREVA (X[i, j]; Da mesma forma que se pode fazer operações com os elementos de um vetor, é possível fazê-las com os elementos de uma matriz. É possível acessar individualmente os elementos e, por conseguinte, os valores de cada uma das posições e realizar cálculos matemáticos e comparativos, o que dá grande margem de possíveis aplicações computacionais e práticas. Exercícios 1. Faça um programa que carregue uma matriz 2 x 2, calcule e mostre uma matriz resultante que será a matriz digitada multiplicada pelo maior elemento da matriz. 2. Faça um programa que carregue uma matriz 10 x 3 com as notas de dez alunos em três provas. Mostre um relatório com o número do aluno (número da linha) e a prova em que cada aluno obteve menor nota. Ao final do relatório, mostre quantos alunos tiveram menor nota na prova1, quantos alunos tiveram menor nota na prova 2 e quantos alunos tiveram menor nota na prova 3. 3. Faça um programa que carregue: Um vetor com oito posições com os nomes das lojas. Um outro vetor com quatro posições com os nomes dos produtos. Uma matriz com os preços de todos os produtos em cada loja. O programa deve mostrar todas as relações (nome do produto nome da loja) nas quais o preço não ultrapasse R$ 120,00. 4. Faça um programa que carregue uma matriz 10 x 20 com números inteiros e some cada uma das linhas, armazenando o resultado das somas em um vetor. A seguir, multiplique cada elemento da matriz pela soma da linha e mostre a matriz resultante. 5. Faça um programa que carregue uma primeira matriz de ordem 4 x 5 e uma segunda matriz 5 x 2, calcule e mostre a matriz resultante do produto matricial das duas matrizes anteriores, armazenando-o em uma terceira matriz de ordem 4 x 2. 6. Faça um programa que carregue uma matriz 6 x 4 com números inteiros, calcule e mostre quantos elementos dessa matriz são maiores que 30 e, em seguida, monte uma segunda matriz com os elementos diferentes de 30. No lugar do número 30 da segunda matriz coloque o número zero. 7. Faça um programa que carregue uma matriz 15 x 5 com números inteiros, calcule e mostre quais os elementos da matriz que se repetem e quantas vezes cada um está repetido. 8. Faça um programa que carregue uma matriz 10 x 10 com números inteiros, execute as trocas especificadas a seguir e mostra a matriz resultante. a linha 2 com a linha 8; a coluna 4 com a coluna 10; a diagonal principal com a diagonal secundária;

Estruturas de Dados Estáticas 3 a linha 5 com a coluna 10. 9. Faça um programa que carregue uma matriz 8 x 8 com números inteiros e mostre uma mensagem dizendo se a matriz digitada é simétrica. Uma matriz simétrica possui A[i, j] = A[j, i]. 10. Faça um programa que carregue: Um vetor com os nomes de cinco produtos. Uma matriz 5 x 4 com os preços dos cinco produtos em quatro lojas diferentes. Um outro vetor com o custo do transporte dos cinco produtos. Calcule uma segunda matriz 5 x 4 com os valores dos impostos de cada produto, sendo que esses obedecem à tabela a seguir: Preço % de imposto Até R$ 50,00 5 Entre R$ 50,01 e R$ 100,00 10 Acima de R$ 100,00 20 Mostre um relatório com o nome do produto, o número da loja onde o produto se encontra, o valor do imposto a pagar, o custo de transporte, preço e o preço final (preço acrescido do valor do imposto e do custo do transporte). 11. Faça um programa que receba: Um vetor com o nome de cinco cidades diferentes. Uma matriz 5 x 5 com a distância entre as cidades, sendo que na diagonal principal deve ser colocada automaticamente distância zero, ou seja, não deve ser permitida a digitação. Os percursos que não ultrapassam 250 quilômetros (os percursos são compostos pelos nomes das cidades de origem e pelos nomes das cidades de destino); O consumo de um veículo, ou seja, quantos quilômetros o veículo faz por litro de combustível e mostre um relatório com a quantidade de combustível necessária para percorrer cada percurso citando o mesmo (nome da cidade de origem e nome da cidade de destino); A maior distância e em que percurso se encontra (nome da cidade de origem e nome da cidade de destino). 12. Faça um programa que carregue: Um vetor com cinco números inteiros. Um outro vetor com dez números inteiros. Uma matriz 4 x 3, também com números inteiros. O maior elemento do primeiro vetor multiplicado pelo menor elemento do segundo vetor. O resultado dessa multiplicação adicionado aos elementos digitados na matriz dará origem a uma segunda matriz (resultante). A soma dos elementos pares de cada linha da matriz resultante. A quantidade de elementos entre 1 e 5 em cada coluna da matriz resultante. 13. Faça um programa que carregue uma matriz 7 x 7 de números inteiros e crie dois vetores de sete posições cada um e que contenham, respectivamente, o maior elemento de cada uma das linhas e o menor elemento de cada uma das colunas. Escreva a matriz A e os dois vetores. 14. Faça um programa que utilize uma matriz 5 x 5 que aceite três tipos de valores: múltiplo de 5, múltiplos de 11 e múltiplos de 13. Devem ser lidos apenas valores maiores que zero. Após a leitura, os números devem ser distribuídos da seguinte maneira:

4 Lógica de Programação Os múltiplos de 5 devem ocupar a diagonal principal; Os múltiplos de 11 devem ficar acima da diagonal principal; Os múltiplos de 13 devem ficar abaixo da diagonal principal. Como alguns números podem ser múltiplos de 5, de 11 e também de 13, deve-se primeiro verificar se o número digitado é múltiplo de 5. Caso não seja, deve-se verificar se é múltiplo de 11. Caso não seja, deve-se verificar se é múltiplo de 13. Caso não seja, deve-se mostrar a mensagem Número inválido. Esse programa deve observar as seguintes situações: Quando o usuário digitar um múltiplo de 5 e não houver mais espaço na diagonal principal, mostre a mensagem Diagonal totalmente preenchida. Quando o usuário digitar um múltiplo de 11 e não houver mais espaço disponível na matriz, mostre a mensagem Não existe espaço acima da diagonal principal. Quando o usuário digitar um múltiplo de 13 e não houver mais espaço disponível na matriz, mostre a mensagem Não existe espaço abaixo da diagonal principal. Quando a matriz estiver totalmente preenchida, mostre todos os elementos da matriz, juntamente com suas posições (linha e coluna). 15. Faça um programa que utilize uma matriz com dimensões máxima de cinco linhas e quatro colunas. Solicite que sejam digitados os números que serão armazenados na matriz da seguinte maneira: Se o número digitado for par, deve ser armazenado em uma linha de índice par. Se o número digitado for ímpar, deve ser armazenado em uma linha de índice ímpar. As linhas devem ser preenchidas de cima para baixo. Quando não couberem mais números pares ou ímpares, deve ser mostrada uma mensagem ao usuário. Quando a matriz estiver totalmente preenchida, deve-se encerrar a leitura dos números e mostrar todos os elementos armazenados na matriz. 16. Faça um programa que utiliza uma matriz com dimensões máxima de cinco linhas e quatro colunas e solicite que sejam digitados os números (desordenadamente) e armazene-os ordenadamente na matriz. 17. Faça um programa que utilize uma matriz com as dimensões fornecidas pelo usuário e execute as solicitações a seguir: A matriz deve ser obrigatoriamente quadrada (número igual de linhas e colunas). Realize a leitura dos elementos que vão compor a matriz. Some e mostre os elementos que estão abaixo da diagonal secundária. 18. Faça um programa que receba o estoque atual de três produtos que estão armazenados em quatro armazéns e coloque esses dados em uma matriz 5 x 3. Sendo que a última linha da matriz contém o custo de cada produto, calcule e mostre: A quantidade de itens armazenados em cada armazém. Qual o armazém possui maior estoque do produto 2. Qual o armazém possui menor estoque. Qual o custo total de cada produto. Qual o custo total de cada armazém. 19. Faça um programa que receba as vendas semanais (de um mês) de cinco vendedores de uma loja e armazene essas vendas em uma matriz.

Estruturas de Dados Estáticas 5 O total de vendas do mês de cada vendedor. O total de vendas de cada semana (todos os vendedores juntos). O total de vendas do mês. 20. Faça um programa que: Receba dez nomes de produtos e armazene-os em um vetor. Receba o estoque desses dez produtos em cada um dos cindo armazéns (matriz 5 x 10). Receba o custo dos dez produtos e armazene-os em um outro vetor. O total de itens armazenados em cada armazém. O total de itens armazenados de cada produto. O custo total de cada armazém. O nome do produto e o número do armazém que possui maior número de itens estocados. O nome do produto que possui menor custo. Bibliografia Fundamentos da Programação de Computadores Ana Fernanda Gomes Ascencio, Edilene Aparecida Veneruchi de Campos São Paulo: Pearson Prentice Hall Lógica de programação e estrutura de dados, com aplicações em Java Sandra Puga, Gerson Rissetti São Paulo: Pearson Prentice Hall, 2009 Estrutura de dados e algoritmos em Java Michael Goodrich, Roberto Tamassia Porto Alegre: Bookman, 2007