Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Agenda
1.
2.
3. 4.
5.
Relembrando... Alocao Esttica x Alocao Dinmica Vetores Bidimensionais: Matrizes Passagem de Matrizes para Funes Exerccios de Fixao
Relembrando...
Quais pontos foram vistos no ltimo captulo? Vetores.
ou, se quisermos criar uma constante simblica para a dimenso: #define N 10 int v[N]; /* A varivel que representa o vetor uma */ /* constante que armazena o endereo */ /* ocupado pelo primeiro elemento do vetor */
Uma limitao do uso de um vetor declarado estaticamente, seja como varivel global ou local, que precisamos saber de antemo a dimenso mxima do vetor.
Nesse fragmento de cdigo, n representa uma varivel com a dimenso do vetor, determinada em tempo de execuo. Aps a
Matrizes
Como armazernar 3 notas de 3 alunos?
float aluno1Nota1, aluno1Nota2, aluno1Nota3; float aluno2Nota1, aluno2Nota2, aluno2Nota3; float aluno3Nota1, aluno3Nota2, aluno3Nota3;
Matrizes
Matriz
Discutimos
no
captulo anterior
construo de
conjuntos
unidimensionais usando vetores. A linguagem C tambm permite a construo de conjuntos bi ou multidimensionais. Neste captulo, discutiremos em detalhes a manipulao de matrizes, representadas por conjuntos bidimensionais de valores numricos. As construes apresentadas aqui podem ser estendidas para conjuntos de dimenses maiores.
Matrizes
Matriz
Matrizes
Declarao de uma Matriz
por diante.
Matrizes
ndices de uma Matriz
Matrizes
ndices de uma Matriz
Matrizes
Inicializao de uma Matriz
Matrizes
Alocao de uma Matriz
Matrizes
Exemplo 6.1: Cadastrar as Notas dos Alunos.
/* Exemplo 6.1 Cadastro das Notas dos Alunos */ #include <stdio.h> #include <stdlib.h> int main (void) { int a, n, i, j; float nota[100][100]; /* Solicitar o nmero de Alunos */ printf ("Informe o numero de alunos: "); scanf ("%d", &a); /* Solicitar o nmero de Notas */ printf ("Informe o numero de notas: "); scanf ("%d", &n);
Matrizes
/* Solicita as Notas dos respectivos Alunos */ for (i=0; i<a; i++) for (j=0; j<n; j++) { printf ("Digite a Nota %d, do Aluno %d: ", j+1, i+1); scanf ("%f", ¬a [i][j]); } system("PAUSE"); return 0;
Matrizes
Exemplo 6.2: Aps cadastrar as Notas dos Alunos, calcule e apresente suas mdias.
/* Exemplo 6.2 Cadastro das Notas dos Alunos e Clculo das Mdias */ #include <stdio.h> #include <stdlib.h> int main (void) { int a, n, i, j; float media, nota[100][100]; /* Solicitar o nmero de Alunos */ printf ("Informe o numero de alunos: "); scanf ("%d", &a); /* Solicitar o nmero de Notas */ printf ("Informe o numero de notas: "); scanf ("%d", &n); printf ("\n");
Matrizes
/* Solicita as Notas dos respectivos Alunos */ for (i=0; i<a; i++) { media = 0.0; for (j=0; j<n; j++) { printf ("Digite a Nota %d, do Aluno %d: ", j+1, i+1); scanf ("%f", ¬a [i][j]); media = media + nota [i][j]; } /* Calcula e Apresenta a Mdia das Notas*/ media = media / n; /* Apresenta a Mdia dos respectivos Alunos */ printf ("A Media do Aluno %d eh: %.2f \n\n", i+1, media);
system("PAUSE"); return 0;
Passagem de Vetor para Funes Consiste em passar o endereo da primeira posio do vetor. Funo deve ter parmetro do tipo ponteiro para armazenar valor Passar um vetor para uma funo equivalente a Passar o
De qualquer modo, o acesso a elementos da matriz dentro da funo feito de forma usual, com indexao dupla.
referncia.
Obs1.: Apresentar bibliografia e exemplos referenciando esta prtica. Obs2.: No utilizar Alocao Dinmica.
Matrizes
E como seria para trabalharmos com Alocao Dinmica em Matrizes? o que veremos no prximo captulo, quando discutirmos: Matriz representada por Vetor Simples; Matriz representada por Vetor de Ponteiros; Operaes com Matrizes.
Reviso
Quais pontos foram vistos nesta aula? Alocao Esttica x Alocao Dinmica.
Matrizes.
Passagem de Matrizes para Funes.
ESTRUTURA DE DADOS