SlideShare una empresa de Scribd logo
1 de 12
MATRICES

Son un espacio de almacenamiento continuo, que contiene una serie de
elementos del mismo tipo de datos. Desde el punto de vista lógico una matriz se
puede ver como un conjunto de elementos ordenados en fila (o filas y columnas)
en el caso de dos dimensiones).




Todo Arreglo se compone de un determinado número de elementos. Cada
elemento es referenciado por la posición que ocupa dentro del vector. Dichas
posiciones son llamadas índice y siempre son correlativos. Existen formas de
indexar los elementos de una matriz:

      Indexación base-cero (0): En este modo el primer elemento del vector
      será la componente cero ('0') del mismo, es decir, tendrá el índice '0'. En
      consecuencia, si el vector tiene 'n' componentes la última tendrá como
      índice el valor 'n-1'. Java y el lenguaje C es un ejemplo típico que utiliza
      este modo de indexación.

      Indexación base-uno (1): En esta forma de indexación, el primer elemento
      de la matriz tiene el índice '1' y el último tiene el índice 'n' (para una matriz
      de 'n' componentes).



Se trabajará con indexación base-Cero.


Una matriz es un arreglo bidimensional (2 dimensiones, filas y columnas)
Las matrices nos permitirán registrar conjuntos de datos, todos del mismo tipo.
Podremos crear matrices de enteros de tipo Entero o de reales de tipo double así
como matrices de cadenas de caracteres pero en un mismo array no podremos
mezclar datos de distinto tipo.




Cada elemento de la matriz podrá ser accedido directamente por el nombre de la
matriz seguido de uno o más subíndices enteros, en función de la dimensión de la
matriz, encerrados entre corchetes (M[0], M[1]...).
Nota: No confundir los elementos de la matriz con las posiciones o índices de la
Misma


Tip! para el diseñador

El número máximo de dimensiones o de elementos depende de la memoria
disponible (límites establecidos por el compilador)


Como accesar a los elementos de la matriz




Como accesar a los elementos de la matriz

podemos ver que cada elemento de una matriz tiene una posición (dado por la fila
y columna) y un dato, por ejemplo:

M[0][1] tiene el dato 7
M[3][2] error porque no existe la fila 3
M[2][0] tiene el dato 2
M[2][3] tiene el dato 8



Cada elemento del array puede ser manejado como cualquier variable. Por
ejemplo:
Entero A = M[0][1] + M[1][1]; // A = 7 + 6 = 13
Entero B = 2 + M[1][2]; // B = 2 + 4 = 6
M[0][0] = A + B; // M[0][0] = 13 + 6 = 19

Nota: En adelante se hace referencia a las estructuras creadas con base a la
utilización de clases, métodos y el nivel de accesibilidad de los mismos.
I
        DECLARACION DE LA ESTRUCTURA

1.1CREACION DE LA MATRIZ




1.2 Definir las variables que manipularán la estructura.

En esta parte del diseño es necesario definir las variables índices, variables de
cálculos y operaciones que regirán los métodos con ámbito global y el nivel de
visiblilidad. Para darle una correcta documentación al diseño es recomendable
comentar el uso que tendrá dicha variable en la estructura que se está diseñando




Ejemplo
Publicoo Entero M [ ][ ]; // Estructura de la Matriz
Publicoo Entero F,C; // Almacenara os índices de la matriz
Publicoo Entero MaxF , MaxC; //Capacidad máxima almacenamiento
Publicoo Entero Elem;// Elemento que se agrega a la Matriz (Tecleado por el usuario)
II
    INICIALIZACIÓN DE LA ESTRUCTURA
Elaboración de un método constructor para inicializar la estructura.

2.1 Se toman como referencia para el tamaño de la matriz los parámetros
contenidos en las variables NF y NC, los datos de estos parámetros son obtenidos
a través de otra clase Que llamaremos MenuPpal donde el usuario determina el
tamaño de la matriz.

2.2 Se indica nivel de acceso público a la estructura creada.


2.3 Creación de la matriz se representa como estructura de datos definida por el
usuario

2.4 Se inicializan los valores de las variables de la estructura.


Ejemplo

