Exercícios com Matrizes


1.  Dada uma matriz real A com m linhas e n colunas e um vetor real V com n elementos, determinar o produto de A por V.

2.  Um vetor real X com n elementos é apresentado como resultado de um sistema de equações lineares Ax = B cujos coeficientes são representados em uma matriz real Amxn e os lados direitos das equações em um vetor real B de m elementos. Verificar se o vetor X é realmente solução do sistema dado.

3.  Dadas duas matrizes reais  Amxn e Bnxp, calcular o produto de A por B.

               Solução em C
               Solução em Pascal

4.  Dada uma matriz real  Amxn, verificar se existem elementos repetidos em A.

5.  Dizemos que uma matriz inteira Anxn  é uma matriz de permutação se em cada linha e em cada coluna houver n-1 elementos nulos e um único elemento igual a 1.

Exemplo:
A matriz abaixo é de permutação:
Observe que
não é de permutação.
Dada uma matriz inteira Anxn, verificar se A é de permutação.
 

6.  Dada uma matriz  Amxn, imprimir o número de linhas e o número de colunas nulas da matriz.

Exemplo: m = 4 e n = 4

tem 2 linhas nulas e 1 coluna nula.


7.  Dizemos que uma matriz quadrada inteira é um quadrado mágico (1) se a soma dos elementos de cada linha, a soma dos elementos de cada coluna e a soma dos elementos das diagonais principal e secundária são todas iguais.

Exemplo: A matriz
é um quadrado mágico.
Dada uma matriz quadrada Anxn , verificar se A é um quadrado mágico.
 

8.  (a) (MAT 83) Imprimir as n primeiras linhas do triângulo de Pascal (2).

1                                                                                 

1    1                                                                  

1    2    1                                                  

1    3    3    1                                  

1    4    6    4    1                  

1    5   10   10    5    1
:
(b) Imprimir as n primeiras linhas do triângulo de Pascal usando apenas um vetor.

9.  (MAT 89) Um jogo de palavras cruzadas pode ser representado por uma matriz  Amxn  onde cada posição da matriz corresponde a um quadrado do jogo, sendo que 0 indica um quadrado branco e -1 indica um quadrado preto. Indicar na matriz as posições que são início de palavras horizontais e/ou verticais nos quadrados correspondentes (substituindo os zeros), considerando que uma palavra deve ter pelo menos duas letras. Para isso, numere consecutivamente tais posições.

Exemplo: Dada a matriz

A saída deverá ser

 


               Solução em C

10.  Uma matriz  D8x8  pode representar a posição atual de um jogo de damas (3), sendo que 0 indica uma casa vazia, 1 indica uma casa ocupada por uma peça branca e -1 indica uma casa ocupada por uma peça preta. Supondo que as peças pretas estão se movendo no sentido crescente das linhas da matriz D, determinar as posições das peças pretas que:

(a) podem tomar peças brancas;

(b) podem mover-se sem tomar peças;

(c) não podem se mover.
 
 

11.  (FEA 85) Deseja-se atualizar as contas correntes dos clientes de uma agência bancária. É dado o cadastro de n clientes contendo para cada cliente o número de sua conta e o seu saldo; o cadastro está ordenado pelo número da conta. Em seguida, é dado o número de operações efetuadas no dia e, para cada operação, o número da conta, uma letra C ou D indicando se a operação é de crédito ou débito e o valor da operação . Emitir o cadastro de clientes atualizado.

12.  (FEA 68) Deseja-se fazer a emissão da folha de pagamento de uma empresa. Para cada um dos n funcionários da empresa são dadas as seguintes informações:

NOME
SAL (salário)
HED (horas extras diurnas)
HEN (horas extras noturnas)
ND (número de dependentes)
FAL (faltas em horas)
DE (descontos eventuais)
REF (gastos com refeições feitas na empresa)
VAL (vales retirados durante o mês).
Emitir as seguintes informações:
nome,
salário,
horas extras = HED * SAL/160 + HEN * 1.2 * SAL/160,
salário família = ND * 0.05 * salário mínimo vigente,
salário bruto = salário + horas extras + salário família.
Descontos efetuados:
INAMPS = 0.08 * SAL,
faltas = FAL * SAL/160,
refeições,
vales,
descontos eventuais,
imposto de renda = 0.08 * salário bruto.
Salário líquido = salário bruto - desconto total.

