Вы находитесь на странице: 1из 9

Ejercicios: CADENAS DE CARACTERES.

>> a=7.895
a=
7.8950
>> s=num2str(a)
s=
7.895
1.
>> s(3)
ans =
8
COMENTARIO: %Toma el tercer carácter de s%
2.
>> help setstr
SETSTR Convert numeric values into character string.
SETSTR will be removed in a future release. Use CHAR instead.
See also char, ischar.
Reference page in Help browser
doc setstr

>> setstr(65)
ans =
A

>> setstr(1)
ans =

>> setstr(126)
ans =
~

3. >> log(1)

ans =

0
COMENTARIO: %Calcula el logaritmo de un numero %

>> sin (126)


ans =
0.3300
COMENTARIO: %Calcula el seno cualquier valor numérico %

Ejercicios: VECTORES Y MATRICES.


1. >> help diag
COMENTARIO: Esta muestra la ayuda para diag y nuestra la opción a usar diag.
>> A=[3 1 5; 2 1 2; 1 2 0];
>> diag(A)

ans =

3
1
0
COMENTARIO: %Toma los elementos de la diagonal de una matriz y los ubica en una matriz
columna%

2.
Length
COMENTARIO: %en una vector señala cuántos elementos tiene y en una matriz nos da
el número de columnas&
Mean
COMENTARIO: %en una matriz señala el promedio de cada columna%
mean(X,1): calcula el promedio por columna
mean(X,2): calcula el promedio por fila
COMENTARIO: %En un vector calcula el promedio de sus componentes%
s um
COMENTARIO: suma las columnas de la matriz
COMENTARIO: suma los elementos del vector
Prod
COMENTARIO: Multiplica los elementos de las columnas
COMENTARIO: Multiplica los elementos del vector
Size
COMENTARIO: Da el tamaño de la matriz
Trace
COMENTARIO: Calcula la suma de los elementos de la traza
Expm
COMENTARIO: Es una matriz exponencial de A siendo esta una matriz.

3.
>> a=[2 5 4; 5 2 1;0 2 1]
a=
2 5 4
5 2 1
0 2 1
>> a2=[0 1 1; 5 6 4; 1 1 1]
a2 =
0 1 1
5 6 4
1 1 1
>> a+a2
ans =
2 6 5
10 8 5
1 3 2
COMENTARIO: Da la suma de ambas matrices
>> a*a2
ans =
29 36 26
11 18 14
11 13 9
COMENTARIO: Da el producto de ambas matrices
>> a.*a2
ans =
0 5 4
25 12 4
0 2 1

COMENTARIO: Multiplica de ambas matrices componente a componente


4. >> 3/5
ans =
0.6000
COMENTARIO: %divide 3 entre 5%

>> 3\5
ans =
1.6667
COMENTARIO: %divide 5 entre tres%

5. >> a=[1 5; 5 3]
a=
1 5
5 3

>> b=[ 2 5; 5 8]
b=
2 5
5 8

>> a./b
ans =
0.5000 1.0000
1.0000 0.3750
COMENTARIO: % divide componente a componente%

>> a/b
ans =
1.8889 -0.5556
-2.7778 2.1111
COMENTARIO: la matriz b tiene q ser singular, saca la inversa de b y lo multiplica por a

>> 1./a
ans =
1.0000 0.2000
0.2000 0.3333
COMENTARIO: Saca la inversa de cada componente

Ejercicios: EXPRESIONES LÓGICAS.


1.
>> pi>exp(1)

ans =

2.

>> A=magic(6)

A=

35 1 6 26 19 24

3 32 7 21 23 25

31 9 2 22 27 20
8 28 33 17 10 15

30 5 34 12 14 16

4 36 29 13 18 11

>> rem(A,3)

ans =

2 1 0 2 1 0

0 2 1 0 2 1

1 0 2 1 0 2

2 1 0 2 1 0

0 2 1 0 2 1

1 0 2 1 0 2

COMENTARIO: En los lugares que son cero, esos números en la matriz MAGIC son
divisibles por 3.

3.

>> h='hola'

h= >> g=num2str(m)

hola g=

mago

>> m='mago'

m= >> s>g

mago ans =

>> s=num2str(h) 0 1 1 0

s=

hola

COMENTARIO: cuando tenemos dos caracteres pasado a dos cadenas de caracteres


entonces sale CERO cuando no es mayor y sale UNO cuando la letra es mayor (sabiendo
que cada letra representa un número en el alfabeto)

4. >> x=[1 2 4 5 7 9 11]

x=

1 2 4 5 7 9 11

>> x(x>5)

ans =

7 9 11
COMENTARIO: Señala que números son mayores que 5 del vector x.

5.

>> A=magic(9)

A=

47 58 69 80 1 12 23 34 45

57 68 79 9 11 22 33 44 46

67 78 8 10 21 32 43 54 56

77 7 18 20 31 42 53 55 66

6 17 19 30 41 52 63 65 76

16 27 29 40 51 62 64 75 5

26 28 39 50 61 72 74 4 15

36 38 49 60 71 73 3 14 25

37 48 59 70 81 2 13 24 35

>> ((~rem(((A>10).*A),5))-(A<=10)).*A

ans =

0 0 0 80 0 0 0 0 45

0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0

0 0 0 20 0 0 0 55 0

0 0 0 30 0 0 0 65 0

0 0 0 40 0 0 0 75 0

0 0 0 50 0 0 0 0 15

0 0 0 60 0 0 0 0 25

0 0 0 70 0 0 0 0 35

COMENTARIO: Estos son los números del MAGIC(9) mayores de 10 y múltiplos de 5.

6.

>> 0&1|1 >> 0&(1|1)

ans = ans =

1 0

COMENTARIO: No es lo mismo ya que el


paréntesis es primero en resolver.
Ejercicios
1.

>> A=magic(20);

>> all(A)

ans =

Columns 1 through 15

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Columns 16 through 20

1 1 1 1 1

COMENTARIO: No hay elementos que son cero.

2.

>> h=['hola' 33]

h=

hola!

>> a=[3 'adios' 3]

a=

adios

3.

>> eye(0,7)

ans =

Empty matrix: 0-by-7

>> eye(2,5)

ans =

1 0 0 0 0

0 1 0 0 0

COMENTARIO: eye(0,7) es una matriz vacía ya que indica que tiene q haber CERO filas.
4.

isempty:
isstr:
isnan:
finite.

Ejercicios: TRATAMIENTO DE DATOS. FICHEROS

Importar y exportar datos

1. Crear un fichero de texto con el block de notas con los datos: 1,2,3,4,5,6,7,8,9,10.
Importarlo desde Matlab y crear un vector con su contenido.

>> A=[1,2,3,4,5,6,7,8,9,10]

A=

1 2 3 4 5 6 7 8 9 10

>> save datos.txt A –ASCII

2. Sea el fichero datos.txt que contiene la siguiente información:

75219345784

Almacenar estos datos en una matriz A de 4 filas y 3 columnas.


>> fid=fopen('datoss.txt','r')

fid =

>> [A,cont]=fscanf(fid,'%d',[4,3])

A=

7 9 7

5 3 8

2 4 4

1 5 5

cont =

12

3. Crear un fichero de Excel con las cantidades compradas de varios productos y su


importe por unidad. Cargarlo en Matlab y calcular allí el coste total de la compra.
>> a=xlsread('d:\medranoo\datos1.xlsx','datos11')

a=

16.5000 6.3200 16.5000 6.3200

13.8000 6.3700 13.8000 6.3700

14.9000 6.3500 14.9000 6.3500

12.6000 6.3600 12.6000 6.3600

12.1000 6.3500 12.1000 6.3500

12.0000 6.3600 12.0000 6.3600

19.0000 6.3400 19.0000 6.3400

15.5000 6.3300 15.5000 6.3300

18.0000 6.3200 18.0000 6.3200

18.5000 6.3100 18.5000 6.3100

15.0000 6.3100 15.0000 6.3100

15.5000 6.3600 15.5000 6.3600