Vectores, Matrices o arreglos en la informatica

in #steemstem5 years ago (edited)

Todo sistema sin importar su fin necesita manipular información, esta puede ser separada y dividida de diversas formas hasta llegar a convertirse en una gran cantidad de datos. Los datos son manipulados de diversas formas, en el caso de datos numéricos se pueden aplicar operaciones sobre estos y generar cálculos complejos. Si mis datos son información (caracteres) como fechas, nombres son también utilizables para su consulta, y manipulación y así los sistemas almacenan, manipulan generan e incluso eliminan datos. 



Imagen descargada de Pixabay Aquí


Para poder manipular y manejar dichos datos la informática trabaja con Vectores o matrices, cuyo uso en la programación ha sido siempre una base importante para el diseño de cualquier sistema.


Vectores o Matrices en la programación


Un Vector es una zona de almacenamiento contiguo que contiene una serie de datos, estas permiten la recursividad con lo cual se forman matrices multidimensionales. Las matrices son creadas con un número determinado de elementos, formada por un conjunto de campos que ocupan una posición dentro de esta y que pueden ser ubicados mediante referentes llamados índices.


Según la notación utilizada para el primer elemento se pueden clasificar como base-0,base-1 o base-n.


Para su identificación y recorrido las matrices cuentan con índices que dan un valor de ubicación al dato, por otro lado el tamaño de estas puede ser dinámico o estático según sean definidos con un tamaño predefinido o si se maneja este según la cantidad de información que se agrega.


Algunos ejemplos de matrices en lenguajes son:


En C


Tipo_de_Variable Nombre_del_arreglo [indice];

Tipo_de_Variable Nombre_del_arreglo [indice 1] [indice 2] [...] [indice];


En PHP


$Nombre_del_Arreglo[indice] 

$Nombre_del Arreglo[indice 1][indice 2][indice N]


Donde las índices pueden ser referenciadas por un nombre o posición.


En Python


arreglo[indice 1,indice 2,...,indice N]


Donde el índice base es la línea y se recorre las columnas.


Si bien todo los lenguajes tienen pequeñas variantes de sintaxis en el uso de de matrices, todos utilizan este recurso, arreglos de este tipo que se mantienen en la memoria con información diversa, este espacio de memoria utilizado goza de usos múltiples, desde crear tablas de variables que se puedan invocar en cualquier momento como el caso de valores de elementos de la tabla periódica, hasta información de usuarios que son manipuladas para crear reportes. En la siguiente gráfica se observan los dos tipos de matrices más comunes.



Imagen realizada por @ubaldonet en Inkscape


Las matrices con múltiples índices sin embargo son un poco más complejas veamos la siguiente gráfica:



                           Imagen realizada por @ubaldonet en Inkscape


En la gráfica observamos como al insertar un tercer índice nos conseguimos ya con una matriz de tres índices, donde además de filas y columnas tendremos una profundidad, si bien una matriz de 3 índices aún se pueden representar de forma sencilla, si seguimos agregando índices es posible recorrerlos usando múltiples sistemas de burbujas, pero su representación se puede complicar un poco al momento de llevarlo a una gráfica, siendo poco común su uso.


Hojas de Cálculo y matrices


El uso de hojas de cálculo en la actualidad es común, documentos que al estar formado por filas y columnas pueden tratarse como matrices de datos sobre la cuales se realizan diferentes operaciones, a diferencia del manejo de arreglos en los lenguajes de comunicación las hojas de cálculo son herramientas al alcance de usuarios no especializados.


Las celdas pueden ser ubicadas por filas y columnas de forma similar a la forma que ubicamos los datos por los índices, y según las necesidades sus usuarios le dan tratamientos como si de una matriz se tratara, bien a una hoja completa o a una sección de esta.


Dada esta similitud se han desarrollado una gran cantidad de funciones para el trabajo sobre matrices, de forma de utilizar estas con funciones avanzadas.


En LibreOffice por ejemplo tenemos:


  • Transponer o Transpose
  • Estimación Lineal
  • MDETERM (Determinante de una matriz)
  • MINVERSA (Matriz Inversa)


Esta son algunas de las funciones sin embargo son un buen ejemplo para ver que las hojas de cálculo, son aprovechadas de forma extensa como matrices de datos, por personas que sin necesidad de desarrollar en un lenguaje de programación aprovechan estas herramientas para manipulación de datos.


La aplicación de una matriz para el uso directo de usuarios por medio de las hojas de cálculos es uno de los usos que más versatilidad le ha dado a los sistemas informáticos, la utilización de esta herramienta por parte de diversos profesionales es hoy día común, ingenieros, estadistas, economistas y todo aquel que desee convertir tablas de información en matrices de datos manipulables que incluso pueden conectarse entre sí, recordando que las hojas de cálculo actuales pueden manejar múltiples hojas que pueden enlazarse entre sí.


Software Especializado


Si bien las Hojas de Cálculo son una herramienta de uso genérico, las matrices son utilizadas también en aplicaciones de uso especializado. Tomemos el caso de MatLab, software de diseño de modelos de inteligencia artificial (IA), donde la utilización de matrices une funciones de programación con funciones predefinidas como en las hojas de cálculo.


Donde MatLab almacena matrices que pueden ser utilizadas al momento de realizar cualquier cálculo donde se necesite la información que se desee manipular. Recordando que los modelos de IA requieren de la manipulación de gran cantidad de datos, el uso de matrices es un concepto natural.


Consideraciones


Todo sistema informático existe para la manipulación de datos , las matrices son una forma de estructurar estos y manipularlos, en programación son una herramienta fundamental, el manejo de matrices en memoria ayuda a realizar almacenaje y manipulación de datos de forma rápida, desde crear reportes hasta realización de cálculos, las matrices almacenan la información necesaria en memoria para los programas.


Con el concepto de manipular datos las matrices existen aplicaciones que hacen uso de estas para facilitar al usuario a realizar manipulación de datos desde hojas de cálculo hasta aplicaciones para usos avanzados como MatLab. 


Referencias


Wikilibros Aquí

Post Aquí

Wikipedia Aquí

Proyecto Libre Office Documentación Aquí

Post Aquí


Sort:  

Enjoy the vote and some free shit!


You have been rewarded with some SHIT! Take a trip to the bathroom to stake and manage your worthless tokens.

¡Gracias por no hacer Power Down!

Enfocados en la adopción y promoción de la blockchain de Steem valoramos tu compromiso con ella. Gracias por no hacer Power Down, juntos llevaremos el Steem a la Luna y por eso solo votaremos publicaciones de calidad hechas por usuarios que evoquen ese sentimiento hacia nuestra plataforma.



This post has been voted on by the SteemSTEM curation team and voting trail. It is elligible for support from @curie.

If you appreciate the work we are doing, then consider supporting our witness stem.witness. Additional witness support to the curie witness would be appreciated as well.

For additional information please join us on the SteemSTEM discord and to get to know the rest of the community!

Thanks for having added @steemstem as a beneficiary to your post. This granted you a stronger support from SteemSTEM.

Thanks for having used the steemstem.io app. You got a stronger support!