Publico M (entero NF, entero NC) // se recibe parámetro para tamaño de matriz
Inicio
       M = new Entero [NF][NC];
       M =NF-1;
       M =NC-1;
       F=-1;
       C=-1;
Fin
III
                     ENCAPSULAMIENTO
En este caso encapsularemos


publico Entero[][] getMatriz()
Inicio
     retornar Matriz;
Fin

publico void setMatriz(Entero[][] Matriz)
Inicio
      Matriz = Matriz;
Fin

publico void SetF(Entero F)
Inicio
      F=F;
 Fin

publico Entero getF()
 Inicio
     retornar F;
 Fin

publico Entero getC()
Inicio
     retornar C;
Fin

publico void SetC(Entero C)
Inicio
      C=C;
Fin
IV
                            Métodos
Los métodos son subrutinas que gobernaran a la estructura de datos creada, los
métodos permitirán definir el comportamiento de la estructura durante la ejecución
del programa.


Las operaciones cotidianas que realizan las matrices son las siguientes
      Inserción
      Eliminación
      Búsqueda
      Ordenamiento
      Visualización


Inicialmente definiremos los métodos que indicarán el estado de la estructura en
este caso nos interesa saber cuando la matriz está llena y cuando esta vacía
para lo cual realizaremos métodos booleanos que determinar si es falso o
verdadero el estado consultado.


3.1 Método para determinar si una matriz esta vacía.

Publico booleano MatrizVacia()
Inicio
     Si ((F==-1) y (C==-1))
     Inicio
          retorne Verdadero;
          sino
             retorne falso;
     Fin Si
Fin Metodo

Explicación: Las variables F y C son los índices de la matriz y se está utilizando
el sistema de indexación en base a 0, por lo cual si el valor de las filas y columnas
es de -1 indicaría que la estructura esta vacía.
3.2 Método para determinar si una matriz está Llena.

Publico booleano MatrizLLena()
Inicio
     Si ((F==MaxF) y (C== MaxC))
     Inicio
          retorne Verdadero;
          sino
             retornare falso;
     Fin Si
Fin Metodo

Explicación: Las variables MaxF y MaxC están almacenado la capacidad máxima
de almacenamiento de la matriz, por lo tanto se comparan los índices con las
capacidades en caso tal que sean iguales nos indicaría que la estructura está
Llena.


METODO BOOLEANO QUE DETERMINA SI LA MATRIZ ES CUADRADA

publico boolean MatrizCuadrada()
Inicio
      si ((MaxF==MaxC))
      Inicio
            retornar verdadero;
      Fin
      sino
           retornar falso;
Fin


Explicación: Las variables MaxF y MaxC están guardando la capacidad máxima
de almacenamiento que serian lo mismo que la longitud de las filas y la longitud de
la columna, por lo tanto se comparan dichas variables y si sin iguales la matriz es
cuadrada
METODO PARA LLENAR MATRIZ

publico void LlenarMatriz( )
Inicio
    si(!MatrizLlena())
    Inicio
         Para (F=0;F<= MaxF;F++)//1.1
         Inicio
               Para (C=0;C<=MaxC;C++)//1.2
               Inicio
                  Elem = Escriba(" Digite numero en la posicion "+F +" ," +C+ "===> ");
                  Matriz[F][C] = Elem;
             Fin
             Escriba("n La Matriz a quedado llena !! ");
       Fin
   FIn
   sino
      Escriba("n Matriz llena !! Imposible introducir un valor a la Matriz");
Fin


Explicación: Se verifica que la matriz no este llena , se realiza ciclos repetitivos
con los índices F para las filas y C para las columnas, se captura valor y se
almacena en la matriz en la posición que indiquen los índices, el método llena la
matriz cada vez que se invoca.
METODO PARA IMPRIMIR MATRIZ

publico void Imprimir ()
Inicio
        si (MatrizVacia())
       Inicio
                Escriba(" La Matriz esta vacia, no ntiene elementos que mostrar ");
       Fin
       sino
       Inicio
                Para (Entero i = 0 ; i <= MaxF ; i++ )
                Inicio
                Escriba("");
                Para (Entero j = 0 ; j <= MaxC ; j++ )
                Inicio
                       Escriba("t" + getMatriz()[i][j]);
                Fin
       Fin
       Escriba("");
