Flashcards
Final AyP

Cards in this deck (70)
- 1Pasos para solucionar un problema❥ Análisis
❥ Diseño
❥ Implementación
❥ Compilación
❥ Ejecución y Prueba - 2¿Que es un algoritmo?Es una sucesión finita de acciones que resuelven un problema
- 3¿Qué son las estructuras de control?Permiten modificar el flujo de ejecución de las acciones de un algoritmo y de un programa.
Tienen un único punto de entrada y salida.
Se componen de acciones o de otras estructuras de control. - 4Composición secuencialEsta representada por una sucesión de acciones u operaciones que se realizan una después de la otra. El orden de ejecución es de arriba hacia abajo.
- 5Composición condicionalEs un grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición. Sirve para tomar decisiones
- 6Explicar el si entoncesEs una composición condicional, ejecuta una determinada acción cuando se cumple una cierta condición y en caso contrario seguir el orden secuencial. Se evalúa una condición, si es verdadera se ejecutan las acciones, cuando la condición es falsa no se hace nada se continua con la estructura siguiente
- 7Explicar el si entonces sinoEs una composición condicional. permite elegir entre dos opciones. Se evalua la condicion si es verdadera se ejecutan las acciones del si y se es falsa se ejecutan las acciones del sino.
- 8Explicar el segun y el segun otrosSon composiciones condicionales. Se evalúa entre múltiples condiciones, solo se van a ejecutar las acciones de la condición que sea verdadera. En el segun otros si ninguna condición es verdadera se van a ejecutar las acciones del otros.
Estas condiciones deben cubrir todo el dominio y deben ser mutuamente excluyentes. - 9Equivalencias entre las composiciones condicionalesSi..entonces..sino es equivalente al segun
El segun es equivalente al si anidado - 10Composición IterativaEn todas sus alternativas permite la ejecución repetida de un bloque de acciones
- 11Explicar el repetir•La condición expresa lo que se debe cumplir para que termine el ciclo, se denomina condición de terminación.
•Las acciones se realizan una o mas veces.
•Se utiliza cuando se conoce o no cuantas veces va a ciclar.
• El comportamiento es el siguiente:
◦Se realizan las acciones una vez
◦Luego se evalúa la condición de terminación.
◦Si es falsa se vuelven a realizar las acciones
◦Si la condición es verdadera termina - 12Explicar el mientras• La condición expresa lo que se debe cumplir para que continúe el ciclo, se denomina condición de continuación.
• Las acciones se realizan cero, una o mas veces.
• Se utiliza cuando se conoce o no cuantas veces va a ciclar.
• El comportamiento es el siguiente:
◦Se evalúa la condición de continuación.
◦Si es verdadera, entra al ciclo y se realizan las acciones.
◦Si es falsa termina. - 13Explicar el para• Las acciones se ejecutan cero, una o mas veces.
• Se utiliza cuando se conoce cuantas veces va a cicliar.
• El comportamiento es el siguiente:
◦Se inicializa la variable de control.
◦Se evalúa la condición de continuación
◦Si es verdadera se ejecutan las acciones, luego se incrementa o decrementa la variable de control. Se vuelve a evaluar la condición de continuación.
◦Si es falsa, sale del ciclo. - 14Equivalencias entre la composición iterativa

