Pregunta XX

Anuncio
Informática y Programación
Escuela Técnica Superior de Ingenieros de Minas y Energía - U.P.M.
Curso 2011/12
Examen Final de Laboratorio A
Convocatoria Ordinaria JUNIO 2012
Apellidos:……………………………………………………………………………………


Nombre:…………………………………………………………………………………….
Grupo:…………………
Hoja de respuestas.
Nº de pregunta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Opción A Opción B
Opción C Opción D
NOTA
Pregunta 1. La siguiente expresión:
permite aproximar el número Pi = 3,1416… en el valor de p cuando m tiende a infinito.
Para evaluar una aproximación, el proceso debe detenerse cuando i sea menor o igual a
m=1000 o cuando | - p| ≤ error, siendo el error máximo admisible en la aproximación
igual a error = 0,01. Selecciona la respuesta correcta si se requiere un código
MATLAB que resuelva esta expresión:
A
C
p=0;
m=1000;
for i=0:m
p=p+4*((-1)^i)/(2*i+1);
error=abs(pi-p);
i=i+1;
if (error<=0.01)
break
end
end
disp('El valor de pi es');disp(p);
disp('El valor del error es');disp(error);
disp('La iteración final es’);disp(i);
p=0;
error=abs(pi-p);
m=1000;
i=0;
while (i>=m)
p=p+4*((-1)^i)/(2*i+1);
error=abs(pi-p);
i=i+1;
if (error<=0.01)
break
end
end
disp('El valor de pi es');disp(p);
disp('El valor del error es');disp(error);
disp('La iteración final es’);disp(i);
B
D
p=0;
error=abs(pi-p);
m=1000;
i=0;
while (error>=0.01) & (i<=m)
p=p+4*((-1)^i)/(2*i+1);
error=abs(pi-p);
i=i+1;
end
disp('El valor de pi es');disp(p);
disp('El valor del error es');disp(error);
disp('La iteración final es’);disp(i);
Ninguno de los anteriores
Pregunta 2. ¿Cuál de los siguientes motivos puede dar lugar a un error de bucle infinito
en un bucle while?
A
C
No inicializar las variables involucradas
en la condición antes del bucle.
No definir adecuadamente un contador para
el bucle.
B
D
No cambiar las variables involucradas en
la condición dentro del bucle.
Ninguna de las anteriores.
Pregunta 3. La aproximación de la integral definida de una función f(x) cualquiera en
un intervalo dado [a,b], con n puntos de integración, mediante la fórmula de cuadratura
gaussiana se expresa como:
siendo cnj un vector de coeficientes y rnj un vector que contiene las de raíces del
polinomio de Legendre que da lugar a esta aproximación, cuyos valores son conocidos.
Datos de entrada: f, n, a, b, cn y rn; Datos de salida: int.
Selecciona la respuesta correcta si se requiere un algoritmo que resuelva esta expresión.
A
C
B
D
Ninguno de los anteriores
Pregunta 4. La siguiente función:
function [p] = numero(n)
p=1;
for i=1:n
p=-p*i;
end
end
Calcula el número p. Dicho número es el cálculo de (elegir una opción):
A
1+2+...+n
B
n!
C
((-1)n)*n!
D
Ninguna de las anteriores.
Pregunta 5. El siguiente algoritmo evalúa la raíz de una función no lineal f(x) mediante
la aplicación del método de bisección.
Selecciona la respuesta correcta si se requiere un programa MATLAB que implemente
este algoritmo.
A
C
k = 0; err = abs(b-a)/2;
x = a; fa = eval(f);
while (k <= itm) & (err >= delta)
c = (a+b)/2; x = c; fc = eval(f);
if fc == 0,
a = c; b = c;
elseif fa*fc < 0,
b = c;
else
a = c;
end
err = abs(b – a)/2; k = k + 1;
end
disp(c); disp(fc); disp(err); disp(k);
k = 0; err = abs(b-a)/2;
while (k <= itm) & (err >= delta)
c = (a+b)/2; x = c; fc = eval(f);
if fc == 0,
a = c; b = c;
elseif fa*fc < 0,
b = c;
else
a = c; x = a; fa = eval(f);
end
err = abs(b – a)/2; k = k + 1;
end
disp(c); disp(fc); disp(err); disp(k);
B
D
k = 0; err = abs(b-a)/2;
if (k <= itm) & (err >= delta)
c = (a+b)/2; x = c; fc = eval(f);
if fc == 0,
a = c; b = c;
elseif fa*fc < 0,
b = c;
else
a = c; x = a; fa = eval(f);
end
err = abs(b – a)/2; k = k + 1;
end
disp(c); disp(fc); disp(err); disp(k);
Ninguno de los anteriores.
Pregunta 6. Se desea identificar cuál es la función que tiene correctamente programada
en Matlab la regla del trapecio compuesta, con la que se obtiene para un entero n ≥ 1 el
valor de la integral definida de una función en un intervalo:
Para lo cual es necesario tener en cuenta que los datos de entrada son a, b, n,
fun, y el dato de salida es la aproximación de dicha integral valorI.
Selecciona el código apropiado.
A
C
% Programa para implementar la formula
% del trapecio compuesta
function [valorI]=trapecio(fun,a,b,n)
% fun: funcion que se quiere integrar
% a: limite inferior de la integral
% b: limite superior de la integral
% n: numero de subdivisiones
h=(b-a)/n;
s=0;
for i=1:n-1
s=s+h*eval(fun);
end
fa= eval(fun)
fb= eval(fun)
s=s+(h/2.)*(fa+fb);
valorI=s;
return
% Programa para implementar la formula
% del trapecio compuesta
function [valorI]=trapecio(fun,a,b,n)
h=(b-a)/n;
s=0;
for i=1:n-1
x=a+i*h
s=s+h*eval(fun);
end
x=a
fa= eval(fun)
x=b
fb= eval(fun)
s=s+(h/2.)*(fa+fb);
valorI=s;
return
B
D
% Programa para implementar la formula
% del trapecio compuesta
function [valorI]=trapecio(fun,a,b,n)
% fun: funcion que se quiere integrar
% a: limite inferior de la integral
% b: limite superior de la integral
% n: numero de subdivisiones
h=(b-a)/n;
s=0;
for i=1:n-1
s=s+h*eval(fun);
end
fa= eval(fun)
fb= eval(fun)
s=s+(h/2.)*(fa+fb);
return
Ninguna de las anteriores
Pregunta 7. Dado el siguiente algoritmo, en el que se conoce la matriz A de dimensión
(m,n):
Elegir la respuesta que escriba el resultado que se obtendría de aplicar dicho programa a
la matriz:
2
A
3
0
5
2
9
3
1
7
2
0
4
1
6
4
1
A
C
A
0
0
0
0
2
0
0
0
8
0
0
0
4
5
0
0
6 2
0
0
3 1
7
0
4 0
12 0
A
2 0
B
6 1
D
A
4
0
0
0
8
10
0
0
6
2
14
0
4
0
Ninguno de los anteriores
12 2
Pregunta 8. Indicar cual sería la variable de salida devuelta por el algoritmo descrito
para las siguientes variables de entrada: V=[1 0 -2]; W=[3 -5 1 4].
INICIO
V, W
m=length(V)
n=length(W)
i=1,m
j=1,n
SI
NO
V(i)*W(j)<0
A(i,j) = -1
A(i,j) = 1
Escribir C
FIN
A
C
1
A
1
1
1
1
1
1
A
1
1
1
1
1
1
1
1
B
1
1
1
1
1
1
1
1
1
D
A
1
1
1
1
1
1
1
1
1
1
1
Ninguna de las anteriores.
1
Pregunta 9. Elegir, entre las siguientes opciones, el programa de Matlab que calcula la
1 n
2
xi x donde xi={x1, x2, …, xn} es la muestra de
varianza muestral, S 2
n 1i 1
n
1
xi . Datos de entrada: xi ; Datos de salida: S2.
tamaño n y x
n i1
A
C
x=input(‘Dame la muestra’);
n=length(x);
S2=0;
for i=1:n
S2=S2+(x(i)-x(i)/n)^2;
end
disp(‘La varianza muestral es: ’); S2
x=input(‘Dame la muestra’);
n=length(x);
S2=0;
Xmed= x(i)/n;
for i=1:n
S2=S2+(x(i)-Xmed)^2;
end
disp(‘La varianza muestral es: ’); S2
B
D
x=input(‘Dame la muestra’);
n=length(x);
S2=0;
Xmed=0;
for i=1:n
Xmed=Xmed+x(i)/n;
S2=S2+(x(i)-Xmed)^2;
end
disp(‘La varianza muestral es: ’); S2
Ninguna de las anteriores.
Pregunta 10. Completa las líneas de programa MATLAB que faltan (señaladas con
corchetes), eligiendo entre las 4 opciones posibles:
edad=input(‘Dime la muestra’);
sexo=input(‘Dime tu sexo (H/M)’);
%donde H->hombre y M->mujer
disp(‘Eres una mujer mayor de edad’);
disp(‘Eres un hombre mayor de edad’);
disp(‘Eres menor de edad’);
end
A
C
if (edad>=18)&(sexo= =’M’)
elseif (edad>=18)&(sexo= =’H’)
else
if (edad>=18) (sexo= =’M’)
elseif (edad>=18) (sexo= =’H’)
elseif (edad<18)
B
D
if (edad>=18)|(sexo= =’M’)
elseif (edad>=18)|(sexo= =’H’)
else
Ninguna de las anteriores.
Pregunta 11. La siguiente función:
function [control] = intervalo(x)
control=0;
if x>0 | x<-2
control=1;
elseif x>-1
control=2;
else
control=3;
end
end
devuelve un valor de control según el intervalo al que pertenezca x. ¿Cuándo nos
devolverá un valor de control=2? (elegir una opción):
A
C
Cuando x está entre -2 y 0.
Cuando x es mayor que 0.
B
D
Cuando x está entre -1 y 0.
Para
todo
valor
de
x,
ya
condiciones son incompatibles.
que
las
Pregunta 12. La implementación en Matlab del siguiente algoritmo es:
A
C
x=input(‘valor de X=’)
b=x
if b<>(x/b)
b=1/2*((x/b)+b)
end
disp(b)
x=input(‘valor de X=’)
b=x
while b<>(x/b)
b=1/2*((x/b)+b)
end
disp(b)
B
D
x=input(‘valor de X=’)
b=x
if b==(x/b)
b=1/2*((x/b)+b)
end
disp(b)
Ninguna de las anteriores
Pregunta 14. ¿Que escribe en pantalla como Ac el siguiente algoritmo si a N se le
asigna 3 y a P se le asigna el valor 4?:
Inicio
N, P
AC = 1
I=1
no
I<P
si
AC
AC = AC * N
I=I+1
final
A
C
81
9
B
D
27
Ninguna de las anteriores
Pregunta 14. El siguiente algoritmo calcula la sucesión de Fibonacci, se pide indicar
que escribe en pantalla como F2, si asignamos a N el valor 9:
Inicio
N
cont = N-3
F1 = 1
F2 = 1
F1
no
cont >= 0
si
F2
F2 = F2 + F1
F1 = F2 – F1
cont = cont - 1
final
A
C
21
34
B
D
13
Ninguna de las anteriores
Descargar