Fin

Explicación: Se verifica que la matriz no este vacia, se realiza ciclos repetitivos
con los índices F para las filas y C para las columnas, se imprime en pantalla el
valor de la matriz en la posición que indiquen los índices, el método imprime toda
la matriz cada vez que se invoca.
METODO QUE IMPRIME LA DIAGONAL PRINCIPAL DE LA MATRIZ

publico void DiagonalPpal ()
 Inicio
     si (!MatrizVacia())
     Inicio
        si (MatrizCuadrada())
         Inicio
             Para (Entero i = 0 ; i <= MaxF ; i++ )
              Inicio
                   Escriba("t" +getMatriz()[i][i]);
               Fin
         Fin
         sino
         Escriba("La matriz no es cuadrada");
     Fin
     sino
        Escriba("La matriz esta Vacia");
 Fin

METODO QUE IMPRIME LA DIAGONAL SECUNDARIA

publico void DiagonalSec ()
Inicio
    Para (Entero i = MaxF; i >= 0 ; i-- )
    Inicio
         Para (Entero j = 0 ; j <= MaxC ; j++ )
         Inicio
               si (i+j==MaxF)
                Inicio
                       Escriba("t" +getMatriz()[i][j]);
                Fin
        Fin
     Fin
Fin

Más contenido relacionado

La actualidad más candente

Linear and Binary search
Linear and Binary searchLinear and Binary search
Linear and Binary searchNisha Soms
 
Introduction to oracle functions
Introduction to oracle functionsIntroduction to oracle functions
Introduction to oracle functionsNitesh Singh
 
Array Presentation (EngineerBaBu.com)
Array Presentation (EngineerBaBu.com)Array Presentation (EngineerBaBu.com)
Array Presentation (EngineerBaBu.com)EngineerBabu
 
Doubly linked list
Doubly linked listDoubly linked list
Doubly linked listchauhankapil
 
Aplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesAplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesmarigelcontreras
 
Linked stacks and queues
Linked stacks and queuesLinked stacks and queues
Linked stacks and queuesRamzi Alqrainy
 
The solution manual of programming in ansi by Robin
The solution manual of programming in ansi by RobinThe solution manual of programming in ansi by Robin
The solution manual of programming in ansi by RobinShariful Haque Robin
 
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...Linked List, Types of Linked LIst, Various Operations, Applications of Linked...
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...Balwant Gorad
 
Estructura de datos lineales y no lineales
Estructura de datos lineales y no linealesEstructura de datos lineales y no lineales
Estructura de datos lineales y no linealeslos4estatidinamicos
 
11. Hashing - Data Structures using C++ by Varsha Patil
11. Hashing - Data Structures using C++ by Varsha Patil11. Hashing - Data Structures using C++ by Varsha Patil
11. Hashing - Data Structures using C++ by Varsha Patilwidespreadpromotion
 

La actualidad más candente (20)

Linear and Binary search
Linear and Binary searchLinear and Binary search
Linear and Binary search
 
Linked List
Linked ListLinked List
Linked List
 
Computer Science-Data Structures :Abstract DataType (ADT)
Computer Science-Data Structures :Abstract DataType (ADT)Computer Science-Data Structures :Abstract DataType (ADT)
Computer Science-Data Structures :Abstract DataType (ADT)
 
Introduction to oracle functions
Introduction to oracle functionsIntroduction to oracle functions
Introduction to oracle functions
 
Array Presentation (EngineerBaBu.com)
Array Presentation (EngineerBaBu.com)Array Presentation (EngineerBaBu.com)
Array Presentation (EngineerBaBu.com)
 
Doubly linked list
Doubly linked listDoubly linked list
Doubly linked list
 
Aplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionalesAplicación de arreglos bidimensionales
Aplicación de arreglos bidimensionales
 
Linked stacks and queues
Linked stacks and queuesLinked stacks and queues
Linked stacks and queues
 
Circular queue
Circular queueCircular queue
Circular queue
 
