Tema 5 otros_tipos_de_arreglos

17
PRESENTACIÓN: REALIZADO POR: JONATHAN MOROCHO 1699 REMIGIO AYALA 1860 OTROS TIPOS DE ARREGLOS

Transcript of Tema 5 otros_tipos_de_arreglos

Page 1: Tema 5 otros_tipos_de_arreglos

PRESENTACIÓN:

REALIZADO POR: JONATHAN MOROCHO 1699

REMIGIO AYALA 1860

OTROS TIPOS DE ARREGLOS

Page 2: Tema 5 otros_tipos_de_arreglos

OTROS TIPOS DE ARREGLOS

• El tipo de datos (también llamado clase) principal en MATLAB es el arreglo o matriz• Dentro del arreglo, MATLAB soporta algunos tipos diferentes

de datos secundarios. • En general, todos los datos dentro de un arreglo deben ser

del mismo tipo

Page 3: Tema 5 otros_tipos_de_arreglos

OTROS ASPECTOS:

• MATLAB también incluye funciones para convertir entre tipos de datos y tipos de arreglos, para almacenar diferentes tipos de datos en el mismo arreglo (arreglos celda y estructura)

Page 4: Tema 5 otros_tipos_de_arreglos

CUADRO DE TIPOS ED DATOS QUER SE PUEDE ALMACENAR EN MATLAB

Page 5: Tema 5 otros_tipos_de_arreglos

ARREGLOS MULTIDIMENSIONALES• Los arreglos pueden ser:

• Unidimensionales (vectores)

• Bidimensionales (matrices)

• Mas de dos dimensiones (hipermatrices)

Page 6: Tema 5 otros_tipos_de_arreglos

MATRIZ

• Una matriz es un arreglo bidimensional, es una sucesión de números distribuidos en filas y columnas.

• En MATLAB, una matriz se puede definir al escribir una lista de números encerrada entre corchetes. Los números se pueden separar mediante espacios o comas. Las nuevas filas se indican con punto y coma.

• También se puede definir una matriz al hacer una lista de cada fila en una línea separada, incluso no necesita el punto y coma para la nueva línea basta con un enter.

Page 7: Tema 5 otros_tipos_de_arreglos

• >> A = [1 2 3; 4 5 6] % es una matriz con 2 filas y 3 columnas• A =1 2 34 5 6• >> A = [1 2 3;4 5 6] • A =1 2 3 4 5 6• >> A = [1 2 3 4 5 6]• A = 1 2 3 4 5 6

Ejemplo:

Page 8: Tema 5 otros_tipos_de_arreglos

• Matlab tiene además otra forma de identificar cada elemento de una matriz, de modo que podemos acceder a un elemento de una matriz indicando sólo un valor y no dos, pero debemos saber que el orden elegido por MATLAB es por columnas así los elementos de la matriz A del ejemplo anterior serían denominados:• Ejemplos• >> A = [1 2 3; 4 5 6] ;• >>A(5)%accede al elemento• A(1,3)• ans=3

Page 9: Tema 5 otros_tipos_de_arreglos

• Matlab Cadenas de caracteres 4 Una matriz de caracteres es una matriz cuyos elementos son caracteres. Todas las filas de una matriz de caracteres deben tener el mismo número de elementos. Si es preciso, las cadenas (filas) más cortas se completan con blancos. • La función char"ajusta" un arreglo carácter con espacios, de

modo que cada fila tenga el mismo número de elementos.

Arreglos Carácter

Page 10: Tema 5 otros_tipos_de_arreglos

• double(c) convierte en números ASCII cada carácter• char(v)convierte un vector de números v en una cadena de caracteres• char(c1,c2) crea una matriz de caracteres, completando con blancos las

cadenas más cortas• deblank(c) elimina los blancos al final de una cadena de caracteres• disp(c) imprime el texto contenido en la variable • cischar(c) detecta si una variable es una cadena de caracteres• isletter() detecta si un carácter es una letra del alfabeto. • isspace() detecta si un carácter es un espacio en blanco. • strcmp(c1,c2)comparación de cadenas. Si las cadenas son iguales devuelve

un uno, y si no lo son, devuelve un cero.• strcmpi(c1,c2)igual que strcmp(c1,c2), pero ignorando la diferencia entre

mayúsculas y minúsculas.• strncmp(c1,c2,n)compara los n primeros caracteres de dos cadenasc1==c2

compara dos cadenas carácter a carácter.

Page 11: Tema 5 otros_tipos_de_arreglos

OTROS:• num2str(x,n) convierte un número real x en su expresión por medio de una cadena de caracteres, con cuatro cifras decimales por defecto

• str2double(str) convierte una cadena de caracteres representando un número real en el número real correspondiente• Las funciones para cadenas de caracteres están en el • sub-directorio toolbox\matlab\strfundel directorio en que esté instalado

MATLAB.

Page 12: Tema 5 otros_tipos_de_arreglos

• Un arreglos de celdas es un arreglo de MATLAB en el cual los elementos son celdas.• Las celdas son contenedores que pueden contener otros

arreglos de MATLAB• Por ejemplo, una celda puede contener un arreglo de

números reales, otra un arreglo de strings y otra un vector de• números complejos.

ARREGLOS CELDA

Page 13: Tema 5 otros_tipos_de_arreglos

Un arreglo de celdas se puede crear a través de dos mecanismos:• Asignación• Uso de funciones

• A(1,1)={[1 4; 0 5]}• A(1,2)={’Edgar Poe’}• A(2,1)={3 + 7i}• A(2,2)={pi}

Tipos de celdas y ejemplo

Page 14: Tema 5 otros_tipos_de_arreglos

• cell(m,n ) crea un cellarray vacío de m filas y n columnas • celldisp(ca) muestra el contenido de todas las celdas de ca• cellplot(ca) muestra una representación gráfica de las distintas celdas• iscell(ca) indica si caes un vector de celdas• num2cell() convierte un array numérico en un cell array• cell2struct() convierte un cell array en una estructura• struct2cell() convierte una estructura en un cell array

Page 15: Tema 5 otros_tipos_de_arreglos

• Las estructuras son arreglos de MATLAB que tienen “contenedores de datos” llamados campos.• Los campos de una estructura pueden contener cualquier tipo

de datos.• Las estructuras son las componentes básicas de las llamadas

“base de datos”.

ARREGLOS ESTRUCTURA

Page 16: Tema 5 otros_tipos_de_arreglos

• ¿Cómo construir estructuras?• Mediante asignaciones• Usando la función struct• Usando asignación:>>paciente.nombre=’Laura Carmona’>>paciente.edad= 28>>paciente.isapre=’La Muerte’>>paciente.presion=[13 8]paciente =nombre: ’Laura Carmona’edad: 28isapre: ’La Muerte’presion: [13 8]

CONSTRUCCIÓN DE ESTRUCTURAS

Page 17: Tema 5 otros_tipos_de_arreglos

• fieldnames() devuelve un vector de celdas con cadenas de caracteres que recogen los nombres de los campos de una estructura• isfield(S T, s) permite saber si la cadena s es un campo de

una estructura ST • isstruct(ST) permite saber si ST es o no una estructura• rmfield(S T, s) elimina el campo s de la estructura ST• getfield(S T, s) devuelve el valor del campo especificado. • setfield(ST,s,v) da el valor v al campo s de la estructura ST.

FUNCIONES: