A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

“Introdução a Computação” Capítulo II Estruturas de Dados

Apresentações semelhantes


Apresentação em tema: "“Introdução a Computação” Capítulo II Estruturas de Dados"— Transcrição da apresentação:

1 “Introdução a Computação” Capítulo II Estruturas de Dados
Universidade Federal de São Carlos Departamento de Computação “Introdução a Computação” Capítulo II Estruturas de Dados Luanna Lopes Lobato Mestrado em Ciência da Computação Sistemas Distribuídos e Redes São Carlos – Maio 2006

2 Variáveis compostas Homogêneas
Possibilidade de acesso: Variáveis; Conjunto de dados agrupados. Para calcular média da sala e informar quais alunos tem nota >= média: Declarar num de variáveis = num de alunos – Impraticável Utiliza-se Estruturas de Dados: Vetores ou Matrizes

3 Unidimensionais - Vetores
São posições de memória, de mesmo conteúdo, identificadas por um mesmo nome (identificador), individualizadas por índices; Exemplo: Conjunto de NOTAS: Declaração: Var identificador: Array [Li..Ls] of tipo; 10 20 30 40 50 60 70 80 Vetor 1 2 3 4 5 6 7 8 9

4 Exemplo de atribuição Var vetInt: Array[1..10] of integer;
Var vetChar: Array[1..26] of char; Var vetStr: Array[1..15] of String[2]; 10 20 30 40 50 60 70 80 1 2 3 4 5 6 7 8 9 A B C D V W X Y Z 1 2 3 4 ... 22 23 24 25 26 aa bb cc dd vv ab cd ve dv 1 2 3 4 ... 11 12 13 14 15

5 Atribuição Referência a todo vetor: Atribuição de um vetor para outro:
V1:=V2; {V1 mesmo tipo e tam de V2} Referência a um único elemento do vetor: Atribuição Leitura Uso de Expressões

6 Referências ao Vetor V1[5] := 2; {V1 vetor de inteiros}
V1[i+1] := V1[i+2]; {i>=0} read(V1[1]); write(V1[i]); For i:=1 to N do begin read(V1[i]); end;

7 Exercícios Dada uma seqüência de n números, imprimi-la na ordem inversa à da leitura. Fazer um programa que leia 50 valores inteiros, armazene-os em um vetor, calcule e imprima a média dos valores. 1/30

8 Resolução Exercício 2 Program calculaMedia; Uses crt; var i: integer;
vetor: array [1..5] of integer; soma, media: real; begin clrscr; soma:=0; {Inicializa variavel com 0} {Leitura dos valores} for i:=1 to 5 do writeln('Informe o valor ', i); readln(vetor[i]); soma := soma + vetor[i]; {Soma os valores} end; {Calculo da media} media := soma/5; writeln('A media dos valores eh:', media:1:5); readln; end.

9 Bidimensionais - Matrizes
Declaração: Var identificador: Array [Li..Ls, Li..Ls] of tipo; Exemplo: Var Matriz: Array [1..5, 1..2] of integer; Matriz 1 2 3 4 5 15 25 30 11 10 20 40 50

10 Atribuição Referência a toda matriz:
Atribuição de uma matriz para outra: M1:=M2; {M1 mesmo tipo e tam de M2} Referência a um único elemento da matriz: Atribuição Leitura Uso de Expressões 1/30

11 Referências M1[1,2] := 2; {M1 matriz de inteiros}
M1[i+1,j] := M1[i+2,j+1]; {i, j>=0} read(M1[1,3]); write(M1[i,j]); for i:=1 to N do for j:= 1 to M do begin writeln(‘Entre com M[’i,’,’,j,’]’); read(M1[i,j]); end;

12 Exercícios Dada uma matriz de tamanho 5 x 5, preencher a matriz com valores iguais a soma de suas posições e imprimir o resultado. Ler 2 matrizes 5x4, calcular e escrever a matriz soma entre elas. 1/30

13 Resolução Exercício 2 Program somaMatrizes; Uses crt;
Var i,j: integer; A, B, Soma: array [1..5, 1..4] of integer; Begin clrscr; {Lendo a Matriz A} for i:= 1 to 5 do for j:= 1 to 4 do begin writeln('Escreva valor de A[',i,',',j,']'); readln(A[i,j]); end;

14 {Lendo a Matriz B} for i:= 1 to 5 do for j:= 1 to 4 do begin writeln('Escreva valor de B[',i,',',j,']'); readln(B[i,j]); end; writeln(' '); {Somando as matrizes} Soma[i,j]:= A[i,j] + B[i,j]; write(Soma[i,j]); {Imprime as linhas da matriz} writeln(' '); {pula linha para imprimir proxima linha} readln; end.

15 “Introdução a Computação” Capítulo II Estruturas de Dados
Universidade Federal de São Carlos Departamento de Computação “Introdução a Computação” Capítulo II Estruturas de Dados Luanna Lopes Lobato Mestrado em Ciência da Computação Sistemas Distribuídos e Redes São Carlos – Maio 2006

16 Exercício Fixação Dadas duas matrizes reais  Amxn e Bnxp, calcular o produto de A por B.

17 program Produto; var m, n, nb, p, i, j, k: integer; Prod: real; A, B, C: array [1..50,1..50] of real; begin write ('Entre com o tamanho(mXn) da matriz A: '); readln(m,n); write ('Digite a matriz A: '); for i:=1 to m do for j:=1 to n do read(A[i,j]); write ('Entre com o tamanho(nXp) da matriz B: '); readln(nb,p); if nb<>n then write('Nao existe o produto da matriz A por B!!') else write ('Digite a matriz B: '); for i:=1 to n do for j:=1 to p do read(B[i,j]); i := 1;

18 while i<=m do begin j := 1; while j<=p do Prod := 0; for k:=1 to n do Prod := Prod + A[i,k]*B[k,j]; C[i,j] := Prod; j := j+1; Prod := 0 end; i := i+1 writeln ('Matriz A X B ='); for i:=1 to m do for j:=1 to p do write(C[i,j],' '); writeln end end.


Carregar ppt "“Introdução a Computação” Capítulo II Estruturas de Dados"

Apresentações semelhantes


Anúncios Google