The solution manual of programming in ansi by Robin
The solution manual of programming in ansi by RobinThe solution manual of programming in ansi by Robin
The solution manual of programming in ansi by Robin
 
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...Linked List, Types of Linked LIst, Various Operations, Applications of Linked...
Linked List, Types of Linked LIst, Various Operations, Applications of Linked...
 
Singly linked list
Singly linked listSingly linked list
Singly linked list
 
Arrays in c
Arrays in cArrays in c
Arrays in c
 
linked list
linked list linked list
linked list
 
stack presentation
stack presentationstack presentation
stack presentation
 
Estructura de datos lineales y no lineales
Estructura de datos lineales y no linealesEstructura de datos lineales y no lineales
Estructura de datos lineales y no lineales
 
11. Hashing - Data Structures using C++ by Varsha Patil
11. Hashing - Data Structures using C++ by Varsha Patil11. Hashing - Data Structures using C++ by Varsha Patil
11. Hashing - Data Structures using C++ by Varsha Patil
 
Strings IN C
Strings IN CStrings IN C
Strings IN C
 
Stack
StackStack
Stack
 
Mecanica
MecanicaMecanica
Mecanica
 

Destacado

Exposición de matrices
Exposición de matricesExposición de matrices
Exposición de matricesAlex Maldonado
 
Inversión de matrices
Inversión de matricesInversión de matrices
Inversión de matricesmariacadena
 
Taller de matrices y sistemas de ecuaciones lineales
Taller de matrices y sistemas de ecuaciones linealesTaller de matrices y sistemas de ecuaciones lineales
Taller de matrices y sistemas de ecuaciones linealesAlbert Page
 
Matrices elementales e inversas
Matrices elementales e inversasMatrices elementales e inversas
Matrices elementales e inversasAlbert Page
 
Matrices - álgebra lineal
Matrices - álgebra linealMatrices - álgebra lineal
Matrices - álgebra linealAlbert Page
 
Matrices And Determinants
Matrices And DeterminantsMatrices And Determinants
Matrices And DeterminantsDEVIKA S INDU
 
Some application of trignometry
Some application of trignometrySome application of trignometry
Some application of trignometryshivujagga
 
MATRICES
MATRICESMATRICES
MATRICESfaijmsk
 
Real World Application of Trigonometry
Real World Application of TrigonometryReal World Application of Trigonometry
Real World Application of Trigonometryihatetheses
 
Some applications of trigonometry
Some applications of trigonometrySome applications of trigonometry
Some applications of trigonometryDeepak Dalal
 
Trigonometry, Applications of Trigonometry CBSE Class X Project
Trigonometry, Applications of Trigonometry CBSE Class X ProjectTrigonometry, Applications of Trigonometry CBSE Class X Project
Trigonometry, Applications of Trigonometry CBSE Class X ProjectSpandan Bhattacharya
 
Trigonometry project
Trigonometry projectTrigonometry project
Trigonometry projectKajal Soni
 
Matrices And Application Of Matrices
Matrices And Application Of MatricesMatrices And Application Of Matrices
Matrices And Application Of Matricesmailrenuka
 
PPT on Trigonometric Functions. Class 11
PPT on Trigonometric Functions. Class 11PPT on Trigonometric Functions. Class 11
PPT on Trigonometric Functions. Class 11Rushikesh Reddy
 
Introduction to trigonometry 
Introduction to trigonometry      Introduction to trigonometry      
Introduction to trigonometry Gayathri Gaya
 
Maths ppt on some applications of trignometry
Maths ppt on some applications of trignometryMaths ppt on some applications of trignometry
Maths ppt on some applications of trignometryHarsh Mahajan
 

Destacado (20)

Matrices
MatricesMatrices
Matrices
 
Exposición de matrices
Exposición de matricesExposición de matrices
Exposición de matrices
 
Math Project Matrix
Math Project MatrixMath Project Matrix
Math Project Matrix
 
Inversión de matrices
Inversión de matricesInversión de matrices
Inversión de matrices
 
Taller de matrices y sistemas de ecuaciones lineales
Taller de matrices y sistemas de ecuaciones linealesTaller de matrices y sistemas de ecuaciones lineales
Taller de matrices y sistemas de ecuaciones lineales
 
