Вы находитесь на странице: 1из 27

Linguagens de Programao

Sumrio:

Linguagem C:Matrizes

Interpretao e aritmtica
simples

exemplos de aplicao

Arrays multidimensionais

Matrizes (dois ndices)

Cubos (3x2x2)

hiper-cubos
int A[3][3];
float B[3][2][2];
int C[3][4][2][4][3];

Interpretao ??

Matrizes

Declarar
Inicializar
Output...
int A[4][3]; int l,c;
for(l=0;l<nl;l++)
for(c=0;c<nc;c++)
A[l][c]= ...;

Matrizes

Declarar

Inicializar
int A[4][3]; int l,c;
for(l=1;l<nl;l++)
for(c=1;c<nc;c++)
A[l][c]= ...;
!!!

Matrizes

Declarar & inicializar:


int A[4][3]={3,4,0,1,-4,8,6,-6};

Matrizes

Output...
for(l=0;l<nl;l++)
{ for(c=0;c<nc;c++)
{ printf("%7.3f "),A[l][c]);
}
printf("\n");
}

Matrizes
int A[4][4],B[4][4],C[4][4];
for(l=0;l<nl;l++)
for(c=0; c<nc; c++)
C[l][c]=A[l][c]+B[l][c]
... E se quisermos
somar A com a
transposta de B ?

Matrizes - multiplicao
Regras da
multiplicao ?
1
1
1
]
1

32 31
22 21
12 11
a a
a a
a a
A
1
]
1

24 23 22 21
14 13 12 11
b b b b
b b b b
B
B A C

Matrizes - multiplicao
1
1
1
]
1

32 31
22 21
12 11
a a
a a
a a
A
1
]
1

24 23 22 21
14 13 12 11
b b b b
b b b b
B
1
]
1

24 21
12 11
c c
c c
C


kj ik ij
b a C

Matrizes - multiplicao
Dimensionar A, B, e C com as
dimenses correctas...
for(l=0; l<nl; l++)
for(c=0; c<nc; c++)
for(k=0; k<???)
C[l][c]=C[l][c]+A[l][k]+B[k]
[c]

Calcule a matriz soma
1
1
1
]
1

8 -4
0 1
4 3
A
Matrizes - exerccio
1
1
1
]
1

6 5
3 -7
5 6
B
Sendo A e B as seguintes matrizes:

Matrizes - Outros exerccios

declare uma matriz de 5x5


(ou 6x6, etc...);

inicialize a matriz com ns


aleatrios entre -50..50

troque os elementos da 3
coluna com os elementos
da ltima coluna

troque os elementos pares


da 1 linha com os
respectivos elementos da
3 linha.

Multiplique por -1 os
elementos da diagonal
1
1
1
1
1
1
]
1

nn n
n
a a
a
a
a a a a
A
1
31
21
1 13 12 11
...
...

Matrizes - Outros exerccios
Declare uma matriz de 5x5
(ou 6x6, etc...);
inicialize a matriz (com
excepo da ltima linha e
coluna) com valores
aleatrios, entre 1 e 100;
Nos elementos da ltima
linha, coloque o somatrios
da coluna respectiva
(...)
1
1
1
1
1
1
]
1

nn n
n
a a
a
a
a a a a
A
1
31
21
1 13 12 11
...
...

Aula prtica

Ambiente Turbo C

Matrizes

Linguagens de Programao

Sumrio:

Matrizes:
(SEs e Inverso)

Compilao de
mdulos separados

Compilao em linha
de comando

Opes de compilao

1
1
1
]
1

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
A
b x A
1
1
1
]
1

3
2
1
x
x
x
x
1
1
1
]
1

3
2
1
b
b
b
b

1
1
1
]
1

3
2
1
x
x
x
x
1
1
1
]
1

3
2
1
b
b
b
b


j ij i
x a b
1
1
1
]
1

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
A

Triangularizao
1
1
1
]
1

3
2
1
b
b
b
b
11 21 2
/ a a f
) 1 ( 2 2
2
linha f linha linha
1
1
1
]
1

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
A
1
1
1
]
1

33
23 22
13 12 11
0 0
0 '
a
a a
a a a
A
Condensao

Condensao (A, A'',...)
1
1
1
]
1


3
1 2 2
1
b
b f b
b
b
11 21 2
/ a a f
1
1
1
]
1


33 32 31
13 2 23 12 2 22 11 2 21
13 12 11
a a a
a f a a f a a f a
a a a
A

Condensao
1
1
1
]
1


3
1 2 2
1
b
b f b
b
b
1
1
1
]
1


33 32 31
13 2 23 12 2 22
13 12 11
) ! ( 0
a a a
a f a a f a zero
a a a
A
11 31 3
/ a a f
) 1 ( 3 3
3
linha f linha linha

Condensao
1
1
1
]
1

1 3 3
1 2 2
1
b f b
b f b
b
b
1
1
1
]
1



13 3 33 12 3 32
13 2 23 12 2 22
13 12 11
) ! ( 0
) ! ( 0
a f a a f a zero
a f a a f a zero
a a a
A

Condensao
1
1
1
]
1

1 3 3
1 2 2
1
b f b
b f b
b
b
1
1
1
]
1



13 3 33 12 3 32
13 2 23 12 2 22
13 12 11
) ! ( 0
) ! ( 0
a f a a f a zero
a f a a f a zero
a a a
A
22 32 3
/ a a f
) 2 ( 3 3
3
linha f linha linha

Condensao
1
1
1
]
1


...
3
1 2 2
1
b
b f b
b
b
1
1
1
]
1


... 0 0
0
33
13 2 23 12 2 22
13 12 11
a
a f a a f a
a a a
A

33 3 3
/ a b x
1
1
1
]
1

3
2
1
b
b
b
b
1
1
1
]
1

33
23 22
13 12 11
0 0
0
a
a a
a a a
A
( )
22 23 3 2 2
a a x b x
( )
11 12 2 13 3 1 1
a a x a x b x
ii
i
n k
ik k i i
a a x b x
,
_

1

Sist. Equaes (resumo)

A, b

Triangularizao

Substituio regressiva

Inverso de matrizes
1
1
1
]
1

1 0 0
0 1 0
0 0 1
I
I B A
1
1
1
]
1

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
A
1
1
1
]
1

33 32 31
23 22 21
13 12 11
b b b
b b b
b b b
B
?

Inverso de matrizes
1
1
1
]
1

1 0 0
0 1 0
0 0 1
I
I B A
1
1
1
]
1

33 32 31
23 22 21
13 12 11
a a a
a a a
a a a
A
1
1
1
]
1

33 32 31
23 22 21
13 12 11
b b b
b b b
b b b
B

Вам также может понравиться