SlideShare a Scribd company logo
1 of 16
Download to read offline
Tema 5. Vectores
1.       Introducción
2.       Operaciones con vectores
     2.1. Operaciónes básicas: asignación
     2.2. Recorrido secuencial de un vector
     2.3. Búsqueda en un vector (No ordenado y Ordenado)
3.       Matrices
     3.1. Introducción
     3.2. Sintaxis
     3.3. Ejemplos
4.       Operaciones con matrices
     4.1. Recorrido de una matriz
          - Por filas, columnas
     4.2. Traspuesta, suma, producto

Bibliografía:
     –     Biondi y Clavel, 1989
     –     Joyanes
     –     Weiss
     –     Cairó
5.2. Operaciones con vectores (cont.)
Búsqueda en un vector
• Problema habitual en programación: buscar un elemento en
  un vector.
• Tenemos que distinguir dos casos:
   – Los elementos del vector no están ordenados.
     Es necesario recorrer todo el vector para comprobar si un
     elemento está o no.
   – Los elementos del vector están ordenados.
     Se puede establecer una relación de orden ≤ entre los
     elementos del vector:
      v(1) ≤ v(2) ≤ v(3) ≤ ... ≤ v(n)

     No será necesario recorrer todo el vector en todos los
     casos.
Búsqueda secuencial en vectores no
ordenados
Algoritmo Búsqueda_secuencial_1_1 (V, N, X, Posición, Existe) es
V: Vector [1..M] de T; {p. dato}
N: numérico; {p. dato; posiciones ocupadas del vector}
X: T; {p. dato; elemento buscado}
Posición: numérico; {p. resultado; posición del elemento, si está}
Existe: lógico; {p. resultado; indicará si hemos encontrado el
    elemento}
Inicio
 Posición := 1;
 Existe := falso;
 mientras Posición < N y V(Posicion) <> X hacer
    Posición := Posición + 1;
 fin mientras;
 si V(Posición) = X entonces
   existe := Cierto;
 Fin si
Fin
Búsqueda secuencial en vectores no
ordenados
Algoritmo Búsqueda_secuencial_1_2 (V, N, X, Posición, Existe) es
V: Vector [1..M] de T; {p. dato}
N: numérico; {p. dato; posiciones ocupadas del vector}
X: T; {p. dato; elemento buscado}
Posición: numérico; {p. resultado; posición del elemento, si está}
Existe: lógico; {p. resultado; indicará si hemos encontrado el
    elemento}
Inicio
Posición := 1;
Existe := falso;
mientras Posición <= N y Existe = falso hacer
  si V(Posición) = X entonces
   existe := Cierto;
  sino
    Posición := Posición + 1;
  fin si
fin mientras;
Fin
Búsqueda secuencial en vectores ordenados
Algoritmo Búsqueda_secuencial_2 (V, N, X, Posición, Existe) es
V: Vector [1..M] de T;
N, Posición: numérico;
X: T;
Existe: lógico;
Inicio
Posición := 1;
Existe := falso;
mientras Posición < N y V(Posición) < X hacer
         Posición := Posición + 1;
fin mientras;
si V(Posición) = X entonces
         Existe := Cierto;
fin si;
Fin
Búsqueda en vectores ordenados
Algoritmo Búsqueda_binaria (V, N, X, pos, existe) es
V: Vector [1..M] de T; {p. dato}
N: numérico; {p. dato}
X: T; {p. dato}
Pos: numérico; {p. resultado}
Existe: lógico; {p. resultado}
Inf, Sup, Med: numérico;
Inicio
    Inf := 1;
    Sup := N;
    Mientras Inf <> Sup hacer
          Med := (Inf + Sup) div 2;
          Si X > V(Med) entonces
                   Inf := Med + 1;
          Sino {X <= V(Med) }
                   Sup := Med;
          finsi
    Fin mientras
    Si V(inf) = X entonces
          existe := cierto;
          pos := inf;
    sino
          existe := falso;
    finsi
Fin
5.3. Matrices
5.3.1. Introducción
   – ¿Qué ocurre cuando el tipo base de un array es otro array?
      Mat = vector[1..4] de (vector[1..5] de enteros);
      X: Mat;

                                  X

      X(1)              X(2)             X(3)              X(4)



 Tenemos un array de 20 enteros, organizados en 4 bloques de 5
 enteros cada uno: X(1) tendrá X(1,1), X(1,2), X(1,3), X(1,4), X(1,5)
 y así X(2), X(3) y X(4)
• Obviamente, para acceder a cada elemento individual serán
  necesarios dos índices: uno por cada dimensión.

         X(1)    X[1,1]     X[1,2]     X[1,3]     X[1,4]     X[1,5]

         X(2)    X[2,1]     X[2,2]     X[2,3]     X[2,4]     X[2,5]

         X(3)    X[3,1]     X[3,2]     X[3,3]     X[3,4]     X[3,5]

         X(4)    X[4,1]     X[4,2]     X[4,3]     X[4,4]     X[4,5]


5.3.2. Sintaxis
Además de la sintaxis anterior, que es genérica:
<tipo-matriz> ::=
<tipo> = vector [<tipo-indice>{,<tipo-indice>}] de <tipo-base>
<tipo-indice> ::= <elemento-inicial> .. <elemento-final>

5.3.3. Ejemplos
Notas = vector[1..4,1..9] de numérico; {Notas: 4 cursos x 9 asignaturas}
Temperaturas = vector[1..12,1..31] de numérico; {Temperaturas anuales x meses}
Nombres = vector[1..4,1..40] de cadenas; {Nombres de 40 alumnos x 4 cursos}

N: Notas;
T: Temperaturas; {T(6, 1): temperatura asociada al 1 de junio}
5.4. Operaciones sobre matrices
5.4.1. Recorrido
•    También se puede aplicar el tratamiento secuencial sobre los
     arrays en general y sobre las matrices en particular.
     En el caso de un vector:
    – Esquema 1 (Tratamiento en curso ≠ tratamiento final)
           iniciar tratamiento;
           para I de 1 a N-1 hace
                 tratar X(I); {el elemento i-ésimo de la secuencia es X(I)}
           finpara;
           tratar X(N);
    –   Esquema 2 (Tratamiento en curso = tratamiento final)
           iniciar tratamiento;
           para I de 1 a N hace
                 tratar X(I); {el elemento i-ésimo de la secuencia es X(I)}
           finpara;

        Los elementos de la secuencia son escalares.
En el caso de un vector multidimensional (por ejemplo, AMxN)
•   las filas (o las columnas) de la matriz forman también una
    secuencia
    (fila1), (fila2),..., (filaM)
    (X(1,1),...,X(1,N)), (X(2,1),...,X(2,N)), ..., (X(M,1),...,X(M,N))
•   el elemento i-ésimo de la secuencia será una fila o una columna
•   a su vez, ese elemento puede necesitar también un tratamiento
    secuencial

Recorrido de una matriz por filas
    Algoritmo Leer_matriz (A, M, N) es
    {declaración de tipos}
    matriz = vector[1..100, 1..100] de numérico;
    {declaración de parámetros}
    A: matriz; {p. dato-resultado}
    M, N: numérico; {p. dato; porción utilizable de la matriz}
    I: numérico; {entero, se usará como índice}
    Inicio
        para I desde 1 hasta M hacer
                 leer_fila (A, I, N);
        fin para
    Fin
Algoritmo Leer_fila (A, fila, max_col) es
   {declaración de tipos}
   matriz = vector[1..100, 1..100] de numérico;
   {declaración de parámetros}
   A: matriz; {p. dato-resultado}
   fila, max_col: numérico; {p. dato}
   J: numérico; {entero, se usará como índice}
   Inicio
        para J desde 1 hasta max_col hacer
                 escribir “Dame el elemento “, J, “ de la fila “, fila, “: “;
                 leer A(fila, J);
        fin para
   Fin

Generalmente se escribirá de forma compacta:
   para I desde 1 hasta M hacer
        para J desde 1 hasta N hacer
                 tratar A(I, J);
        fin para
   fin para
Recorrido de una matriz por columnas


   Algoritmo Mostrar_matriz (A, M, N) es
   {declaración de tipos}
   matriz = vector[1..100, 1..100] de numérico;
   {declaración de parámetros}
   A: matriz; {p. dato-resultado}
   M, N: numérico; {p. datos; porción utilizable de la matriz}
   J: numérico; {entero, se usará como índice}
   Inicio
      para J desde 1 hasta N hacer {J=1..N, cada columna J de A}
        mostrar_columna (A, M, J);
      fin para
   Fin
Algoritmo mostrar_columna (A, max_fil, col) es
   {declaración de tipos}
   matriz = vector[1..100, 1..100] de numérico;
   {declaración de parámetros}
   A: matriz; {p. dato-resultado}
   col, max_fil: numérico; {p. dato}
   I: numérico; {entero, se usará como índice}
   Inicio
        para I desde 1 hasta max_fil hacer
                 escribir “El elemento “, I, “ de la columna “, col, “es: “;
                 escribir A(I, col);
        fin para
   Fin

Generalmente se escribirá de forma compacta:
   para J desde 1 hasta N hacer
        para I desde 1 hasta M hacer
                 tratar A(I, J);
        fin para
   fin para
5.4.2. Traspuesta, suma y producto
• Suma
  Resumen:
    Dadas dos matrices A y B de tamaños 100 x 100, en las
    que están ocupadas M x N posiciones, calcúlese en C la
    suma de A + B
  Algoritmo Suma (A, B, C, M, N) es
  A, B: matriz; {p. dato}
  C: matriz; {p. resultado}
  M, N: numérico; {p. dato}
• Traspuesta
  Resumen:
    Dada una matriz A de tamaño 100 x 100, en la que están
    ocupadas M x N posiciones, transfórmese A en su
    traspuesta, sin utilizar ninguna estructura auxiliar
  Algoritmo Traspuesta (A, M, N) es
  A: matriz; {p. dato-resultado}
  M, N: numérico; {p. dato}
• Producto
  Resumen:
    Dadas dos matrices A y B de tamaños máximos 100 x 100,
    en las que están ocupadas AMxN y BNxP posiciones,
    calcúlese en C el producto de A x B
  Algoritmo Producto (A, B, C, M, N, P) es
  A, B: matriz; {p. dato; AMxN y BNxP}
  C: matriz; {p. resultado; CMxP}
  M, N, P: numérico; {p. dato}
Algoritmo Calcular N primeros números primos mediante la criba
de Eratóstenes
Inicialmente todos los números 2..10000 son números primos posibles

Si I es un número primo (excepto el 1), elimino todos los números
múltiplos de I, entre I*2 y 10000/I: para eliminar substituyo el valor inicial
por 0.




     1    2     3    4     5    6     7     8    9     10

     1    1     1    1     1    1     1     1    1     1       i=2


    Suprimir múltiplos de 2, que es primo, porque multiplos(i)=1

     1    1     1    0     1    0     1     0    1     0

More Related Content

What's hot

What's hot (20)

7.metodo de newton2
7.metodo de newton27.metodo de newton2
7.metodo de newton2
 
Funciones trigonométrica
Funciones trigonométricaFunciones trigonométrica
Funciones trigonométrica
 
Funciones y graficas
Funciones y graficasFunciones y graficas
Funciones y graficas
 
Cálculo diferencial
Cálculo diferencialCálculo diferencial
Cálculo diferencial
 
Al ap 01
Al ap 01Al ap 01
Al ap 01
 
E book itzayana nava montiel
E book itzayana nava montielE book itzayana nava montiel
E book itzayana nava montiel
 
6.metodo de newton
6.metodo de newton6.metodo de newton
6.metodo de newton
 
Clase8 minisem
Clase8 minisemClase8 minisem
Clase8 minisem
 
Fundamentos Divide Y Venceras
Fundamentos Divide Y VencerasFundamentos Divide Y Venceras
Fundamentos Divide Y Venceras
 
Teoria y problemas de calculo integral ccesa007
Teoria y  problemas  de calculo integral   ccesa007Teoria y  problemas  de calculo integral   ccesa007
Teoria y problemas de calculo integral ccesa007
 
Derivacion e integracion
Derivacion e integracionDerivacion e integracion
Derivacion e integracion
 
Ejercicio 3
Ejercicio 3Ejercicio 3
Ejercicio 3
 
Funciones
FuncionesFunciones
Funciones
 
Practica3diferenciacion
Practica3diferenciacionPractica3diferenciacion
Practica3diferenciacion
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidas
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidas
 
Ode45
Ode45Ode45
Ode45
 
Divide y Venceras
Divide y VencerasDivide y Venceras
Divide y Venceras
 
Integral indefinida
Integral indefinidaIntegral indefinida
Integral indefinida
 
Resolviendo problemas de limites de sucesiones al infinito
Resolviendo problemas de limites de sucesiones al infinitoResolviendo problemas de limites de sucesiones al infinito
Resolviendo problemas de limites de sucesiones al infinito
 

Viewers also liked

Solution Analytics : Kameleoon
Solution Analytics : KameleoonSolution Analytics : Kameleoon
Solution Analytics : KameleoonQuentin Apruzzese
 
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIENLaurence Mazure
 
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...seineenpartageII
 
La newsletter de mgrh 2
La newsletter de mgrh 2La newsletter de mgrh 2
La newsletter de mgrh 2CABINET MGRH
 
France pp
France ppFrance pp
France ppRichJoy
 
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014Humanitaire Rencontres Africaines - Mission gaoua janvier 2014
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014humanitaireRA
 
Koha, metabuscadores y herramientas colaborativas de edición de contenidos
Koha, metabuscadores y herramientas colaborativas de edición de contenidosKoha, metabuscadores y herramientas colaborativas de edición de contenidos
Koha, metabuscadores y herramientas colaborativas de edición de contenidosVicente Piñeiro
 
La newsletter de mgrh 1
La newsletter de mgrh 1La newsletter de mgrh 1
La newsletter de mgrh 1CABINET MGRH
 
These tony ducrocq
These tony ducrocqThese tony ducrocq
These tony ducrocqmrewaabd
 
Le point mort- Seuil de rentabilité
Le point mort- Seuil de rentabilité Le point mort- Seuil de rentabilité
Le point mort- Seuil de rentabilité Biova consulting
 
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...Lur Gozoa
 
Car2go pense à Bruxelles
Car2go pense à BruxellesCar2go pense à Bruxelles
Car2go pense à BruxellesWagenverkopen
 
2015 02-2014 - departementales 2015 minut
2015 02-2014 - departementales 2015 minut2015 02-2014 - departementales 2015 minut
2015 02-2014 - departementales 2015 minutguindedavenne
 

Viewers also liked (20)

Solution Analytics : Kameleoon
Solution Analytics : KameleoonSolution Analytics : Kameleoon
Solution Analytics : Kameleoon
 
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN
2016 MÉMOIRE DES LUTTES AUX SOURCES TUMULTUEUSES DU CONFLIT COLOMBIEN
 
Z Recomendation Letters
Z Recomendation LettersZ Recomendation Letters
Z Recomendation Letters
 
Open Data en Gijón
Open Data en GijónOpen Data en Gijón
Open Data en Gijón
 
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...
Responsabilité et règlementation de la qualité de l'eau de la Seine : La cont...
 
La newsletter de mgrh 2
La newsletter de mgrh 2La newsletter de mgrh 2
La newsletter de mgrh 2
 
France pp
France ppFrance pp
France pp
 
Extrait sam
Extrait samExtrait sam
Extrait sam
 
C'est la vie
C'est la vieC'est la vie
C'est la vie
 
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014Humanitaire Rencontres Africaines - Mission gaoua janvier 2014
Humanitaire Rencontres Africaines - Mission gaoua janvier 2014
 
Word2003
Word2003Word2003
Word2003
 
Koha, metabuscadores y herramientas colaborativas de edición de contenidos
Koha, metabuscadores y herramientas colaborativas de edición de contenidosKoha, metabuscadores y herramientas colaborativas de edición de contenidos
Koha, metabuscadores y herramientas colaborativas de edición de contenidos
 
La newsletter de mgrh 1
La newsletter de mgrh 1La newsletter de mgrh 1
La newsletter de mgrh 1
 
These tony ducrocq
These tony ducrocqThese tony ducrocq
These tony ducrocq
 
Le point mort- Seuil de rentabilité
Le point mort- Seuil de rentabilité Le point mort- Seuil de rentabilité
Le point mort- Seuil de rentabilité
 
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...
Memoria II Unconference Internacional de Sueños en Acción: "Vivir en la Era d...
 
Resumen
ResumenResumen
Resumen
 
Car2go pense à Bruxelles
Car2go pense à BruxellesCar2go pense à Bruxelles
Car2go pense à Bruxelles
 
Le décrochage scolaire
Le décrochage scolaireLe décrochage scolaire
Le décrochage scolaire
 
2015 02-2014 - departementales 2015 minut
2015 02-2014 - departementales 2015 minut2015 02-2014 - departementales 2015 minut
2015 02-2014 - departementales 2015 minut
 

Similar to Vectores y matrices fundamentales

jaisan
jaisanjaisan
jaisanjai
 
Investigación #1
Investigación #1Investigación #1
Investigación #1Luis Nuñez
 
