Sei sulla pagina 1di 33

rogramacin

de
omputadore
s

Universidad Nacional de
Colombia
Facultad de Ingeniera
Departamento de Ingeniera

ARREGLOS Y
MATRICES
Arreglos

Cadenas de Caractere
s
Matrices

ARREGLOS

ARREGLOS
Definicin: Espacio de memoria que
permite almacenar una
coleccin
de datos de un mismo tipo
Acceso: Nombre de variable e ndice
dentro de
parntesis cuadrados.
Ejemplo:

X=

20 -5
0

12

X[0] = 20
X[2] = 8
X[4] = 12

X[1] = -5
X[3] = 6
Indice
Nombre

ARREGLOS
Dimensin: Nmero de casillas que
conforman el arreglo
En el ejemplo anterior, la dimensin de
X es 5
Formato de definicin en seudo-lenguaje

<Nombre> : arreglo[<tamao>] de <tipo>

EJEMPLO 1
Inicializar un Arreglo con ceros

EJEMPLO 1
PROGRAM
A
t : arreglo[5 ] de entero
m: entero
para(m:=0 hasta 4)
hacer

MEMORIA

t[m] := 0
fin_para

xxx
0
1
2
3
4
5

t xxx
0 xxx
0 xxx
0 xxx
0 xxx
0
t[0] t[1] t[2] t[3] t[4]

EJEMPLO 2

Inicializar un Arreglo con valores ledos

EJEMPLO 2
PROGRAM
A

t : arreglo[5 ] de entero
m: entero
para(m:=0 hasta 4)
hacer
leer (t[m])

MEMORIA
m

xxx
0
1
2
3
4
5

fin_para
t xxx
20 xxx
-5 xxx
8 xxx
6 xxx
12
t[0] t[1] t[2] t[3] t[4]

EJEMPLO 3

Sumar los elementos de un arreglo

EJEMPLO 3
MEMORIA
m

PROGRAM
suma := 0A

para(m := 0 hasta 4)
hacer
suma := suma+t[m]
fin_para
escribir (suma)

sum xxx
20
15
23
29
41
0
a

xxx
0
1
2
3
4
5

20 -5

12

t[0] t[1] t[2]t[3] t[4]


SALIDA

41

EJEMPLO 4
Ordenar en forma ascendente un
conjunto de nmeros enteros
almacenados en un arreglo

EJEMPLO 5
PROGRAM
temp A
:= 0
para(i:=0 hasta 2) hacer
para(j:=i+1 hasta 3) hacer
si (t[i]>t[j]) entonces
temp := t[j]
MEMORIA
t[j] := t[i]
temp
t[i] := temp
xxx
-2
0
3
7
fin_si
0
1
2
3
1
2
3
4
fin_para
i xxx
j xxx
fin_para
-2
3 12
3 12
-2
3 12
7
7
t 12

PROBLEMA ARRE
GLOS
Leer un conjunto de datos enteros e
imprimir los mismos
datos en el orden inverso al ledo.

CADENAS DE
CARACTERES

Definicin:
Arreglo de caracteres.
Caractersticas:
Manejo de
terminador de cadena \0

Longitud:
Nmero de smbolos
antes del terminador de
cadena.

X
=

\0

La longitud de X es 4

CADENAS DE
CARACTERES
Formato de definicin en seudo-lenguaje

<Nombre> : arreglo[<tamao>] de caracter

CADENAS DE
CARACTERES

Especificacin: Caracteres entre


comillas dobles.
Operaciones:

compararCadena
copiarCadena
longitudCadena
concatenarCadena
leerCadena
escribirCadena

CONCATENAR

CADENAS DE
CARACTERES
PROGRAMA

MEMORIA

X := da
Y := do
Z := concatenar(X,Y)

X = \d0

XX
a

0
\\ 0
XX

XX

XX

Y=

\0

XX
o

0
\\ 0
XX

XX

XX

Z=

\0

XX
a

XX
d

XX
o

\XX
0

PROBLEMA CADEN
AS
Leer una cadena de caracteres
y contar el nmero
de espacios que se encuentran en ella.

MATRICES

MATRICES
Definicin: Espacio de memoria que
permite almacenar una
coleccin de datos de
un mismo tipo

Los elementos no estn organizados


linealmente sino que su
organizacin es bidimensional, es
decir, en filas y columnas.

MATRICES
Acceso: Nombre de variable y dos
ndices. Al primer ndice se
le
llama ndice de fila y al
segundo
ndice de columna.
Ejemplo:
120 39 65
X = 71 16 34
-25 49 82

X[0] [0] = 120 X [1] [2] = 34


X[2] [1] = 49

X [0] [2] = 65
Columna

X [2] [0] = -25


Nombre

Fila

MATRICES
Dimensin: es el nmero filas por
el

nmero de columnas.

Formato de definicin en seudo-lenguaje

<Nombre> : matriz [<N>][<M>] de <tipo>


N : nmero de filas
M : nmero de columnas

EJEMPLO 5

Llenar una matriz de tres por tres

EJEMPLO 5
PROGRAMA

MEMORIA

j
mat: matriz [3][3] de entero i
para(i:=0 hasta 2 hacer)
xxx
0
1
2
3
xxx
0
1
2
3
para(j:=0 hasta 2 hacer)
mat[i][j] := i+j
mat
fin_para
xxx
0 xxx
1 xxx
2
fin_para
xxx
1 xxx
2 xxx
3
xxx
2 xxx
3 xxx
4

EJEMPLO 6

Teniendo la matriz M de tres por tres


guardar en el arreglo t, la suma de lo
elementos de cada fila de la matriz
inicial (e.d.: en t[0] se guarda la sum
de la fila 0 de la matriz, en t[1] se gu
da la suma de la fila 1 de la matriz

EJEMPLO 6
MEMORIA
j
PROGRAMA

1
2
xxx
0

i
xxx
2
3
0
1

sum
a
xxx
0
1
3
6
2
5
9
0

suma := 0
para(j := 0 hasta 2)
3 xxx
9
6 xxx
t xxx
hacer
para(i := 0 hasta 2)
hacer
suma := suma+M[j][i]
t[0] t[1] t[2]
fin_para
t[j]:=suma
suma:=0
SALIDA 3 6 9
fin_para
escribir (t[0],t [1], t [2])

PROBLEMA
MATRICES
Realizar un programa que lea la
dimensin de una matriz (nmero de filas y
nmero de columnas) y los datos, e
imprima la matriz en pantalla.

CODIFICACIN EN C+
+
ARREGLOS
Seudocdigo
<NOMBRE> : arreglo [<N>] de
<TIPO>
C++
<TIPO> <NOMBRE>[<N>];

CODIFICACIN EN C+
+
CADENA DE CARACTERES
Seudocdigo
<NOMBRE> : arreglo [<N>] de
carcter
C++
char <NOMBRE>[<N>];

CODIFICACIN EN C+
+
MATRICES
Seudocdigo
<NOMBRE> : matriz [<N>][<M>] de
<TIPO>
C++
<TIPO> <NOMBRE>[<N>][<M>];

FIN
Gracias por la
atencin prestada

Potrebbero piacerti anche