Baixe o app para aproveitar ainda mais
Prévia do material em texto
Programação em C (Parte 5) Prof. Valério Rosset Profa. Mariá C. V. N. Rosset Slides adaptados do material da Profa. Rosely Sanches e Simone Senger de Souza, ICMC. Matrizes São variáveis compostas multidimensionais. Podem ter N dimensões. No caso mais simples uma matriz bidimensional. Matrizes bidimensionais podem ser definidas em C da seguinte forma: <tipo> <variável> [Núm. Linhas][Núm. Colunas]; char matriz [L] [C]; O exemplo acima define uma matriz de L linhas e C colunas Matrizes Tradicionalmente utilizamos o primeiro indicador para linha e o segundo para coluna. Então dados L=C=3, temos uma matriz 3 x 3; Uma matriz de inteiros em C: int matriz [3] [3]; 0 0 0 0 0 0 0 0 0 0 1 2 0 1 2 Assim como os vetores as matrizes podem ser de qualquer tipo: (float, double, char etc) índices de coluna índices de Linha Matriz Bidimensional Atribuição na matriz: matriz[0][0] = 54; 54 0 0 0 0 0 0 0 0 0 1 2 0 1 2 Linha Coluna Matriz Bidimensional Atribuição na matriz: matriz[1][2] = 25; 54 0 25 0 0 0 0 0 0 0 1 2 0 1 2 Linha Coluna Matriz Bidimensional Atribuição na matriz: matriz[2][1] = 30; 54 0 25 0 0 0 0 30 0 0 1 2 0 1 2 Linha Coluna Matriz Bidimensional Para percorrer a matriz: Utilizamos duas variáveis. Uma para linha e outra para coluna. Por exemplo: i e j. e uma estrutura de repetição composta: for sobre for. 54 0 25 0 0 0 0 30 0 0 1 2 0 1 2 Matriz Bidimensional Inicializando a matriz: for (i=0;i<3;i++) for (j=0;j<3;j++) matriz[i][j] = 0; 0 0 25 0 0 0 0 30 0 0 1 2 0 1 2 Linha Coluna i = 0 e j = 0 Matriz Bidimensional Inicializando a matriz: for (i=0;i<3;i++) for (j=0;j<3;j++) matriz[i][j] = 0; 0 0 25 0 0 0 0 30 0 0 1 2 0 1 2 Linha Coluna i = 0 e j = 1 Matriz Bidimensional Inicializando a matriz: for (i=0;i<3;i++) for (j=0;j<3;j++) matriz[i][j] = 0; 0 0 0 0 0 0 0 30 0 0 1 2 0 1 2 Linha Coluna i = 0 e j = 2 Matriz Bidimensional Inicializando a matriz: for (i=0;i<3;i++) for (j=0;j<3;j++) matriz[i][j] = 0; 0 0 0 0 0 0 0 30 0 0 1 2 0 1 2 Linha Coluna i = 1 e j = 0 … Matriz Bidimensional Inicializando a matriz: for (i=0;i<3;i++) for (j=0;j<3;j++) matriz[i][j] = 0; 0 0 0 0 0 0 0 0 0 0 1 2 0 1 2 Linha Coluna … i = 2 e j = 2 Exercícios 1) Escreva um programa em C que leia como entrada duas matrizes A e B (3 x 3), calcule a soma das duas matrizes e apresente o resultado. 2) Escreva um programa em C que leia a entrada de duas matrizes A e B (3 x 3), calcule a multiplicação das duas matrizes e apresente o resultado. Exercícios 3) Escreva um programa em C que leia como entrada uma matriz A (M x N) e apresente a sua transposta. 4) Escreva um programa em C que leia a entrada de uma matriz A (N x N) e verifique se ela é simétrica. Slide 118 Slide 119 Slide 120 Slide 121 Slide 122 Slide 123 Slide 124 Slide 125 Slide 126 Slide 127 Slide 128 Slide 129 Slide 130 Slide 131
Compartilhar