Anda di halaman 1dari 28

101 EJERCICIOS DE PROGRAMACIÓN EN

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

1.1. Funciones y variables


Ejercicio 1.1 Crea una función que reciba el radio de un círculo y devuelva su area.
MATLAB conoce el valor de , pide ayuda sobre pi para usarlo.

1.2. Funciones con varios argumentos de entrada


Ejercicio 1.2 Crea una función que reciba la base y la altura de un triángulo y devuelva
el area.

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

1.3. Estructura de control condicional if.


Ejercicio 1.6 Crea una función que reciba un número r y devuelva el area del círculo
de radio r si r 0 o y 1 en caso contrario.

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.

1.4. Estructura de control condicional if-else


Ejercicio 1.9 Crea una función que reciba un número r y devuelva el area del círculo
de radio r si r > 0 y -1 en caso contrario, utilizando la estructura if-else.

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

1.5. Función que llama a otra función

1.6. Variante elseif en el condicional


Ejercicio 1.11 Usando las funciones de los ejercicio 1.9, crea una función que reciba
los tres coe…cientes de un polinomio de segundo grado de ra’ices reales y devuelva el
producto de las mismas (se elegirán los coe…cientes para que así sean). Prueba con
varios polinomios (el producto de las dos raíces ha de ser c/a).

1.7. Condicionales anidados.


Ejercicio 1.12 Se trata de construir una función que reciba una cali…cación (entre
0 y 10) y devuelva 0 si es suspenso (califícación estrictamente menor que 5), 1 si es

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

Se utilizará la variante elseif del condicional para realizar este ejercicio.

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.

1.8. Operadores lógicos


Ejercicio 1.15 Construye una función que reciba tres valores a; b y c (que se supon-
drán diferentes) y devuelva 1 si a es el mayor, 2 si b es el mayor y 3 si lo es c

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.

Ejercicio 1.27 Construye una función que reciba 4 números a, b, c, d, correspondi-


entes a los lados consecutivos de un trapezoide, así como la longitud de una las diag-
onales d1 y devuelva 1 si la fígura es un cuadrado, 2 si es un rectángulo, 3 si es un
trapecio y 4 si no es ninguna de estas posibilidades.

1.10. Igualdad entre números reales: precisión y val-


or absoluto

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

sin(a) + sin(a + h) + sin(a + 2h)+; :::; + sin(a + (n 1)h) + sin(b)


n+1
es decir, el valor medio aproximado del seno entre a y b, tomando n + 1 puntos para
aproximarlo.También se puede ver como la posición vertical del centro de gravedad de
la curva y = sin(x) entre a y b si la consideramos representada por esos n + 1 puntos.

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?

Programa ejercicio 3.3

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

3.2. Cálculo de extremos


Ejercicio 3.4 Crea una función que reciba un vector y devuelva el mínimo de los
elementos del vector.

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

¿A que tienden las componentes del vector resultado?.

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

comprobar que la sucesión converge a 2.

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

[1] Borrelli-Coleman,Ecuaciones diferenciales una perspectiva de modelación, ed., Ox-


ford 1998.

[2] Boyce-DiPrima, Ecuaciones diferenciales y problemas con valores en la frontera, 4a


ed, Limusa, 2001.

[3] campos romero, Prolegómenos a los sistemas dinámicos, ed, universidad nacional.

[4] David Lonen-David Lovelock, Ecuaciones diferenciales a través de grá…cas, modelos


y datos, 1a ed, 2000.

[5] Stanley I. Grossman, Álgerbra lineal, Mc Graw Hill, 5a ed, 1996.

[6] R. Kelly-V. Santibáñez, Control de movimiento de robots manipuladores, Pearson,


2003.

[7] Krasnov, Funciones de variable compleja cálculo operacional y teoría de la estabil-


idad, reverte, 1976.

[8] Raymond A. Serway, Física, McGraw-Hill, 1995.

21

Anda mungkin juga menyukai