Matrices elementales e inversas
Matrices elementales e inversasMatrices elementales e inversas
Matrices elementales e inversas
 
Matrices - álgebra lineal
Matrices - álgebra linealMatrices - álgebra lineal
Matrices - álgebra lineal
 
Matrices
MatricesMatrices
Matrices
 
Matrices And Determinants
Matrices And DeterminantsMatrices And Determinants
Matrices And Determinants
 
Some application of trignometry
Some application of trignometrySome application of trignometry
Some application of trignometry
 
MATRICES
MATRICESMATRICES
MATRICES
 
Real World Application of Trigonometry
Real World Application of TrigonometryReal World Application of Trigonometry
Real World Application of Trigonometry
 
Some applications of trigonometry
Some applications of trigonometrySome applications of trigonometry
Some applications of trigonometry
 
Trigonometry, Applications of Trigonometry CBSE Class X Project
Trigonometry, Applications of Trigonometry CBSE Class X ProjectTrigonometry, Applications of Trigonometry CBSE Class X Project
Trigonometry, Applications of Trigonometry CBSE Class X Project
 
Trigonometry project
Trigonometry projectTrigonometry project
Trigonometry project
 
Matrices And Application Of Matrices
Matrices And Application Of MatricesMatrices And Application Of Matrices
Matrices And Application Of Matrices
 
PPT on Trigonometric Functions. Class 11
PPT on Trigonometric Functions. Class 11PPT on Trigonometric Functions. Class 11
PPT on Trigonometric Functions. Class 11
 
Introduction to trigonometry 
Introduction to trigonometry      Introduction to trigonometry      
Introduction to trigonometry 
 
Maths ppt on some applications of trignometry
Maths ppt on some applications of trignometryMaths ppt on some applications of trignometry
Maths ppt on some applications of trignometry
 
Trigonometry presentation
Trigonometry presentationTrigonometry presentation
Trigonometry presentation
 

Similar a Matrices (20)

Luis Gamboa
Luis  GamboaLuis  Gamboa
Luis Gamboa
 
Matrices en java
Matrices en javaMatrices en java
Matrices en java
 
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
 
Arreglos bidimensionales o matrices
Arreglos bidimensionales o matricesArreglos bidimensionales o matrices
Arreglos bidimensionales o matrices
 
B2 T5 Vectores Ii
B2 T5 Vectores IiB2 T5 Vectores Ii
B2 T5 Vectores Ii
 
Matlab
MatlabMatlab
Matlab
 
Clase1_Matrices.pptx
Clase1_Matrices.pptxClase1_Matrices.pptx
Clase1_Matrices.pptx
 
06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C06 - Arrays y matrices en lenguaje C
06 - Arrays y matrices en lenguaje C
 
Matrices en excel
Matrices en excelMatrices en excel
Matrices en excel
 
11_Matrices.pptx
11_Matrices.pptx11_Matrices.pptx
11_Matrices.pptx
 
Cuaderno digital
Cuaderno digitalCuaderno digital
Cuaderno digital
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Matlab
MatlabMatlab
Matlab
 
Cuaderno
CuadernoCuaderno
Cuaderno
 
Cuaderno
CuadernoCuaderno
Cuaderno
 
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 

Más de Boris Salleg

01. capitulo 2 6 validacion de datos
01. capitulo 2  6 validacion de datos01. capitulo 2  6 validacion de datos
01. capitulo 2 6 validacion de datosBoris Salleg
 
03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminadaBoris Salleg
 
01. contenido curso internet basico
01. contenido curso internet basico01. contenido curso internet basico
01. contenido curso internet basicoBoris Salleg
 
Contenido curso excel basico
Contenido curso excel basicoContenido curso excel basico
Contenido curso excel basicoBoris Salleg
 
Compromiso academico servicios de internet
Compromiso academico servicios de internetCompromiso academico servicios de internet
Compromiso academico servicios de internetBoris Salleg
 
Compromiso academico excel basico
Compromiso academico excel basicoCompromiso academico excel basico
Compromiso academico excel basicoBoris Salleg
 