Clase1_Matrices.pptx
Clase1_Matrices.pptxClase1_Matrices.pptx
Clase1_Matrices.pptxVctorChacn3
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
Algebralineal.docx
Algebralineal.docxAlgebralineal.docx
Algebralineal.docxEdwin Laguna
 
Cursos de MATLAB
Cursos de MATLABCursos de MATLAB
Cursos de MATLABdwquezada
 
Informe de proyecto final
Informe de proyecto finalInforme de proyecto final
Informe de proyecto finalAldrin Eduardo
 
Matrices operaciones
Matrices operacionesMatrices operaciones
Matrices operacionesjcremiro
 
Transformaciones lineales
Transformaciones linealesTransformaciones lineales
Transformaciones linealesmbgcmadelein
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenesanar26
 
Métodos Directos
Métodos DirectosMétodos Directos
Métodos DirectosKike Prieto
 
Metodos numericos..pptx
Metodos numericos..pptxMetodos numericos..pptx
Metodos numericos..pptxErickMalaveS
 
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLuLopez7
 

Similar to Vectores y matrices fundamentales (20)

jaisan
jaisanjaisan
jaisan
 
Investigación #1
Investigación #1Investigación #1
Investigación #1
 
Clase1_Matrices.pptx
Clase1_Matrices.pptxClase1_Matrices.pptx
Clase1_Matrices.pptx
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
Algebralineal.docx
Algebralineal.docxAlgebralineal.docx
Algebralineal.docx
 
Res vecmat8
Res vecmat8Res vecmat8
Res vecmat8
 
Resvecmat
ResvecmatResvecmat
Resvecmat
 
Cursos de MATLAB
Cursos de MATLABCursos de MATLAB
Cursos de MATLAB
 
Informe de proyecto final
Informe de proyecto finalInforme de proyecto final
Informe de proyecto final
 
Matrices operaciones
Matrices operacionesMatrices operaciones
Matrices operaciones
 
Matrices
MatricesMatrices
Matrices
 
Transformaciones lineales
Transformaciones linealesTransformaciones lineales
Transformaciones lineales
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenes
 
An 04 metodos-directos
An 04 metodos-directosAn 04 metodos-directos
An 04 metodos-directos
 
Matrices
Matrices Matrices
Matrices
 
Métodos Directos
Métodos DirectosMétodos Directos
Métodos Directos
 
Metodos numericos..pptx
Metodos numericos..pptxMetodos numericos..pptx
Metodos numericos..pptx
 
Presentación1 diego
Presentación1 diegoPresentación1 diego
Presentación1 diego
 
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 

More from martha leon

Trabajo Practico Uap Arreglos
Trabajo Practico Uap ArreglosTrabajo Practico Uap Arreglos
Trabajo Practico Uap Arreglosmartha leon
 
Silabo Prog De Computadoras 2
Silabo Prog  De Computadoras 2Silabo Prog  De Computadoras 2
Silabo Prog De Computadoras 2martha leon
 
Tema2 C++ 2004 2005
Tema2 C++ 2004 2005Tema2 C++ 2004 2005
Tema2 C++ 2004 2005martha leon
 
Unidad16 Codigof1
Unidad16 Codigof1Unidad16 Codigof1
Unidad16 Codigof1martha leon
 
Ejemplos Importantisimo
Ejemplos  ImportantisimoEjemplos  Importantisimo
Ejemplos Importantisimomartha leon
 
Sem5 Interaccion Con La Computadoras Software
Sem5 Interaccion Con La Computadoras   SoftwareSem5 Interaccion Con La Computadoras   Software
Sem5 Interaccion Con La Computadoras Softwaremartha leon
 
Sem2 En El Interior De Las Computadoras Hardware I
Sem2 En El Interior De Las Computadoras   Hardware ISem2 En El Interior De Las Computadoras   Hardware I
Sem2 En El Interior De Las Computadoras Hardware Imartha leon
 
Jhtp5 20 Datastructures
Jhtp5 20 DatastructuresJhtp5 20 Datastructures
Jhtp5 20 Datastructuresmartha leon
 
Ejemplos Interfaces Usuario 3
Ejemplos Interfaces Usuario 3Ejemplos Interfaces Usuario 3
Ejemplos Interfaces Usuario 3martha leon
 
Sem1 El Mundo De Las Computadoras
Sem1 El Mundo De Las ComputadorasSem1 El Mundo De Las Computadoras
Sem1 El Mundo De Las Computadorasmartha leon
 
Sem3 En El Interior De Las Computadoras Hardware Ii
Sem3 En El Interior De Las Computadoras   Hardware IiSem3 En El Interior De Las Computadoras   Hardware Ii
Sem3 En El Interior De Las Computadoras Hardware Iimartha leon
 
Arrays In General
Arrays In GeneralArrays In General
Arrays In Generalmartha leon
 

More from martha leon (15)

Trabajo Practico Uap Arreglos
Trabajo Practico Uap ArreglosTrabajo Practico Uap Arreglos
Trabajo Practico Uap Arreglos
 
SeúDocodigo
SeúDocodigoSeúDocodigo
SeúDocodigo
 
Silabo Prog De Computadoras 2
Silabo Prog  De Computadoras 2Silabo Prog  De Computadoras 2
Silabo Prog De Computadoras 2
 
Tema2 C++ 2004 2005
Tema2 C++ 2004 2005Tema2 C++ 2004 2005
Tema2 C++ 2004 2005
 
Unidad16 Codigof1
Unidad16 Codigof1Unidad16 Codigof1
Unidad16 Codigof1
 
Ejemplos Importantisimo
Ejemplos  ImportantisimoEjemplos  Importantisimo
Ejemplos Importantisimo
 
Sem5 Interaccion Con La Computadoras Software
Sem5 Interaccion Con La Computadoras   SoftwareSem5 Interaccion Con La Computadoras   Software
Sem5 Interaccion Con La Computadoras Software
 
Sem2 En El Interior De Las Computadoras Hardware I
Sem2 En El Interior De Las Computadoras   Hardware ISem2 En El Interior De Las Computadoras   Hardware I
Sem2 En El Interior De Las Computadoras Hardware I
 
Jhtp5 20 Datastructures
Jhtp5 20 DatastructuresJhtp5 20 Datastructures
Jhtp5 20 Datastructures
 
Ejemplos Interfaces Usuario 3
Ejemplos Interfaces Usuario 3Ejemplos Interfaces Usuario 3
Ejemplos Interfaces Usuario 3
 
Sem1 El Mundo De Las Computadoras
Sem1 El Mundo De Las ComputadorasSem1 El Mundo De Las Computadoras
Sem1 El Mundo De Las Computadoras
 
Sem3 En El Interior De Las Computadoras Hardware Ii
Sem3 En El Interior De Las Computadoras   Hardware IiSem3 En El Interior De Las Computadoras   Hardware Ii
Sem3 En El Interior De Las Computadoras Hardware Ii
 
Arrays In General
Arrays In GeneralArrays In General
Arrays In General
 
3433 Ch09 Ppt
3433 Ch09 Ppt3433 Ch09 Ppt
3433 Ch09 Ppt
 
3433 Ch10 Ppt
3433 Ch10 Ppt3433 Ch10 Ppt
3433 Ch10 Ppt
 

Recently uploaded

Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 

Recently uploaded (20)

Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 