13.  Um campeonato de futebol foi disputado por n times identificados pelos seus nomes. Para cada time são considerados os seguintes dados:

PG - número de pontos ganhos (2 por vitória, 1 por empate, 0 por derrota) 

GM - número de gols marcados 

GS - número de gols sofridos (gols difíceis de marcar) 

S  - saldo de gols (GM - GS para os não atletas) 

V  - número de vitórias 

GA - gol average (GM / GS, cuidado se GS = 0 )
(a) Dados os resultados de m jogos, imprima uma tabela com todos os dados (PG, GM, GS, S, V, GA, igual àquela que sai no jornal) dos n times. Cada resultado é representado na forma (t1,t2,n1,n2) cuja interpretação é a seguinte: no jogo t1 x t2 o resultado foi n1 x n2.
Exemplo: (São Paulo, Milan, 3, 2) que foi o placar da vitória que deu ao São Paulo o BICAMPEONATO MUNDIAL.
(b) Com os mesmos dados do item (a), imprima a classificação dos times no campeonato (do primeiro para o último). A classificação é pelo número de pontos ganhos (PG) e em segundo lugar pelo saldo de gols (S). Se houver empate segundo os dois critérios, classifique os times envolvidos como quiser (por exemplo, pelas regras do campeonato paulista de 1975 (4)).

(c) Um grupo de torcedores organizou um bolo (5) sobre os resultados dos m jogos. Cada resultado certo vale 5 pontos (inclusive o placar) ou 3 pontos (apenas o vencedor ou empate). Com os dados do item (a) e mais os palpites que são compostos de m pares de números inteiros , onde o par representa o palpite do i-ésimo jogo, descubra o nome do ganhador do bolão.

14.  (POLI 94) Os elementos aij de uma matriz inteira Anxn representam os custos de transporte da cidade i para a cidade j. Dados n itinerários, cada um com k cidades, calcular o custo total para cada itinerário.

Exemplo:

O custo do itinerário 0 3 1 3 3 2 1 0 é
a03 + a31 + a13 + a33 + a32 + a21 + a10 = 3 + 1 + 400 + 5 + 2 + 1 + 5 = 417


15.  Considere n cidades numeradas de 0 a n-1 que estão interligadas por uma série de estradas de mão única. As ligações entre as cidades são representadas pelos elementos de uma matriz quadrada  Lnxn, cujos elementos lij assumem o valor 1 ou 0, conforme exista ou não estrada direta que saia da cidade i e chegue à cidade j. Assim, os elementos da linha i indicam as estradas que saem da cidade i, e os elementos da coluna j indicam as estradas que chegam à cidade j.

Por convenção lii = 1. A figura mostra um exemplo para n = 4.
 

 
 


(a) Dado k, determinar quantas estradas saem e quantas chegam à cidade k.

(b) A qual das cidades chega o maior número de estradas?

(c) Dado k, verificar se todas as ligações diretas entre a cidade k e outras são de mão dupla.

(d) Relacionar as cidades que possuem saídas diretas para a cidade k.

(e) Relacionar, se existirem:

i. As cidades isoladas, isto é, as que não têm ligação com nenhuma outra;
ii. As cidades das quais não há saída, apesar de haver entrada;
iii. As cidades das quais há saída sem haver entrada.
 
(f) Dada uma seqüência de m inteiros cujos valores estão entre 0 e n-1, verificar se é possível realizar o roteiro correspondente. No exemplo dado, o roteiro representado pela seqüência (m=5) 2 3 2 1 0 é impossível.

(g) Dados k e p, determinar se é possível ir da cidade k para a cidade p pelas estradas existentes. Você consegue encontrar o menor caminho entre as duas cidades?

h) Dado k, determinar se é possível, partindo de k, passar por todas as outras cidades apenas uma vez e retornar a k.
    Sugestões:

i. Pule esse item.
ii. Teste todas as possibilidades.



Notas do texto
1) O primeiro registro conhecido de um quadrado mágico vem da China e data de Sec II a.C. (esta é séria).
2) Descoberto em 1654 pelo matemático francês Blaise Pascal.
3) Cavalheiros também podem jogar. E se você não sabe jogar damas está na hora de aprender.
4) Último ano em que a Portuguesa foi campeã (ha!, ha! ha!).
5) Bolo ou bolão, original do grego, significa aposta.


Topo da Página Índice das Listas

História da Computação | Listas de Exercícios | Problemas Resolvidos | macmulti@ime.usp.br