Documentos de Académico
Documentos de Profesional
Documentos de Cultura
VectoresMatrices PDF
VectoresMatrices PDF
V t
Vectores y Matrices
M ti
Indice
9 Vectores
9 Algoritmos de Bsqueda
9 Algoritmos
g de Ordenacin
9 Matrices
3
Vectores
Definicin
Elementos
-32
32 9 65 45 7 8 9 100 1
0 1 2 3 4 5 6 7 8
Posiciones
4
Vectores
Declaracin
tipo nombre_vector [tamao];
El d t tamao
dato t determina
d t i ell tamao fsico del
d l vector
t
y debe ser un literal o constante entera.
Ejemplo:
const int MAX = 100;
double v[MAX], w[1000];
t v est
El vector t compuesto
t por 100 reales.
l El primero
i es
v[0] y el ltimo v[99].
El elemento v[i](i=0,,99)es un double y puede
usarse como cualquier variable de tipo double.
5
Vectores
Procesamiento
Los vectores se procesan elemento a elemento.
Vectores
Tamao lgico de un vector
En general, para procesar un vector v con tamao
fsico MAX se considera un tamao lgico util_v
con: 0 util_v
util v MAX.
MAX
int v[10],
v[10] util_v
util v = 4;
V[0]= -32; V[1]=9; V[2]=65; V[3]=45;
-32 9 65 45 ? ? ? ? ? ?
0 1 2 3 4 5 6 7 8 9
Vectores
Ejercicios
1 L
1. Leer un vector
t ded reales
l que representant notas
t d de
alumnos y mostrar por pantalla la mayor nota. El
nmero de elementos a procesar se leer por teclado
(SOLUCION).
DEFINICION MODULO:
MODULO
void modulo(int v[], int util_v)
{
} En la definicin, NO es necesario
especificar el tamao fsico
LLAMADA MODULO:
modulo(v, util_v);
Vectores
Ejercicios
Construir un programa que utilice tres mdulos
(SOLUCION):
1. Leer un vector.
1 vector
2. Calcular la media de un vector.
3. Mostrar los elementos de un vector por pantalla.
Construir un mdulo que acepte un vector de enteros
y devuelva otro vector con los elementos pares del
primero (SOLUCION).
Vectores
Ms ejercicios
Construir
C t i un mdulo
d l que aceptet ddos vectores
t d
de
enteros y devuelva true si son iguales y false en caso
contrario (SOLUCION).
( )
Algoritmos
g de Bsqueda
q
Bsqueda secuencial
PROBLEMA: Encontrar un elemento x en un vector v
v no tiene que estar ordenado.
v no se modifica: se pasa por valor (const int v[]).
du o devuelve
El mdulo de ue e la
a pos
posicin
c do
donde
de est o -1 s
si no
o est
est.
ALGORITMO:
1. Situarse al principio del vector
Algoritmos
g de Bsqueda
q
Bsqueda binaria
ALGORITMO
1 Comparar x con el elemento que ocupa la mitad de v.
1.
3 Si no, se determina
3. d t i lla mitad
it d de
d v en la
l que puede
d encontrarse.
t
Algoritmos de Ordenacin
Ordenacin por seleccin
ALGORITMO:
1. Determinar la posicin del menor elemento de v e intercambiarlo con el que
ocupa
p la primera
p posicin
p (la
( cero).
)
3. Determinar la posicin del menor elemento de v sin considerar los dos primeros
e intercambiarlo con el que ocupa la tercera posicin
Algoritmos
g de Ordenacin
Ordenacin por seleccin
Durante el proceso se manejan dos subvectores:
9 El de la izquierda ordenado.
9 El d
de lla d
derecha
h ddesordenado.
d d
Algoritmos
g de Ordenacin
Mtodo de la burbuja
Al iiguall que antes,
t a lla iizquierda
i d se va d j d un
dejando
subvector ordenado.
Matrices
Generalidades
const int MAX_FIL = 6, MAX_COL = 8;
int m[MAX_FIL][MAX_COL];
int utilF_m = 4, utilC_m = 4;
_
utilCol_m
MAX COL
MAX_COL
110 65 23 80 ? ? ? ?
_m
utilFil_
-32 9 65 45 ? ? ? ?
1 21 54 4 ? ? ? ?
15 48 27 25 ? ? ? ?
FIL
? ? ? ? ? ? ? ?
MAX_F
? ? ? ? ? ? ? ?
17
Matrices
Procesamiento
Las matrices se procesan elemento a elemento.
DEFINICION MODULO:
MODULO
void modulo(int m[][MAX_COL], int utilFil_m, int utilCol_m)
{
}
LLAMADA MODULO:
modulo(m,
d l ( utilFil_m,
il il utilCol_m);
il l )
Matrices
Ejercicios
Construir un programa modular que utilice tres tareas
(SOLUCION):
1. Leer una matriz de reales
1 reales.
2. Eliminar los decimales de los elementos de la
matriz.
3. Mostrar por pantalla los elementos resultantes
de la matriz.
Construir un mdulo que acepte dos matrices y
devuelva true si son iguales y false en caso contrario
(SOLUCION).
(SOLUCION)