Professional Documents
Culture Documents
Pedro
Objetivos:
Practicar el paso de pseudocdigo a cdigo para calcular una regresin logartmica a partir de dos
arrays de datos reales.
Descripcin:
Escribir en Java el siguiente algoritmo descrito en pseudocdigo, que calcula los datos de una
regresin logartmica a partir de dos arrays de puntos, x[] e y[], del mismo tamao. El mtodo
calcula los coeficientes a y b de la siguiente curva con la que se intenta ajustar el conjunto de
puntos x-y:
= ln() +
Donde ln(x) es el logaritmo neperiano de x. Los datos calculados se almacenarn en los atributos
reales a y b, pertenecientes a la misma clase que el mtodo. Si x e y tienen distinto tamao se
indicar el error poniendo a y b a valor NaN (Not a Number).
mtodo regresionLogaritmica (array de reales x, array de reales y)
si x e y tienen distinto tamao entonces
a=NaN
b=NaN
si no
real sumX=0, sumY=0, sumLnX=0, sumLn2X=0, sumLnXY=0, sumY2=0
entero n= longitud de x
para i desde 0 hasta n -1
sumX= sumX+x[i]
sumY= sumY+y[i]
sumLnX= sumLnX+ln(x[i])
sumLn2X= sumLn2X+ln2(x[i])
sumLnXY= sumLnXY+ln(x[i])*y[i]
sumY2= sumY2+(y[i])2
fin para
a=(sumLnXY sumY*sumLnX/n)/(sumLn2X sumLnX*sumLnX/n)
b=sumY/n a*sumLnX/n
fin si
fin mtodo
La regresin logartmica es una tcnica que permite obtener los coeficientes de la curva logartmica
= ln() + que ms se aproximan a la funcin y=f(x), definindose esta funcin como un
conjunto de parejas (x,y). Fuente: https://es.wikipedia.org/wiki/Regresi%C3%B3n_no_lineal
Respuesta que se pide
26/04/16
26/04/16
.2
Bsqueda en un array
Objetivos
Practicar la bsqueda en un array y describirla mediante pseudocdigo y cdigo.
Descripcin
Se dispone de una clase llamada Asignatura y que implementa el siguiente diagrama de clases
Asignatura
-String nombre
-String codigo
-int numAlumnos
+Asignatura (String nombre, String codigo,
int numAlumnos)
+String getNombre()
+String getCodigo()
+int getNumAlumnos()
Como se puede ver es una clase trivial, con un constructor al que se le pasan los valores iniciales de
los atributos, y tres mtodos observadores, uno por cada atributo.
Se desea escribir un mtodo esttico al que se le pasan como parmetros un array de objetos de la
clase Asignatura y un codigo. El mtodo debe retornar el nombre de la asignatura del array cuyo
codigo coincida con el indicado en el parmetro, o null si no se encuentra.
Respuesta que se pide
a) El pseudocdigo del mtodo
metodo buscaAsignaturaPorCodigo(Array x de Asignatur,String codigo) retorna String
para i desde 0 hasta ltimo ndice de x
si codigo es igual a un codigo de x
retorna nombre adjunto a dicho codigo
fin si
fin para
retorna null
fin del mtodo
26/04/16
.3
Bsqueda en un ArrayList
Objetivos
Hacer la misma bsqueda anterior en un ArrayList.
Descripcin
Se desea escribir un mtodo esttico al que se le pasan como parmetros un ArrayList de objetos de
la clase Asignatura de la cuestin anterior y un codigo. El mtodo debe retornar el nombre de la
asignatura de la lista cuyo codigo coincida con el indicado en el parmetro, o null si no se
encuentra.
26/04/16
.4
Desviacin estndar
Objetivos
Calcular la desviacin estndar de una serie de medidas
Descripcin
Se desea escribir un mtodo esttico al que se le pasa como parmetro un array de n nmeros reales
y que calcula y retorna la desviacin estndar obtenida con la expresin:
=1
( )2
1
donde:
26/04/16
Nota: Observar que en las frmulas los valores se numeran de 1 a n, mientras que en el array van de
0 a n-1
=
medidas
* @return desviacionestandar
*/
public static double desviacionEstandar(double[] medida){
double sumatorioxi=0.0;
double sumatoriocuadrado=0.0;
double media;
double desviacionestandar;
for(int i=0;i<=medida.length-1;i++){
sumatorioxi=sumatorioxi+medida[i];
}
media=(sumatorioxi/(medida.length));//Calcula la media de las medidas
for(int i=0;i<=medida.length-1;i++){
sumatoriocuadrado=sumatoriocuadrado+((medida[i]-media)*(medida[i]-media));//Calcula el
numerador de la formula de la desviacion estandar
}
desviacionestandar=sumatoriocuadrado/(medida.length-1);//Calcula la desviacin estandar
26/04/16
26/04/16