Академический Документы
Профессиональный Документы
Культура Документы
Funciones definidas por el usuario; generalmente para representar una función que se
usara en varios programas adicionales.
x FUNCIÓN y f x
02 archivos de función 1
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
Con esta función se podrían hacer muchas cosas, como: graficar, derivar, integrar, etc.
Veamos una de ellas, grafiquemos en el intervalo [-10,10]
350
300
250
200
150
100
50
-50
-10 -5 0 5 10
02 archivos de función 2
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
40
35
30
25
20
15
10
0
-4 -3 -2 -1 0 1 2 3 4 5
02 archivos de función 3
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
g=9.81;
v0x=v0*cos(theta*pi/180);
v0y=v0*sin(theta*pi/180);
thmax=v0y/g;hmax=v0y^2/(2*g);
ttot=2*thmax;dmax=v0x*ttot;
Grafico resultante
TRAYECTORIA DE UN PROYECTIL
250
200
ALTURA (m)
150
100
50
0
0 100 200 300 400 500 600
DISTANCIA (m)
02 archivos de función 4
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
02 archivos de función 5
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
Cuerpo de la función
Aquí se tiene el código del programa mismo, que incluirá operaciones de entrada y/o
salida, también salida de gráficos si el problema lo amerita.
FUNCIONES EN LINEA
Se usan para realizar funciones simples, que también pueden tener una o más variables
de entrada.
nombre inline 'exp resion matematica en forma de cadena '
nombre inline 'exp resion matematica ','arg1','arg 2', ,'arg n '
y f x 3x 2 6 x 8
Ejemplo: Considerando la función cuadrática:
>> G=inline('3*x+6*y+9*x*y-6','x','y')
G = Inline function:
G(x,y) = 3*x+6*y+9*x*y-6
>> G(1,2)
ans = 27
>> G(1,2),G(6,8)
ans = 27
ans = 492
>> [G(1,2), G(3,5), G(8,1), G(3,7)]
ans = 27 168 96 234
>> x=[1 2 3],y=[7 6 4]
x= 1 2 3
y= 7 6 4
>> G(x,y)
??? Error using ==> inlineeval at 15
02 archivos de función 6
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
Como aparece un error debemos redefinir la función, para cuando los argumentos son
vectores o matrices.
02 archivos de función 7
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
EL COMANDO “feval”
Este comando evalúa el valor de una función, en algún o algunos valores dados. La
diferencia con el caso anterior, está en que aquí se da la función, solo el nombre, y se
evalúa en el valor dado.
variable = feval(‘nombre_funcion’,valor_argumento)
Ejemplo 01: Aquí vamos a definir una función H, y luego la evaluamos en x=1.
>> H=inline('exp(x.^2)./(1+x.^4)')
H = Inline function: H(x) = exp(x.^2)./(1+x.^4)
>> feval(H,1)
ans = 1.3591
>>
Ejemplo 02:
>> D=feval(inline('exp(x.^2)./(1+x.^4)'),1)
D = 1.3591
>> H=inline('exp(x.^2)./(1+x.^4)')
H = Inline function: H(x) = exp(x.^2)./(1+x.^4)
>> feval(H,1)
ans = 1.3591
>> G=inline('exp(x.^2)./(y+x.^4)')
G = Inline function: G(x,y) = exp(x.^2)./(y+x.^4)
>> feval(G,1,1)
ans = 1.3591
>> feval(G,4,5)
ans = 3.4046e+004
>> D=feval(inline('exp(x.^2)./(1+x.^4)'),1)
D = 1.3591
>> D=feval('sin',0)
D= 0
>> D=feval('sin',pi/6)
D = 0.5000
>> D=feval(inline('cos(x)+tan(x)'),pi/7)
D = 1.3825
02 archivos de función 8
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
40
35
30
25
20
15
10
0
-4 -3 -2 -1 0 1 2 3 4 5
02 archivos de función 9
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
funcuad.m
Function [hmax,dmax]=trayectoria(v0,theta)
% Cálculo de la altura y la distancia máximas, que alcanzan un
proyectil
%
% Los argumentos de entrada son:
% v0: velocidad inicial en m/s
% theta: ángulo en grados sexagesimales.
%
% Los argumentos de salida son:
% hmax: altura máxima en metros
% dmax: distancia máxima en metros
g=9.81;
v0x=v0*cos(theta*pi/180);
v0y=v0*sin(theta*pi/180);
thmax=v0y/g;hmax=v0y^2/(2*g);
ttot=2*thmax;dmax=v0x*ttot;
200
ALTURA (m)
150
100
50
0
0 100 200 300 400 500 600
02 archivos de función 10
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
1 −𝑏 𝑏2
𝑝= , (ℎ, 𝑘) = ( , 𝑐 − ) , 𝐹 = (ℎ, 𝑘 + 𝑝), 𝐿: 𝑦 = 𝑘 − 𝑝
4𝑎 2𝑎 4𝑎
1
La sucesión {3𝑛 , 𝑛 𝑒𝑛 𝑁 } , se puede construir a partir de las siguientes sucesiones
recurrentes:
Determinar cual de ellas es una sucesión estable o inestable, es decir que el error crece
de manera lineal o exponencial.
5 1
a) 𝑥𝑛 = 6 𝑥𝑛−1 − 6 𝑥𝑛−2 ; 𝑛 = 2,3,4, …
1
con 𝑥0 = 1, 𝑥1 =
3
function sucesion(n)
x(1)=1;x(2)=1/3;
s(1)=1;s(2)=1/3;
m=[1,2];
for i=3:n
m(i)=i;
x(i)=(5/6)*x(i-1)-(1/6)*x(i-2);
s(i)=1/3^(i-1);
end
A=m';B=x';C=s';
error=abs((B-C)./C);
disp([' i ',' x(i) ','
1/3^i '])
disp([A,B,C,error])
5 4
a) 𝑥𝑛 = 3 𝑥𝑛−1 − 9 𝑥𝑛−2 ; 𝑛 = 2,3,4, …
1
con 𝑥0 = 1, 𝑥1 = 3
function sucesion2(n)
x(1)=1;x(2)=1/3;
s(1)=1;s(2)=1/3;
m=[1,2];
for i=3:n
m(i)=i;
x(i)=(5/3)*x(i-1)-(4/9)*x(i-2);
s(i)=1/3^(i-1);
end
A=m';B=x';C=s';
error=abs((B-C)./C);
disp([' i ',' x(i) ','
1/3^i '])
disp([A,B,C,error])
02 archivos de función 11
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
Mostrar los números primos de dos cifras, use la función mod(m,n), que calcula el
residuo de m entre n.
function p=primo(n)
% verificación de un número primo
p=0;
for i=1:n
m=mod(n,i)==0;
p=p+m;
end
Diseñe una función que permita el ingreso de un entero positivo cualquiera, y muestre el
mismo numero con las cifras invertidas
02 archivos de función 12
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
6. Escriba una función que convierta las unidades de un par de torsión (fuerza que
causa la rotación de un objeto) de libras-pulgadas a newtons-metro. Utilice la siguiente
línea de definición para la función: Nm = lbintoNm(lbin) . El argumento de entrada
será el par en libras-pulgadas, y el argumento de salida el par en newtons-metro.
Utilice posteriormente esta función para convertir 500 libras-pulgada a newtons-
metro.
7. Escriba una función que calcule los ángulos de un triángulo a partir de las longitudes
de sus lados. Utilice para ello la siguiente línea de definición de función:
alp,bet,gam triangulo(a,b,c) . Utilice posteriormente esta función para calcular los
siguientes triángulos:
a = 10, b = 15, c = 7
a = 6, b = 8, c = 10
a = 200, b = 75, c = 250
8. Escriba una función que calcule el vector unitario en la dirección de la recta que une
dos puntos (A y B) en el espacio. Utilice la siguiente línea de definición de función:
n = unitvec (A,B) . La entrada de la función serán dos vectores A y B, cada uno con tres
02 archivos de función 13
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
10. Escriba una función que calcule la nota final de un estudiante a partir de la nota de
su examen final, sus dos exámenes parciales y de los cinco trabajos realizados durante
el curso. Los exámenes parciales se puntúan de 0 a 100, y cada uno es un20% de la
nota final. El examen final tiene la misma escala de puntuación, y es un 40% de la nota
final. Los trabajos, sin embargo, puntúan de 0 a 10, y todos ellos en conjunto
representan un20% de la nota final.
La función debe tener la siguiente definición: g = notasfinales (R) , donde la entrada
será una matriz R que contenga en cada fila las notas de cada estudiante. Además por
cada fila, se tendrá 8 columnas que representarán las notas de los trabajos (las cinco
primeras), la nota de los dos, exámenes parciales (las dos siguientes) y la nota del
examen final (la última columna) de cada estudiante. La salida de la función será un
vector columna g con la nota final del curso. Cada fila de este vector será la nota final
del estudiante cuyas notas se relacionan con la correspondiente la fila de la matriz R .
La función debe usarse para calcular las notas finales de cualquier número de
estudiantes. Para el caso de un solo estudiante, la matriz R tendrá una sola fila.
Aplique esta función en los siguientes casos:
a) Utilice la Ventana de Comandos para calcular la nota de un estudiante con las
siguientes calificaciones: 10, 5, 8, 7, 9, 75, 87, 69.
02 archivos de función 14
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
b) Escriba un fichero script que pida al usuario las notas de los estudiantes y las
almacene en un array (cada estudiante en una fila). El programa debe calcular
seguidamente las notas finales utilizando la función notasfinales . Ejecute el fichero
script en la Ventana de Comandos para calcular las notas finales de los siguientes
cuatro estudiantes:
Estudiante A: 7, 9, 5, 8, 10, 90, 70, 85
Estudiante B: 6, 4, 7, 0, 7, 60, 71, 50
Estudiante C: 5, 9, 10, 3, 5, 45, 75, 80
Estudiante D: 8, 8, 7, 7, 9, 82, 81, 88
11. Cuando se conectan n resistencias en paralelo, su resistencia equivalente REq
viene determinada por:
1 1 1 1
...
REq R1 R2 Rn
Escriba una función que calcule REq . Utilice la siguiente definición: REQ = req (R) ,
donde la entrada será un vector en el cual cada elemento representa un valor de la
resistencia, y la salida será el valor de la resistencia equivalente REq . Utilice esta
función para calcular la resistencia equivalente de las siguientes resistencias en
paralelo: 50, 75, 300, 60, 500, 180 y 200
12. Escriba una función que proporcione un número entero aleatorio en un rango
concreto especificado a partir de dos números. Utilice para ello la siguiente definición
de función: n = r a n d i n t (a,b) , donde los dos argumentos de entrada a y b son los
números que determinan el rango, y la salida será el número aleatorio calculado n
.Utilice posteriormente está función en la Ventana de Comandos para:
Generar un número aleatorio entre 1 y 49
Generar un número aleatorio entre -35 y -2
02 archivos de función 15
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
Utiliza la función para calcular el momento de inercia de una viga en forma de "I"
cuyas dimensiones son w 200 mm, h 300 mm y t 22 mm.
14. La representación bidimensional del estado de tensión en un punto de un material
cargado queda definido por las tres componentes de la tensión xx , yy , xy .Las
tensiones normales máxima y mínima (tensiones principales) en el punto, max y min ,
se calculan a partir de las componentes de la tensión, de la forma:
xx yy yy
2
max xx xy
2
min 2 2
Escriba una función que calcule las tensiones principales a partir de las componentes
de la tensión. Utilice para ello la siguiente línea de definición de función:
Smax,Smin TensionPrincipal (Sxx,Syy,Sxy) . Los argumentos de entrada serán las
tres componentes de la tensión, y la salida las tensiones máxima y mínima.
Utilice posteriormente esta función para calcular las tensiones principales para los
siguientes estados de tensión:
xx 150 MPa, yy 40 MPa y xy 80 MPa
xx 12 ksi, yy 16 ksi y xy 7 ksi.
15. En un filtro paso-bajo (filtro que pasa señales de bajas frecuencias), la relación de
voltajes viene determinada por:
V 1
RV 0
Vi 1 RC
2
02 archivos de función 16
02 Funciones y ficheros de función Mg. Amado Malca Villalobos
V0 RC
RV
Vi 1 2 LC RC
2 2
02 archivos de función 17