Taller #1 institucion educativa las margaritas
Taller #1   institucion educativa las margaritasTaller #1   institucion educativa las margaritas
Taller #1 institucion educativa las margaritasBoris Salleg
 
Introduccion base de datos
Introduccion base de datosIntroduccion base de datos
Introduccion base de datosBoris Salleg
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspBoris Salleg
 
Conexion bd en java y api necesaria
Conexion bd en java y api necesariaConexion bd en java y api necesaria
Conexion bd en java y api necesariaBoris Salleg
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionBoris Salleg
 
Algoritmo de listas simples completo
Algoritmo de listas simples  completoAlgoritmo de listas simples  completo
Algoritmo de listas simples completoBoris Salleg
 
Introduccion base de datos con MYSQL
Introduccion base de datos con MYSQLIntroduccion base de datos con MYSQL
Introduccion base de datos con MYSQLBoris Salleg
 
Practica utilizacion de beans en jsp
Practica  utilizacion de beans en jspPractica  utilizacion de beans en jsp
Practica utilizacion de beans en jspBoris Salleg
 
Utilizacion de beans en jsp
Utilizacion de beans en jspUtilizacion de beans en jsp
Utilizacion de beans en jspBoris Salleg
 

Más de Boris Salleg (20)

01. capitulo 2 6 validacion de datos
01. capitulo 2  6 validacion de datos01. capitulo 2  6 validacion de datos
01. capitulo 2 6 validacion de datos
 
03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada
 
01. contenido curso internet basico
01. contenido curso internet basico01. contenido curso internet basico
01. contenido curso internet basico
 
Contenido curso excel basico
Contenido curso excel basicoContenido curso excel basico
Contenido curso excel basico
 
Compromiso academico servicios de internet
Compromiso academico servicios de internetCompromiso academico servicios de internet
Compromiso academico servicios de internet
 
Compromiso academico excel basico
Compromiso academico excel basicoCompromiso academico excel basico
Compromiso academico excel basico
 
Taller #1 institucion educativa las margaritas
Taller #1   institucion educativa las margaritasTaller #1   institucion educativa las margaritas
Taller #1 institucion educativa las margaritas
 
Arboles
ArbolesArboles
Arboles
 
Introduccion base de datos
Introduccion base de datosIntroduccion base de datos
Introduccion base de datos
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
 
Conexion bd en java y api necesaria
Conexion bd en java y api necesariaConexion bd en java y api necesaria
Conexion bd en java y api necesaria
 
Condicionales
CondicionalesCondicionales
Condicionales
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacion
 
Algoritmo de listas simples completo
Algoritmo de listas simples  completoAlgoritmo de listas simples  completo
Algoritmo de listas simples completo
 
Introduccion base de datos con MYSQL
Introduccion base de datos con MYSQLIntroduccion base de datos con MYSQL
Introduccion base de datos con MYSQL
 
Practica utilizacion de beans en jsp
Practica  utilizacion de beans en jspPractica  utilizacion de beans en jsp
Practica utilizacion de beans en jsp
 
Utilizacion de beans en jsp
Utilizacion de beans en jspUtilizacion de beans en jsp
Utilizacion de beans en jsp
 
Practica eventos
Practica eventosPractica eventos
Practica eventos
 
Clase event
Clase eventClase event
Clase event
 

Último

DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxCeciliaGuerreroGonza1
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 

Último (20)

DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
6° SEM30 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 

Matrices

  • 1. MATRICES Son un espacio de almacenamiento continuo, que contiene una serie de elementos del mismo tipo de datos. Desde el punto de vista lógico una matriz se puede ver como un conjunto de elementos ordenados en fila (o filas y columnas) en el caso de dos dimensiones). Todo Arreglo se compone de un determinado número de elementos. Cada elemento es referenciado por la posición que ocupa dentro del vector. Dichas posiciones son llamadas índice y siempre son correlativos. Existen formas de indexar los elementos de una matriz: Indexación base-cero (0): En este modo el primer elemento del vector será la componente cero ('0') del mismo, es decir, tendrá el índice '0'. En consecuencia, si el vector tiene 'n' componentes la última tendrá como índice el valor 'n-1'. Java y el lenguaje C es un ejemplo típico que utiliza este modo de indexación. Indexación base-uno (1): En esta forma de indexación, el primer elemento de la matriz tiene el índice '1' y el último tiene el índice 'n' (para una matriz de 'n' componentes). Se trabajará con indexación base-Cero. Una matriz es un arreglo bidimensional (2 dimensiones, filas y columnas)
  • 2. Las matrices nos permitirán registrar conjuntos de datos, todos del mismo tipo. Podremos crear matrices de enteros de tipo Entero o de reales de tipo double así como matrices de cadenas de caracteres pero en un mismo array no podremos mezclar datos de distinto tipo. Cada elemento de la matriz podrá ser accedido directamente por el nombre de la matriz seguido de uno o más subíndices enteros, en función de la dimensión de la matriz, encerrados entre corchetes (M[0], M[1]...).
  • 3. Nota: No confundir los elementos de la matriz con las posiciones o índices de la Misma Tip! para el diseñador El número máximo de dimensiones o de elementos depende de la memoria disponible (límites establecidos por el compilador) Como accesar a los elementos de la matriz Como accesar a los elementos de la matriz podemos ver que cada elemento de una matriz tiene una posición (dado por la fila y columna) y un dato, por ejemplo: M[0][1] tiene el dato 7 M[3][2] error porque no existe la fila 3 M[2][0] tiene el dato 2 M[2][3] tiene el dato 8 Cada elemento del array puede ser manejado como cualquier variable. Por ejemplo:
  • 4. Entero A = M[0][1] + M[1][1]; // A = 7 + 6 = 13 Entero B = 2 + M[1][2]; // B = 2 + 4 = 6 M[0][0] = A + B; // M[0][0] = 13 + 6 = 19 Nota: En adelante se hace referencia a las estructuras creadas con base a la utilización de clases, métodos y el nivel de accesibilidad de los mismos.
  • 5. I DECLARACION DE LA ESTRUCTURA 1.1CREACION DE LA MATRIZ 1.2 Definir las variables que manipularán la estructura. En esta parte del diseño es necesario definir las variables índices, variables de cálculos y operaciones que regirán los métodos con ámbito global y el nivel de visiblilidad. Para darle una correcta documentación al diseño es recomendable comentar el uso que tendrá dicha variable en la estructura que se está diseñando Ejemplo Publicoo Entero M [ ][ ]; // Estructura de la Matriz Publicoo Entero F,C; // Almacenara os índices de la matriz Publicoo Entero MaxF , MaxC; //Capacidad máxima almacenamiento Publicoo Entero Elem;// Elemento que se agrega a la Matriz (Tecleado por el usuario)
  • 6. II INICIALIZACIÓN DE LA ESTRUCTURA Elaboración de un método constructor para inicializar la estructura. 2.1 Se toman como referencia para el tamaño de la matriz los parámetros contenidos en las variables NF y NC, los datos de estos parámetros son obtenidos a través de otra clase Que llamaremos MenuPpal donde el usuario determina el tamaño de la matriz. 2.2 Se indica nivel de acceso público a la estructura creada. 2.3 Creación de la matriz se representa como estructura de datos definida por el usuario 2.4 Se inicializan los valores de las variables de la estructura. Ejemplo Publico M (entero NF, entero NC) // se recibe parámetro para tamaño de matriz Inicio M = new Entero [NF][NC]; M =NF-1; M =NC-1; F=-1; C=-1; Fin
  • 7. III ENCAPSULAMIENTO En este caso encapsularemos publico Entero[][] getMatriz() Inicio retornar Matriz; Fin publico void setMatriz(Entero[][] Matriz) Inicio Matriz = Matriz; Fin publico void SetF(Entero F) Inicio F=F; Fin publico Entero getF() Inicio retornar F; Fin publico Entero getC() Inicio retornar C; Fin publico void SetC(Entero C) Inicio C=C; Fin
  • 8. IV Métodos Los métodos son subrutinas que gobernaran a la estructura de datos creada, los métodos permitirán definir el comportamiento de la estructura durante la ejecución del programa. Las operaciones cotidianas que realizan las matrices son las siguientes Inserción Eliminación Búsqueda Ordenamiento Visualización Inicialmente definiremos los métodos que indicarán el estado de la estructura en este caso nos interesa saber cuando la matriz está llena y cuando esta vacía para lo cual realizaremos métodos booleanos que determinar si es falso o verdadero el estado consultado. 3.1 Método para determinar si una matriz esta vacía. Publico booleano MatrizVacia() Inicio Si ((F==-1) y (C==-1)) Inicio retorne Verdadero; sino retorne falso; Fin Si Fin Metodo Explicación: Las variables F y C son los índices de la matriz y se está utilizando el sistema de indexación en base a 0, por lo cual si el valor de las filas y columnas es de -1 indicaría que la estructura esta vacía.
  • 9. 3.2 Método para determinar si una matriz está Llena. Publico booleano MatrizLLena() Inicio Si ((F==MaxF) y (C== MaxC)) Inicio retorne Verdadero; sino retornare falso; Fin Si Fin Metodo Explicación: Las variables MaxF y MaxC están almacenado la capacidad máxima de almacenamiento de la matriz, por lo tanto se comparan los índices con las capacidades en caso tal que sean iguales nos indicaría que la estructura está Llena. METODO BOOLEANO QUE DETERMINA SI LA MATRIZ ES CUADRADA publico boolean MatrizCuadrada() Inicio si ((MaxF==MaxC)) Inicio retornar verdadero; Fin sino retornar falso; Fin Explicación: Las variables MaxF y MaxC están guardando la capacidad máxima de almacenamiento que serian lo mismo que la longitud de las filas y la longitud de la columna, por lo tanto se comparan dichas variables y si sin iguales la matriz es cuadrada
  • 10. METODO PARA LLENAR MATRIZ publico void LlenarMatriz( ) Inicio si(!MatrizLlena()) Inicio Para (F=0;F<= MaxF;F++)//1.1 Inicio Para (C=0;C<=MaxC;C++)//1.2 Inicio Elem = Escriba(" Digite numero en la posicion "+F +" ," +C+ "===> "); Matriz[F][C] = Elem; Fin Escriba("n La Matriz a quedado llena !! "); Fin FIn sino Escriba("n Matriz llena !! Imposible introducir un valor a la Matriz"); Fin Explicación: Se verifica que la matriz no este llena , se realiza ciclos repetitivos con los índices F para las filas y C para las columnas, se captura valor y se almacena en la matriz en la posición que indiquen los índices, el método llena la matriz cada vez que se invoca.
  • 11. METODO PARA IMPRIMIR MATRIZ publico void Imprimir () Inicio si (MatrizVacia()) Inicio Escriba(" La Matriz esta vacia, no ntiene elementos que mostrar "); Fin sino Inicio Para (Entero i = 0 ; i <= MaxF ; i++ ) Inicio Escriba(""); Para (Entero j = 0 ; j <= MaxC ; j++ ) Inicio Escriba("t" + getMatriz()[i][j]); Fin Fin Escriba(""); Fin Explicación: Se verifica que la matriz no este vacia, se realiza ciclos repetitivos con los índices F para las filas y C para las columnas, se imprime en pantalla el valor de la matriz en la posición que indiquen los índices, el método imprime toda la matriz cada vez que se invoca.
  • 12. METODO QUE IMPRIME LA DIAGONAL PRINCIPAL DE LA MATRIZ publico void DiagonalPpal () Inicio si (!MatrizVacia()) Inicio si (MatrizCuadrada()) Inicio Para (Entero i = 0 ; i <= MaxF ; i++ ) Inicio Escriba("t" +getMatriz()[i][i]); Fin Fin sino Escriba("La matriz no es cuadrada"); Fin sino Escriba("La matriz esta Vacia"); Fin METODO QUE IMPRIME LA DIAGONAL SECUNDARIA publico void DiagonalSec () Inicio Para (Entero i = MaxF; i >= 0 ; i-- ) Inicio Para (Entero j = 0 ; j <= MaxC ; j++ ) Inicio si (i+j==MaxF) Inicio Escriba("t" +getMatriz()[i][j]); Fin Fin Fin Fin