- 15¿Que es la modularización?Significa dividir un problema en parte funcionalmente independientes, que encapsulen operaciones y datos.
- 16Ventajas de modularizar◆Un equipo de programadores puede trabajar simultáneamente
en varios módulos.
◆Se puede reutilizar el código.
◆Poder corregir los errores en menor tiempo y disminuir los costos de mantenimiento de los programas.
◆Disminuir los riesgos y costos de incorporar nuevas prestaciones a un programa en funcionamiento.
◆Es una mayor claridad para leer y comprender el código del programa.
Se puede modularizar a través de funciones, bibliotecas, acciones. - 17Concepto de función❖Idea intuitiva: Una función establece una asociación entre valores de entrada y valores de salida.
❖Definición: Una función es una correspondencia elementos de
dos conjuntos, en la que un elemento del
conjunto origen (dominio), le corresponde un único elemento del conjunto imagen (rango). - 18¿Qué son las funciones parciales y totales?❖Función parcial: Son aquellas en las que la imagen de, al menos, un elemento no está definida.
❖Función total: Son aquellas en las que todos los elementos del dominio tienen definida una imagen. - 19Cual es la definición por intención y extensión de las funciones?❖Definición por intención: Se define la función a través de una expresión.
❖Definición por extensión: Se define la función explícita, valor por valor. - 20Que es el determinismo en una función?❖Determinismo: Si ingresamos un valor de entrada a una función siempre nos tiene que devolver el mismo valor.
- 21Que es la composición de funciones?❖Composición: La entrada de una función puede recibir otra función, esto posibilita el anidamiento de funciones.
- 22Que es la aplicación de funciones?❖La aplicación es la regla de correspondencia a un valor concreto del dominio le determina un valor concreto de la imagen. Esta aplicación desencadena una secuencia de sustituciones hasta llegar a la forma canónica.
- 23¿Como se invoca a una funcion?Se invoca indicando su nombre y los parámetros.
- 24Cuando son más efectivas las funciones?Son más efectivas si son autocontenidos. Son autocontenidas si no hacen referencia a las variables constantes que estén fuera de ella, la información debe poder ser transferida entre ella y el resto del algoritmo principal a
través de lo que llamaremos parámetros. - 25¿Que son los parámetros?Los parámetros permiten que una función pueda manipular diferentes valores, y por lo tanto la misma función puede ser usada tantas veces como sea necesario en un mismo algoritmo.
Hay dos tipos de parámetros:
◈Formales: son los que usamos en la función.
◈Actuales: son los que usamos para la invocación de la función. - 26Tipos de pasajes de parámetros➢Por copia: Vincula el parámetro formal con el actual, haciendo una copia de la información. Se usa en el diseño y la implementación. Hay tres tipos: por dato, por resultado y por dato/resultado.
➢Por referencia: Vincula el parámetro formal directamente al argumento.Se usa para la implementación. - 27¿Que son los estados?Son los valores de las variables en un momento determinado de
la ejecución del algoritmo - 28AccionesLas acciones son similares a los algoritmos, pueden modificar los estados de las variables, tienen parámetros
- 29Diferencia entre funciones y acciones● Las funciones no deben modificar el entorno, las acciones no tienen este problema.
● Las funciones devuelven, sí o sí, un resultado que debe invocarse dentro
de un contexto válido (asignación, expresión, condición). Las acciones
se invocan de forma independiente y pueden devolver resultados a
través de sus parámetros (cláusula resultado o dato-resultado). - 30¿Que es un tipo?Un tipo es el conjunto de valores posibles
que puede tomar una variable - 31ArregloUn arreglo es una colección finita (tiene un límite), homogénea (elementos del mismo tipo) y “ordenada” (se sabe quién es el primero, el segundo, el tercero, etc.).
Tiene dos partes importantes:
● Componentes: hacen referencia a los elementos.
●Índices: es la posición donde se encuentra el elemento.
Los arreglos son estáticos, es decir, están disponibles desde el mismo momento que son declarados y conservan el mismo tamaño durante toda la ejecución. - 32Tipos de arreglosUnidimensional: Está formado por una sucesión de elementos consecutivos. No deben dejarse “huecos” .
Bidimensional: Se utilizan para representar tablas de valores.
Se requieren dos índices, uno para las filas y otro para las columnas. - 33¿Que es una biblioteca?✦Es un conjunto de constantes, tipos
de datos, variables, acciones y/o funciones.
✦Son independientes.
✦Una biblioteca puede usar otra biblioteca
✦Son reutilizables, con lo cual se puede escribir una biblioteca ahora y usarla en cuantos algoritmos sea necesario. - 34¿Que es el método descendente?Dividir un problema en subproblemas
- 35¿Cuales son las ventajas del método descendente?⊛Mejor comprensión del problema
⊛Puede ser lógicamente ordenado en módulos.
⊛Fácil de modificar y verificar
⊛Se puede reutilizar - 36¿Cuales son las tres capas que se realizan para usar el metodo descendente?↬Partición (se descompone el problema principal en subproblemas).
↬Refinamiento (: Se resuelven los subproblemas obteniendo los subalgoritmos).
↬Composición (Se componen los subalgoritmos en un solo algoritmo). - 37¿Que es la programación estructurada?Es un estilo de programación que consiste en construir programas de fácil comprensión
- 38Ventajas de la programación estructuradaes de fácil comprensión, escritura, verificación y modificación. También permite reutilizar código.
- 39¿Que dice el teorema fundamental de la programación estructurada?“Todo programa propio se puede escribir utilizando únicamente las
estructuras de control secuencial, condicional e iterativa” - 40¿Que es un programa propio?Es aquel que:
• Tiene un único punto de entrada y un único punto de salida.
• Existen caminos desde la entrada hasta la salida que pasan por todas las partes del programa.
• Todas las instrucciones son ejecutables y no existen ciclos sin fin. - 41Tipos de datos

- 42Estructura estatica y dinamicaLas estructuras estáticas son aquellas en las que el tamaño de memoria ocupado se define antes de que el programa se ejecute y no puede modificarse durante la ejecución.
Las estructuras dinámicas son aquellas en las que no se debe definir
previamente el tamaño de memoria y son homogéneas. - 43¿Que es una variable de tipo puntero?Es una variable que posee una
dirección de memoria. - 44Que son las listas encadenadas?Conjunto de elementos dispersos en
memoria que representan una secuencia de datos. - 45Lista Simplemente Encadenada (LSE)Es una estructura encadenada donde:
a) Se conoce el primer elemento
b) cada elemento conoce la dirección de memoria donde está ubicado el siguiente
c) Se conoce el último elemento
Doblete: Es un registro
formado por dos campos: uno para almacenar la información y otro para
almacenar la dirección del siguiente elemento - 46Lista Doblemente Encadenada (LDE)Es una estructura encadenada donde:
a) Se conoce el primer y el último elemento.
b)Cada elemento conoce la dirección de memoria donde está ubicado el anterior y el siguiente.
Triplete: Es un registro formado por tres campos: uno para almacenar la información, otro para almacenar la dirección del elemento anterior y un tercer campo para almacenar la
dirección del elemento siguiente - 47¿Que es el elemento ficticio?Es un elemento que no contiene datos útiles pero
que se usa en la implementación de la misma a los efectos de unificar las
sentencias de inserción y supresión. - 48Diferencias entre memoria principal (RAM) y la memoria secundariaLa memoria principal tiene un límite en la cantidad disponible, pierde su información cuando la computadora se apaga, tiene una elevada velocidad.
La memoria secundaria tiene mayor capacidad, retienen información después de finalizar el programa o al apagar la computadora, es más lenta que la RAM.
El tiempo de acceso a la memoria secundaria es de milisegundos y en la memoria ram es de nanosegundo, es decir, que la RAM está en
un rango de un millón de veces más rápida que los discos. - 49¿Que es un archivo?Es un medio de almacenamiento
persistente.
Se podría pensar que los archivos son “parecidos a los arreglos”, pero con la particularidad de que los datos
almacenados en ellos no se pierden. - 50¿Cuales son los tipos de archivos?✤Archivos de texto (txt): contienen texto “plano” (ASCII).
✤Archivos binarios: secuencia de bytes. Contienen datos de cualquier tipo (enteros, reales, registros, imágenes, texto con formatos). - 51¿Cuales son los tipos de acceso a archivos?▸El acceso secuencial exige una exploración secuencial de los elementos, comenzando desde el primero.
▸El acceso directo permite acceder a un elemento determinado haciendo una referencia directamente por su posición en el soporte de almacenamiento - 52¿Como se pueden tratar el acceso a los archivos de texto?¿Y a los binarios?Los Archivos de texto sólo pueden
tratarse mediante acceso secuencial.
Los Archivos binarios pueden tratarse
mediante acceso secuencial o directo. - 53¿Que es un paradigma?Es un modelo de programación (un estilo)
- 54Recursividad o recursión✧Puede interpretarse como otra estructura de programación o como una metodología de resolución de problemas.
✧Es otra forma de realizar repeticiones.
✧Se puede aplicar tanto a funciones
como a acciones
✧Toda función recursiva se puede traducir a una acción recursiva.
✧Pero no toda acción recursiva puede traducirse a una función. - 55Tipos de recursiónRecursión de cola: No hay cómputos pendiente después de la llamada recursiva
Recursión en aumento: Se dejan cómputos pendientes. - 56¿Cuales son los tipos de busquedas?➮Búsqueda secuencial en secuencia no ordenada
➮Búsqueda secuencial en secuencias ordenadas
➮Búsqueda dicotómica en secuencias ordenadas - 57¿Cual es la búsqueda que no se puede usar en LSE y LDE?La búsqueda dicotómica ya que es necesario contar con acceso directo a los elementos.
- 58Comparación entre métodos de búsqueda

- 59¿Para que ordenar una secuencia?Para facilitar el proceso de búsqueda.
De esa manera, no será necesario
recorrer todos los elementos cada vez que se necesita buscar uno. - 60¿Cuando un algoritmo de ordenamiento es estable?Cuando mantiene el orden relativo de los elementos con el mismo valor.
- 61¿Cuales son los cuatro algortimos de ordenamiento? Explica cada uno✱BubbleSort: Se recorre la secuencia comparando de a pares realizando un intercambio entre ellos cuando es necesario. LLeva el mayor elemento hacia el fondo y el menor elemento hacia arriba.
✱InsertionSort: Toma cada elemento de la secuencia lo compara con los elementos que estén antes de él. Si resulta que el elemento con el que se lo compara es mayor que el elemento a ordenar, lo corre a la siguiente posición. Si por el contrario, resulta que el elemento con el que se está
comparando es menor que el elemento a ordenar, se detiene el proceso de comparación y se avanza al siguiente elemento.
✱SelectionSort: Consiste en seleccionar la posición del elemento menor y, una vez encontrada, se coloca el elemento que está en dicha posición al comienzo
(intercambiando los elementos).
Luego se busca nuevamente el menor,
pero sin considerar la primera posición,
y lo intercambia con el valor que se
encuentra en la segunda posición, y
así sucesivamente.
✱QuickSort: - Elegir un elemento pivote
Vjkkjhggfghkklljtf - 62¿Cuando un conjunto de objetos está organizado en forma de secuencia?Si tiene primer elemento, hay una relación de sucesión entre los elementos, tiene que tener ultimo elemento.
- 63¿Cuales son los dos modelos de secuencias?◍ con marca final
◍ con marca inicial - 64¿Que son los esquemas de tratamientos?⦿Son meta-algoritmos (bosquejos, patrones) para tratar secuencias.
⦿Funcionan como plantillas que hay que completar.
⦿Facilitan la aplicación del método descendente porque ya tienen definida una partición del problema en subproblemas. - 65Esquemas de tratamientos generales●Recorrido: •Esquema R1: tratamiento integrado de la secuencia vacía y del
primer elemento.
•Esquema R2: tratamiento especial de la secuencia vacía.
•Esquema R3: tratamiento especial del primer elemento.
●Búsqueda: •Esquema B: búsqueda del primer elemento que verifica cierta
propiedad.
●Recorrido Parcial: •Esquema RP: tratamiento de todos los elementos hasta cierta propiedad. - 66—


- 67—


- 68—


- 69—


- 70—


Information
- Description
- Otro Introd. a la Algoritmica y Programacion Flashcards on Final AyP, created by Marysol Gutierrez on 07/07/2022.
- Created by
- Marysol Gutierrez
- Views
- 1
- Rating