Guia aprender programacion Java

Páginas: 7 (1702 palabras) Publicado: 18 de enero de 2015
Programación y Estructuras de Datos Avanzadas

ETSI Informática

Curso 2014-2015

2

Universidad Nacional de Educación a Distancia

ETSI Informática

1.- ENUNCIADO DE LA PRÁCTICA: Multiplicación asociativa de matrices
El producto de una matriz A de dimensiones m x n por una matriz B de dimensiones n x
p es una matriz C de dimensión m x p cuyas componentes son:
n

c

a bij

ik

kj

,1

i

m ,1

j

p

k 1

Se requieren m x n x p productos escalares para realizar la multiplicación de dos
matrices.
El producto de matrices no es conmutativo, por lo que cuando queremos calcular el
producto de una secuencia de matrices no podemos alterar su orden. Pero sí es
asociativo, cumpliendo (AB)C = A(BC). Esta propiedad nos permite agrupar una
secuenciade matrices para multiplicar de distintas formas, y en función de la forma en
que agrupemos las matrices el número de multiplicaciones puede variar mucho. Se pide
diseñar un algoritmo con el esquema de programación dinámica que halle la forma de
asociar las multiplicaciones de una secuencia de N matrices de forma que se minimice el
número de multiplicaciones escalares con el que se puederealizar el producto y la
utilice para hallar la matriz producto M correspondiente.
Nótese que el producto sólo se puede realizar si las dimensiones de cada matriz Mi de la
secuencia son di-1 x di (la primera dimensión de la matriz Mi debe coincidir con la
segunda de la matriz Mi-1 para que sea posible realizar el producto).

2.- REALIZACIÓN DE LA PRÁCTICA
La entrega de la práctica consta de lossiguientes elementos:
 Código fuente adecuadamente documentado y ejecutable.
 Documento pdf con la siguiente información:
o Datos de la asignatura y del alumno:
 Nombre y código de la asignatura
 Título de la práctica
 Nombre y Apellidos
 NIF
 Centro Asociado
o Respuestas a los siguientes apartados:

Programación y Estructuras de Datos Avanzadas

Curso 2014-2015

3 Universidad Nacional de Educación a Distancia

ETSI Informática

1. Describa el esquema algorítmico utilizado y como se aplica al
problema, incluyendo las ecuaciones que representan el
problema, y la tabla de resultados parciales.
2. Analice el coste computacional del algoritmo.
3. Exponga alternativas al esquema utilizado si las hay, y compare
su coste con el de la solución realizada.
4.Describa los datos de prueba utilizados y los resultados obtenidos
con ellos.
Los detalles sobre evaluación pueden encontrarse en la guía de la asignatura.
2.1.- Diseño del algoritmo
La práctica constará de una memoria y de un programa Java original que resuelva el
problema aplicando el esquema de programación dinámica. El diseño debe seguir las
directrices que se dan para este problema en eltexto base.
Se deberá comprobar que el problema tiene solución, es decir que la secuencia de
matrices de entrada se puede multiplicar.
2.2.- Argumentos y parámetros
La práctica se invoca usando la siguiente sintaxis:
java multimat [-t][-h] [fichero_entrada] [fichero_salida]
o
java
–jar
multimat.jar
[fichero_salida]

[-t][-h]

[fichero_entrada]

Los argumentos son los siguientes:
-t:traza cada paso de manera que se describa la aplicación del algoritmo
utilizado.
-h: muestra una ayuda y la sintaxis del comando.
Por ejemplo:
$ Java multimat -h
SINTAXIS:
multimat [-t][-h]
-t
-h
fichero_entrada
fichero_salida



[fichero_entrada] [fichero_salida]
Traza la selección del orden de multiplicación
Muestra esta ayuda
Nombre del fichero de entrada
Nombre del ficherode salida

fichero_entrada: es el nombre del fichero del que se leen los datos de las
matrices: su número, y los datos de cada una de ellas. Si la entrada no es correcta
el programa debe indicarlo.

Programación y Estructuras de Datos Avanzadas

Curso 2014-2015

4

Universidad Nacional de Educación a Distancia

ETSI Informática

fichero_salida: es el nombre del fichero que se...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Guía De Programación Web Java Script
  • Lenguaje Para Aprender Programación Básica En Java?
  • Programacion GUI java
  • Programacion GUI java
  • Guia de programacion en java
  • Aprendiendo java
  • Programacion Java
  • Programacion java

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS