Introducción a los algoritmos Pedro Luis Godoy Arellano Estructuras de datos Instituto profesional IACC 15-09-18
Instrucciones y desarrollo.
Se necesita calcular la cantidad de cerámica necesaria para cubrir el piso de un departamento (CantCer). Para resolver esto, es necesario dividir y calcular el problema por partes. Primero es necesario calcular la superficie del departamento (SupDep) cuya forma es cuadrada, al igual que la cerámica (SupCer).
Especificación de datos de entrada
1) SupDep 2) Calcular la superficie de un cuadrado 3) L(lado) donde L>0 y número real 4) Su(Superficie) donde L>0 yes número real 5) Su = ¿?
1) SupCer 2) ¿?
1) CantCer 2) Calcular la cantidad de cerámica a utilizar 3) SD (Sup. Dpto.), SC (Sup. Cer.) donde ¿? 4) CC (Cent. Cer) donde ¿?>0 y es número real 5) CC = ¿?/¿?
Algoritmos a ejecutar
Inicio ¿?
Inicio Leer (L); Su ← ¿? * ¿?; Escribir (¿?); Fin.
Inicio Leer (¿?); Leer (¿?); CC ← SD / SC; ¿?; Fin.
1) ¿Qué clasificación de algoritmo que usó? Justifique su respuesta. El algoritmo que utilizo para este trabajo es el “Cuantitativo” , debido a que la definición de esta clasificación es la de ejecutar problemas que involucran cálculos numéricos, es de considerar que todo tipo de algoritmo debe contar con estas tres partes -
Entrada: Son los datos necesarios que que el algoritmo requiere para que este sea ejecutado. Proceso: Es la secuencia de pasos para que el algoritmo se pueda ejecutar. Salida: Son los datos que se obtuvieron al ejecutar el algoritmo.
Para que se pueda comenzar a desarrollar, se debe proceder a realizar un algoritmo en pseudocódigo que tenga la capacidad de calcular el área de un cuadrado, dependiendo de qué datos se hayan ingresado, el pseudocódigo presentará el valor de la superficie. 2) ¿Cuál es la complejidad del algoritmo utilizado? Justifique su respuesta. La complejidad de este algoritmo es de tipo cuadrática, este tipo de complejidad hace aparición en bucles o ciclos doblemente anidados. Si “n” se duplica, el tiempo de ejecución va a aumentar cuatro veces, en el caso presente se nos solicita calcular los metros cuadrados de la superficie donde irán instaladas las cerámicas, en este tipo de algoritmos se enumeran todas las parejas posibles conformadas en un conjunto, este comportamiento viene dado por una función de polinomio, debido a esto, se dificulta el obtener un comportamiento calculado de forma sencilla, es decir se deben realizar varios tipos de pasos para que se pueda llegar a obtener el resultado final. 3) ¿Es aplicable el método Voraz en este caso? Justifique su respuesta. Para este caso, que es el de calcular valores, no es posible aplicar el método Voraz, esto es debido a que este se refiere a la búsqueda de un valor dentro de una función, tanto un máximo como un mínimo, el método Voraz nos ofrece una solución a través de una secuencia de decisiones irreversibles y que evalúa un elemento una sola vez, que puede ser descartado o seleccionado para que forme parte de la solución del problema presentado. Este caso pide que hagamos esto: “es “ es necesario dividir y calcular el problema por partes. Primero es necesario calcular la superficie del
departamento (SupDep) cuya forma es cuadrada, al igual que la cerámica (SupCer)” no obstante para este caso es posible posi ble aplicar el método TopDown (traducido es arriba-abajo), el cual consiste en determinar los niveles de complejidad que puedan permitir la solución de un problema ordenándolos de mayor a menor, de manera similar al método divide y veceras, al aplicar el método Top-Down el problema base se dividirá en subproblemas para que puedan ser atacados uno a uno y de manera sencilla.
Bibliografía -
Contenidos de la semana 1