Algoritmos e Programação _ Departamento de Informática Turma 2015 – Noturno Lista de exercícios – Vetores/Matrizes INSTRUÇÕES IMPORTANTES – LEIA COM ATENÇÃO: Sugestão: Inicialmente desenvolver a ideia dos programas em pseudocódigo ou linguagem de programação Pascal (escrever a mão), posteriormente implementar em um dos Ambientes de Programação C, utilizados na disciplina, preferencialmente Dev C++. Atenção: para os códigos fontes gerados, seguir a mesma nomenclatura sugerida para cada um dos arquivos, entre parênteses. Dois dos exercícios (problemas) abaixo serão escolhidos aleatoriamente pelo professor para apresentação. Os exercícios escolhidos (item anterior) correspondem aos 20% (vinte por cento) da nota de avaliação relativa aos trabalhos práticos do bimestre (Valor: 2,0 pontos). No dia 24/novembro/2015 (terça-feira) no horário das aulas teóricas e dia da avaliação bimestral (teórica), o professor informará quais os exercícios que foram selecionados para apresentação. Os algoritmos (pseudocódigos) e códigos em linguagem de programação dos exercícios anteriormente citados deverão ser entregues conforme descrito a seguir: o Turmas NA e NB – no dia 30/novembro/2015 – dia e horário de aula prática, deverão ser entregues impressos ou escritos a mão os arquivos fontes correspondentes, pessoalmente e também apresentados ao Prof. Jeferson Antonio Quimelli, a execução dos respectivos programas. Não esquecer de identificar os documentos, com o seu RA e nome. o Turmas ND e NP – no dia 01/dezembro/2015 – dia e horário de aula teórica, deverão ser entregues impressos ou escritos a mão, pessoalmente ao Prof. Ivo Mario Mathias e também o envio por e-mail dos arquivos fontes correspondentes para [email protected]. Não esquecer de identificar os documentos, com o seu RA e nome. _______________________________________________________________________________ Professores: Ivo Mário Mathias/Jeferson Antonio Quimelli - novembro/2015 1/2 Algoritmos e Programação _ Departamento de Informática Exercícios/Problemas 1) (Prog_exe_20) - A partir de um conjunto de números inteiros, digitados aleatoriamente, máximo 100 valores, escrever um algoritmo e codificá-lo em linguagem C para: a) Eliminar todas as redundâncias, caso existam, de modo que não restem números repetidos, deixar apenas um elemento de cada valor. Para que não fiquem espaços sem valores, ocupar as posições dos valores eliminados agrupando todos os elementos restantes no início do vetor, na mesma ordem em que se encontravam originalmente e mostrar o conjunto resultante; b) Trocar os elementos de posição (índice) ímpar com o de posição par imediatamente seguinte e mostrar o conjunto modificado; c) Encontrar o valor do menor e do maior elemento deste conjunto, assim como, as suas posições relativas e exibir os respectivos valores e suas posições; d) Ler outro conjunto de valores via teclado com a mesma quantidade de elementos do primeiro e calcular o produto escalar entre eles, mostrando os conjuntos lidos e o produto calculado. O produto escalar é calculado da seguinte forma: cada valor do primeiro conjunto deve ser multiplicado pelo valor do elemento correspondente do segundo e os resultados devem ser somados. Por exemplo: u = [3, 5, 2, 6, 9, 2, 3, 4, 6, 1] v = [2, 1, 5, 7, 2, 4, 2, 1, 4, 3] resulta: u · v = 3 * 2 + 5 * 1 + 2 * 5 + 6 * 7 + 9 * 2 + 2 * 4 + 3 * 2 + 4 * 1 + 6 * 4 + 1 * 3 u . v = 126 2) (Prog_exe_21) - Escrever um algoritmo e codificá-lo em linguagem C que leia uma matriz de valores inteiros 5 por 5 e a exiba. A seguir, troque a 2ª linha com a 5ª linha, a 3ª coluna com a 4ª coluna, a diagonal principal com a secundária e, por fim, a 1ª linha com a 5ª coluna. Mostre a matriz assim modificada. 3) (Prog_exe_22) - Escrever um algoritmo e codificá-lo em linguagem C que leia duas matrizes de valores inteiros 4 por 6 e crie uma terceira matriz, que seja a soma das duas primeiras, e uma quarta, que seja a diferença entre a primeira e a segunda. Mostrar as matrizes lidas e calculadas. 4) (Prog_exe_23) - Escrever um algoritmo e uma matriz de valores inteiros 6 por 6 e ormente multiplicar a matriz pelo valor pria matriz. O outro passo é linearizar tidos nela em um vetor de 36 elementos e codificá-lo em linguagem C que leia um valor inteiro qualquer, posterilido e colocar o resultado na próa matriz, colocando os valores conmostrar o conteúdo do vetor. 5) (Prog_exe_24) - Escrever um algoritmo e codificá-lo em linguagem C que leia uma matriz de valores inteiros 5 por 5 e crie 2 vetores de 5 elementos cada um, o primeiro contendo as somas das linhas e o segundo as somas das colunas da matriz. Mostrar a matriz e os vetores criados. _______________________________________________________________________________ Professores: Ivo Mário Mathias/Jeferson Antonio Quimelli - novembro/2015 2/2