Clase
Eduardo Bonelli
Departamento de Ciencia y Tecnolog´ UNQ ıa, ebonelli@unq.edu.ar
12 de septiembre de 2007
Especificaci´n de Problemas o
Ejemplos
Ejemplo deProblema
“ordenar, en orden creciente, una lista de 3 n´meros enteros” u Posible dato de entrada [7,1,-3] Posible dato de salida [-5,6,7] Nota: El dato de salida [-5,6,7] es una salida v´lidaaunque no a para el dato de entrada [7,1,-3]
¿Qu´ es un problema? e
Un problema se describe o especifica exhibiendo: 1. Cu´les son los posibles datos de entrada a 2. Cu´les son los posibles datos desalida o resultados a 3. Cu´les son las condiciones que debe satisfacerse para que una a salida particular sea aceptable para una cierta entrada
relaci´n entre datos de entrada y datos de salida oVamos a dar un ejemplo usando listas
Ejemplo de especificaci´n de problema o
Entrada (s): listas de enteros de longitud 3 Salida (t): listas de enteros de longitud 3 Relaci´n de E/S: o
1. t espermutaci´n de s o 2. Para todo 1 ≤ i, j ≤ |s| tal que i < j se cumple que t(i) ≤ t(j)
Partes de una especificaci´n o
1. Encabezado 2. Precondici´n o 3. Poscondici´n o
Partes de unaespecificaci´n - Encabezado o
problema nombre(parametros) = nombreRes:tipoRes Nombre
Nombre del problema
Par´metros a
Nombre y tipo de cada par´metro a
nombreRes
Nombre del resultado
tipoRes
Tipodel resultado
Ejemplo: problema ordenar (s:[Int]) = t:[Int]
Partes de una especificaci´n - Precondici´n o o
Se refiere a los par´metros de la especificaci´n (i.e. la entrada) a o Establececondiciones que el usuario (de la especificaci´n) o debe cumplir Es lo que requiere el m´todo, programa, algoritmo para hacer e su tarea Ejemplo: “la lista de entrada s tiene longitud 3”
Partes de unaespecificaci´n - Poscondici´n o o
Condici´n sobre el resultado o Establece condiciones que el programador (o quien construya la soluci´n) debe cumplir o Es lo que el m´todo, programa, algoritmo...
Regístrate para leer el documento completo.