MATLAB 7.1.
EDINSON FUENTES
10 de septiembre de 2010
i
Índice general
OBJETIVOS V
0.1. General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
0.2. Especí…cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
RESUMEN VI
INTRODUCCIÓN VII
1. FUNCIONES Y CONDICIONALES 1
1.1. Funciones y variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Funciones con varios argumentos de entrada . . . . . . . . . . . . . . . 1
1.3. Estructura de control condicional if. . . . . . . . . . . . . . . . . . . . . 2
1.4. Estructura de control condicional if-else . . . . . . . . . . . . . . . . . . 3
1.5. Función que llama a otra función . . . . . . . . . . . . . . . . . . . . . 4
1.6. Variante elseif en el condicional . . . . . . . . . . . . . . . . . . . . . . 4
1.7. Condicionales anidados. . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.8. Operadores lógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.9. Operadores de comparación: ¿son iguales? . . . . . . . . . . . . . . . . 9
1.10. Igualdad entre números reales: precisión y valor absoluto . . . . . . . . 11
2. CAPITULO 2 12
2.1. Bucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Bucles con incremento variable . . . . . . . . . . . . . . . . . . . . . . . 14
2.3. Bucles con otras operaciones . . . . . . . . . . . . . . . . . . . . . . . . 15
3. CAPITULO 3 16
3.1. Funciones que llaman a funciones con argumentos vectores . . . . . . . 18
3.2. Cálculo de extremos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
ii
BIBLIOGRAFIA 20
iii
Índice de …guras
iv
OBJETIVOS
0.1. General
0.2. Especí…cos
v
RESUMEN
vi
INTRODUCCIÓN
vii
Capítulo 1
FUNCIONES Y
CONDICIONALES
Ejercicio 1.3 Crea una funci’ón que reciba la masa y la velocidad de un móvil y de-
vuelva la energía cinética.
1
Ejercicio 1.4 Crea una función que reciba los tres coécientes a; b; c; de un polinomio
de segundo grado y devuelva la raíz
p
b b2 4ac
2a
Para comprobar si tu código es correcto, usa los coécientes del polinomio x2 7x + 12,
que tiene como raíces 3 y 4.
Ejercicio 1.5 Crea una función que reciba dos alturas, h1 y h2 y una masa y devuelva
la energía potencial perdida/ganada por el cuerpo al caer/subir de h1 a h2
2
Ejercicio 1.7 Crea una función que reciba un valor x y devuelva el valor y de la
función de…nida a trozos:
!
x+1 x< 1
y=
1 x2 x 1
Ejercicio 1.8 Crea una función que reciba tres números a; b; c, que se supondr’an di-
ferentes entre si, y devuelva el mayor de los tres.
3
Ejercicio 1.10 Crea una función que reciba un valor x y devuelva, utilizando la es-
tructura if-else, el valor y de la función de…nida a trozos:
!
x+1 x< 1
y=
1 x2 x 1
4
aprobado (cali…cación mayor o igual que 5 y menor que 7), 2 si es notable (califícación
mayor o igual que 7 y menor que 9), 3 si es sobresaliente (cali…cación mayor o igual
que 9 y menor o igual que 10) y 1 si el argumento no está entre 0 y 10. No se podrán
utilizar operadores lógicos.
Ejercicio 1.13 Crea una función que reciba un valor x y devuelva el valor y de la
función defínida a trozos:
0 1
sin(x) x<0
B C
y=@ x 0 x<1 A
x2 + log(x) x 1
5
Ejercicio 1.14 Función que devuelva el salario semanal de un trabajador en función
del costo hora, de las horas que ha trabajado y de un fíjo de productividad que se cobra
si se trabajan más de 30 horas. Si se trabajan más de 40 horas, las horas por encima
de esas 40 se pagan un 50 % más caras (horas extras). Se utilizar a la variante elseif
del condicional para realizar este ejercicio.
6
Ejercicio 1.16 Construye una función que reciba tres valores a; b y c devuelva el
mayor si alguno de ellos es positivo y el menor en caso contrario.
Ejercicio 1.17 Construya una función que tome tres números y devuelva el número
mayor
Ejercicio 1.18 Construye una función que reciba cuatro números naturales y devuelva
el mayor
7
Ejercicio 1.19 Construye una función que reciba n n’úmeros y determine el menor
8
1.9. Operadores de comparación: ¿son iguales?
Ejercicio 1.20 Créa una función que reciba dos valores y muestre 1 si son iguales en
caso contrario muestre 0:
Ejercicio 1.21 Construye una función que reciba tres números enteros a, b y c y
devuelva 1 si son iguales entre si,y 0 en caso contrario.
Ejercicio 1.22 Construye una función que reciba tres números enteros a, b y c y
devuelva 1 si a~ = b, 2 si a = b y b~ = c y 3 si los tres valores son iguales.
Ejercicio 1.23 Construye una función que reciba tres números enteros a, b y c y
devuelva 2 si los tres son iguales entre si, 1 si dos de ellos son iguales entre si pero el
tercero es diferente, y 0 si los tres son distintos.
9
Ejercicio 1.24 Repetir el ejercicio anterior sin utilizar ni else, ni elseif.
Ejercicio 1.25 Crea una función que reciba tres valores a; b y c que so los lados de
un triángulo, y que devuelva 3 si el triángulo es equilatero, 2 si son de un triángulo
isósceles y devulva 1 si son los lados de un triángulo escaleno.
10
Ejercicio 1.26 Crea una función que reciba tres valores a, b y c y devuelva 1 si pueden
ser los lados de un triángulo (la suma de dos lados cualesquiera ha de ser mayor que
el otro, es decir, a + b > c, a + c > b y b + c > a) y 0 en caso contrario.
11
Capítulo 2
CAPITULO 2
2.1. Bucles
Ejercicio 2.1 Crea una función que sume los n primeros números.
Ejercicio 2.2 Construye una función que reciba dos números naturales, m y n, con
m < n, y devuelva la suma de los naturales entre m y n.
Ejercicio 2.3 Construye una función que reciba un número natural, n y devuelva
sin(1) + sin(2) + sin(3)+; :::; + sin(n 1) + sin(n)
n+1
12
Ejercicio 2.4 (Para valientes) Construye una función que reciba dos números, reales
a, b, con a < b, un número natural n, calcule h = (b a)=n y devuelva
Ejercicio 2.5 Construye una función que reciba dos números, reales a, b, con a < b,
un número natural n, y calcule la posición vertical del centro de gravedad de la curva
y = sin(x), considerada como una poligonal que se apoya en n + 1 puntos de esa curva
cuyas abscisas están equiespaciadas entre a y b.
Ejercicio 2.6 Construye una función que reciba dos números, reales a, b, con a < b,
un número natural n, y calcule el centro de gravedad de la superfície dénida por los
rectángulos que tiene como base h = (b a)=n y como altura sin(xi ), con xi = a +ih,
0 i < n.
13
2.2. Bucles con incremento variable
Ejercicio 2.7 Crea una función que sume todos los numeros pares entre 1 y n:
Ejercicio 2.8 Construye una función que reciba un número natural, n, y devuelva la
suma de los impares entre 1 y n.
Ejercicio 2.9 Construye una función que reciba un número natural, n, y devuelva la
suma de los múltiplos de 3 entre 1 y n.
Ejercicio 2.10 Construye una función que reciba un número natural n y devuelva 0
si n es par y 1 si n es impar. No se podrá usar la orden ‡oor.
14
2.3. Bucles con otras operaciones
Ejercicio 2.11 Crea una función que reciba x, n y cálcule xn :
Ejercicio 2.12 Construye una función que reciba un número natural, n, y devuelva
n! = 1 2 ::: (n 1) n
15
Capítulo 3
CAPITULO 3
Ejercicio 3.1 Crea una función que reciba un vector y devuelva la media de los cuadra-
dos de los elementos del vector. ¿Coincidirá el resultado con la media al cuadrado?
Ejercicio 3.2 Crea una función que reciba un vector y devuelva la media geométrica
de los elementos del vector. La media geometrica de
p
fa1 ; :::; an g es n
a1 a2 :::an
16
Programa ejercicio 3.4
Ejercicio 3.3 Crea una función que reciba dos vectores y devuelva el producto escalar
de los mismos Se supondrá que los dos vectores tienen la misma dimensión.
17
3.1. Funciones que llaman a funciones con argu-
mentos vectores
Ejercicio 3.5 Crea una función que reciba un vector de números naturales y devuelva
el número de elementos del vector que sean múltiplos de tres.
Ejercicio 3.6 Construye una función que reciba un número natural n y devuelva un
vector v tal que sus componentes sean
i
1
vi = 1+ ; 1 i n
i
Ejercicio 3.7 Construye una función que reciba un número natural n y devuelva un
vector formado por los n primeros términos de la sucesión
p
x1 = 2; 456; xi+1 = 2x1 i2N
18
Ejercicio 3.8 Crea una función que reciba dos valores, x m n, x max, y el numero de
tramos n. La función calculara el valor
x max x m n
h= ;
n
y devolver a un vector x de n + 1 componentes que contenga los puntos entre x m n y
x max separados cada dos una distancia h. Asi pues,
x1 = x m n; x2 = x m n +h; ; xn+1 = x m n +nh = x max
19
20
Bibliografía
[3] campos romero, Prolegómenos a los sistemas dinámicos, ed, universidad nacional.
21