Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Estadual Vale do Acarau - UVA Curso: Ciências da Computação Disciplina: Laboratório de Programação Professor: Cláudio Carvalho Lista 03 OBSERVAÇÕES: Em todos os exercícios abaixo em que a ordem de cada matriz não estiver especificada, esta ordem deverá ser fornecida pelo usuário. A ordem deve ser no máximo 30 x 30. 01. Gerar uma matriz Amxn com números aleatórios de 1 a 10 e, em seguida, gerar uma matriz Bnxm que seja a transposta de A. 02. Gerar duas matrizes A e B de ordem n, com números aleatórios de 1 a 9, e gerar uma terceira matriz C correspondente à soma de A e B. 03. Gerar duas matrizes A e B de ordem n, com números aleatórios de 1 a 9, e gerar uma terceira matriz C correspondente ao produto A x B. 04. Gerar uma matriz A de ordem n com valores aleatórios de 1 a 9, e apresentar as somas dos elementos das suas diagonais (principal e secundária). 05. Em uma matriz Anx4, as três primeiras colunas representam as notas de um aluno cuja matrícula é o índice da linha da matriz. Cada célula da última coluna contém a média das células anteriores na mesma linha. Cada célula da última linha contém a média das células anteriores na mesma coluna. Construir um programa que leia um número N de alunos de uma turma, e que leia também as três notas de cada um destes alunos, e armazene estas notas numa matriz An+1x4, conforme descrito anteriormente (As notas devem ter no máximo duas casas decimais). Após este processo, o programa deverá apresentar uma tela de resultado conforme exemplo a seguir: Ex.: N = 3 0 1 2 3 0 10.00 8.00 6.00 8.00 1 4.00 6.00 8.00 6.00 2 5.00 9.00 8.00 7.33 3 6.33 8.67 7.33 7.11 Após lidos os números (células brancas), o programa deveria apresentar a seguinte tela (apenas os alunos com média superior ou igual a 7 estarão aprovados): ----------------------------------------- Aluno AP.01 AP.02 AP.03 Media Resultado ----------------------------------------- 00001 10.00 8.00 6.00 8.00 Aprovado 00002 4.00 6.00 8.00 6.00 Reprovado 00003 5.00 9.00 8.00 7.33 Aprovado ----------------------------------------- Media 6.33 8.67 7.33 7.11 ----------------------------------------- 06. Gerar uma matriz Amxn, cujos elementos devem ser preenchidos da seguinte forma: Aij = i + j, se j é par; senão Aij = |2i – j|. 07. Gerar uma matriz A de ordem n com números aleatórios de 1 a 10 e, em seguida, inverter as suas diagonais (a principal passa a ser secundária, e a secundária passa a ser principal). 08. Gerar uma matriz A de ordem n, com valores inteiros de 1 a n2, da seguinte forma: Ex.: n = 3 1 3 6 2 5 8 4 7 9 09. Gerar uma matriz quadrada A de ordem n que deve ser preenchida com valores de 1 a n2, conforme os exemplos: 10. Gerar uma matriz de ordem n de acordo com os exemplos: N = 5 N = 4 1 2 3 4 5 1 2 3 4 10 9 8 7 6 8 7 6 5 11 12 13 14 15 9 10 11 12 20 19 18 17 16 16 15 14 13 21 22 23 24 25 11. Gerar uma matriz quadrada A de ordem n com valores inteiros e aleatórios de 1 a 9. Em seguida, leia um número x (de 1 a n), e gere uma matriz B correspondente à A com exceção dos elementos da linha e da coluna x. Ex.: n = 4 e x = 2 A (4x4) B (3x3) 1 2 3 4 1 3 4 5 6 7 8 9 2 3 9 1 2 3 4 6 7 4 5 6 7 12. Ler a ordem n de uma matriz quadrada (n deve ser múltiplo de 3) e preencher a matriz da seguinte forma: Ex.: N = 9 N = 6 N = 3 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * n = 3 n = 4 n = 5 1 2 3 1 2 3 4 1 2 3 4 5 8 9 4 12 13 14 5 16 17 18 19 6 7 6 5 11 16 15 6 15 24 25 20 7 10 9 8 7 14 23 22 21 8 13 12 11 10 9 13. Ler a ordem n (ímpar) de uma matriz quadrada e preencher a matriz da seguinte forma: Ex.: N = 5 N = 7 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 14. Gerar uma matriz de ordem n de acordo com os exemplos: N = 7 N = 6 0 1 1 1 1 1 0 0 1 1 1 1 0 4 0 1 1 1 0 2 4 0 1 1 0 2 4 4 0 1 0 2 2 4 4 0 0 2 2 4 4 4 0 2 2 2 4 4 0 0 2 2 4 4 0 3 0 2 2 4 0 3 3 0 2 4 0 3 3 3 0 2 0 3 3 3 3 0 0 3 3 3 3 3 0 15. Diz-se que uma matriz é um quadrado mágico quando ela não possui elementos repetidos e as somas dos todos os elementos de cada uma de suas linhas, colunas e diagonais (principal e secundária) são iguais. Uma das soluções para se gerar um quadrado mágico é preencher a matriz como segue: O primeiro elemento a entrar na matriz deverá ocupar a posição central da primeira linha e terá o valor 1. Os próximos elementos (2, 3, 4, 5 ... até n2) deverão ser colocados na linha superior e na coluna mais à direita da célula atual. Se a coluna atual já é a ultima, a próxima coluna passa a ser a primeira. Se a linha atual já é a primeira, a próxima linha passa a ser a última. Se a próxima célula da matriz já está preenchida (com valor diferente de zero), a próxima célula a ser preenchida deverá ser então a que está imediatamente abaixo da última célula preenchida. 0 1 0 0 1 0 0 1 0 As células marcadas representam o lugar onde os valores deveriam ser armazenados. As vermelhas indicam que o lugar que, pela regra, seria o endereço do próximo número, já está ocupado. Nesse caso, o número deve ser armazenado na mesma coluna do número anterior, uma linha abaixo. No exemplo acima: O 4 deveria ser inserido na célula acima e a direita da que está o 3, mas esta já está ocupada pelo ele mento 1. Logo, ele fica na célula imediatamente abaixo do 3. O 7 deveria ser inserido na célula ocupada pelo 4 (ultima linha e primeira coluna). Logo, ele fica na célula imediatamente abaixo do 6. 0 0 0 0 0 0 3 0 0 0 0 0 0 0 2 0 0 2 0 1 0 0 1 0 0 1 6 3 0 0 3 5 0 3 5 0 4 0 2 4 0 2 4 0 2 0 1 6 8 1 6 8 1 6 3 5 7 3 5 7 3 5 7 4 0 2 4 0 2 4 9 2 Proponha um programa que leia a ordem (ímpar) de uma matriz e, em seguida, preencha-a de modo que se obtenha um quadrado mágico. (Sugestão: como o C não faz a inicialização das variáveis locais, inicializar a matriz com 0 (Zeros)).
Compartilhar