Vectores y matrices fundamentales

  • 1. Tema 5. Vectores 1. Introducción 2. Operaciones con vectores 2.1. Operaciónes básicas: asignación 2.2. Recorrido secuencial de un vector 2.3. Búsqueda en un vector (No ordenado y Ordenado) 3. Matrices 3.1. Introducción 3.2. Sintaxis 3.3. Ejemplos 4. Operaciones con matrices 4.1. Recorrido de una matriz - Por filas, columnas 4.2. Traspuesta, suma, producto Bibliografía: – Biondi y Clavel, 1989 – Joyanes – Weiss – Cairó
  • 2. 5.2. Operaciones con vectores (cont.) Búsqueda en un vector • Problema habitual en programación: buscar un elemento en un vector. • Tenemos que distinguir dos casos: – Los elementos del vector no están ordenados. Es necesario recorrer todo el vector para comprobar si un elemento está o no. – Los elementos del vector están ordenados. Se puede establecer una relación de orden ≤ entre los elementos del vector: v(1) ≤ v(2) ≤ v(3) ≤ ... ≤ v(n) No será necesario recorrer todo el vector en todos los casos.
  • 3. Búsqueda secuencial en vectores no ordenados Algoritmo Búsqueda_secuencial_1_1 (V, N, X, Posición, Existe) es V: Vector [1..M] de T; {p. dato} N: numérico; {p. dato; posiciones ocupadas del vector} X: T; {p. dato; elemento buscado} Posición: numérico; {p. resultado; posición del elemento, si está} Existe: lógico; {p. resultado; indicará si hemos encontrado el elemento} Inicio Posición := 1; Existe := falso; mientras Posición < N y V(Posicion) <> X hacer Posición := Posición + 1; fin mientras; si V(Posición) = X entonces existe := Cierto; Fin si Fin
  • 4. Búsqueda secuencial en vectores no ordenados Algoritmo Búsqueda_secuencial_1_2 (V, N, X, Posición, Existe) es V: Vector [1..M] de T; {p. dato} N: numérico; {p. dato; posiciones ocupadas del vector} X: T; {p. dato; elemento buscado} Posición: numérico; {p. resultado; posición del elemento, si está} Existe: lógico; {p. resultado; indicará si hemos encontrado el elemento} Inicio Posición := 1; Existe := falso; mientras Posición <= N y Existe = falso hacer si V(Posición) = X entonces existe := Cierto; sino Posición := Posición + 1; fin si fin mientras; Fin
  • 5. Búsqueda secuencial en vectores ordenados Algoritmo Búsqueda_secuencial_2 (V, N, X, Posición, Existe) es V: Vector [1..M] de T; N, Posición: numérico; X: T; Existe: lógico; Inicio Posición := 1; Existe := falso; mientras Posición < N y V(Posición) < X hacer Posición := Posición + 1; fin mientras; si V(Posición) = X entonces Existe := Cierto; fin si; Fin
  • 6. Búsqueda en vectores ordenados Algoritmo Búsqueda_binaria (V, N, X, pos, existe) es V: Vector [1..M] de T; {p. dato} N: numérico; {p. dato} X: T; {p. dato} Pos: numérico; {p. resultado} Existe: lógico; {p. resultado} Inf, Sup, Med: numérico; Inicio Inf := 1; Sup := N; Mientras Inf <> Sup hacer Med := (Inf + Sup) div 2; Si X > V(Med) entonces Inf := Med + 1; Sino {X <= V(Med) } Sup := Med; finsi Fin mientras Si V(inf) = X entonces existe := cierto; pos := inf; sino existe := falso; finsi Fin
  • 7. 5.3. Matrices 5.3.1. Introducción – ¿Qué ocurre cuando el tipo base de un array es otro array? Mat = vector[1..4] de (vector[1..5] de enteros); X: Mat; X X(1) X(2) X(3) X(4) Tenemos un array de 20 enteros, organizados en 4 bloques de 5 enteros cada uno: X(1) tendrá X(1,1), X(1,2), X(1,3), X(1,4), X(1,5) y así X(2), X(3) y X(4)
  • 8. • Obviamente, para acceder a cada elemento individual serán necesarios dos índices: uno por cada dimensión. X(1) X[1,1] X[1,2] X[1,3] X[1,4] X[1,5] X(2) X[2,1] X[2,2] X[2,3] X[2,4] X[2,5] X(3) X[3,1] X[3,2] X[3,3] X[3,4] X[3,5] X(4) X[4,1] X[4,2] X[4,3] X[4,4] X[4,5] 5.3.2. Sintaxis Además de la sintaxis anterior, que es genérica: <tipo-matriz> ::= <tipo> = vector [<tipo-indice>{,<tipo-indice>}] de <tipo-base> <tipo-indice> ::= <elemento-inicial> .. <elemento-final> 5.3.3. Ejemplos Notas = vector[1..4,1..9] de numérico; {Notas: 4 cursos x 9 asignaturas} Temperaturas = vector[1..12,1..31] de numérico; {Temperaturas anuales x meses} Nombres = vector[1..4,1..40] de cadenas; {Nombres de 40 alumnos x 4 cursos} N: Notas; T: Temperaturas; {T(6, 1): temperatura asociada al 1 de junio}
  • 9. 5.4. Operaciones sobre matrices 5.4.1. Recorrido • También se puede aplicar el tratamiento secuencial sobre los arrays en general y sobre las matrices en particular. En el caso de un vector: – Esquema 1 (Tratamiento en curso ≠ tratamiento final) iniciar tratamiento; para I de 1 a N-1 hace tratar X(I); {el elemento i-ésimo de la secuencia es X(I)} finpara; tratar X(N); – Esquema 2 (Tratamiento en curso = tratamiento final) iniciar tratamiento; para I de 1 a N hace tratar X(I); {el elemento i-ésimo de la secuencia es X(I)} finpara; Los elementos de la secuencia son escalares.
  • 10. En el caso de un vector multidimensional (por ejemplo, AMxN) • las filas (o las columnas) de la matriz forman también una secuencia (fila1), (fila2),..., (filaM) (X(1,1),...,X(1,N)), (X(2,1),...,X(2,N)), ..., (X(M,1),...,X(M,N)) • el elemento i-ésimo de la secuencia será una fila o una columna • a su vez, ese elemento puede necesitar también un tratamiento secuencial Recorrido de una matriz por filas Algoritmo Leer_matriz (A, M, N) es {declaración de tipos} matriz = vector[1..100, 1..100] de numérico; {declaración de parámetros} A: matriz; {p. dato-resultado} M, N: numérico; {p. dato; porción utilizable de la matriz} I: numérico; {entero, se usará como índice} Inicio para I desde 1 hasta M hacer leer_fila (A, I, N); fin para Fin
  • 11. Algoritmo Leer_fila (A, fila, max_col) es {declaración de tipos} matriz = vector[1..100, 1..100] de numérico; {declaración de parámetros} A: matriz; {p. dato-resultado} fila, max_col: numérico; {p. dato} J: numérico; {entero, se usará como índice} Inicio para J desde 1 hasta max_col hacer escribir “Dame el elemento “, J, “ de la fila “, fila, “: “; leer A(fila, J); fin para Fin Generalmente se escribirá de forma compacta: para I desde 1 hasta M hacer para J desde 1 hasta N hacer tratar A(I, J); fin para fin para
  • 12. Recorrido de una matriz por columnas Algoritmo Mostrar_matriz (A, M, N) es {declaración de tipos} matriz = vector[1..100, 1..100] de numérico; {declaración de parámetros} A: matriz; {p. dato-resultado} M, N: numérico; {p. datos; porción utilizable de la matriz} J: numérico; {entero, se usará como índice} Inicio para J desde 1 hasta N hacer {J=1..N, cada columna J de A} mostrar_columna (A, M, J); fin para Fin
  • 13. Algoritmo mostrar_columna (A, max_fil, col) es {declaración de tipos} matriz = vector[1..100, 1..100] de numérico; {declaración de parámetros} A: matriz; {p. dato-resultado} col, max_fil: numérico; {p. dato} I: numérico; {entero, se usará como índice} Inicio para I desde 1 hasta max_fil hacer escribir “El elemento “, I, “ de la columna “, col, “es: “; escribir A(I, col); fin para Fin Generalmente se escribirá de forma compacta: para J desde 1 hasta N hacer para I desde 1 hasta M hacer tratar A(I, J); fin para fin para
  • 14. 5.4.2. Traspuesta, suma y producto • Suma Resumen: Dadas dos matrices A y B de tamaños 100 x 100, en las que están ocupadas M x N posiciones, calcúlese en C la suma de A + B Algoritmo Suma (A, B, C, M, N) es A, B: matriz; {p. dato} C: matriz; {p. resultado} M, N: numérico; {p. dato} • Traspuesta Resumen: Dada una matriz A de tamaño 100 x 100, en la que están ocupadas M x N posiciones, transfórmese A en su traspuesta, sin utilizar ninguna estructura auxiliar Algoritmo Traspuesta (A, M, N) es A: matriz; {p. dato-resultado} M, N: numérico; {p. dato}
  • 15. • Producto Resumen: Dadas dos matrices A y B de tamaños máximos 100 x 100, en las que están ocupadas AMxN y BNxP posiciones, calcúlese en C el producto de A x B Algoritmo Producto (A, B, C, M, N, P) es A, B: matriz; {p. dato; AMxN y BNxP} C: matriz; {p. resultado; CMxP} M, N, P: numérico; {p. dato}
  • 16. Algoritmo Calcular N primeros números primos mediante la criba de Eratóstenes Inicialmente todos los números 2..10000 son números primos posibles Si I es un número primo (excepto el 1), elimino todos los números múltiplos de I, entre I*2 y 10000/I: para eliminar substituyo el valor inicial por 0. 1 2 3 4 5 6 7 8 9 10 1 1 1 1 1 1 1 1 1 1 i=2 Suprimir múltiplos de 2, que es primo, porque multiplos(i)=1 1 1 1 0 1 0 1 0 1 0