Fundamentos de Algoritmos

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Fundamentos de Algoritmos por Mind Map: Fundamentos de Algoritmos

1. .

2. Datos

2.1. Los datos son la información que recibe el computador a través de distintos medios, y que es manipulada mediante el procesamiento de los algoritmos de programación. Su contenido puede ser prácticamente cualquiera.

2.1.1. Algunos tipos de dato son:

2.1.1.1. Caracteres

2.1.1.1.1. Dígitos individuales que se pueden representar mediante datos numéricos (0-9), letras (a-z) u otros símbolos.

2.1.1.2. Carácter unicode

2.1.1.2.1. Unicode es un estándar de codificación que permite representar más eficazmente los datos, permitiendo así hasta 65535 caracteres diferentes.

2.1.1.3. Numéricos

2.1.1.3.1. Pueden ser números reales o enteros, dependiendo de lo necesario.

2.1.1.4. Booleanos

2.1.1.4.1. Representan valores lógicos (verdadero o falso).

3. Operadores

3.1. Aritméticos

3.1.1. Los operadores Aritméticos toman valores numéricos (ya sean literales o variables) como sus operandos y retornan un valor numérico único. Los operadores aritméticos estándar son adición o suma (+), sustracción o resta (-), multiplicación (*), y división (/).

3.1.1.1. .

3.2. Lógicos

3.2.1. Este tipo de operadores permite obtener solo dos resultados, por lo que se conocen también como booleanos, porque hacen uso de los principios del álgebra de Boole. Los resultados son Verdadero o Falso.

3.2.1.1. .

4. Software de diseño

4.1. Pseint

4.1.1. PSeInt es la abreviatura de los estados de computación de PSeudo Intérprete, una herramienta educativa creada en Argentina, utilizada principalmente por estudiantes para aprender los fundamentos de la programación y el desarrollo de la lógica.

4.1.1.1. Caracteristicas

4.1.1.1.1. Lenguaje autocompletado

4.1.1.1.2. Ayudas emergentes

4.1.1.1.3. Plantilla de comandos

4.1.1.1.4. Soporta procedimientos y funciones

4.1.1.1.5. Indentado inteligente

4.1.1.1.6. Graficado, edición y creación de diagramas de flujo

4.1.1.1.7. Exportación a otros lenguajes

4.1.1.2. Propócito

4.1.1.2.1. PSeInt está pensado para asistir a los estudiantes que se inician en la construcción de programas o algoritmos computacionales. El pseudocódigo se suele utilizar como primer contacto para introducir conceptos básicos como el uso de estructuras de control, expresiones, variables, etc, sin tener que lidiar con las particularidades de la sintaxis de un lenguaje real.

5. Etapas desarrolladas en la elaboración de un algoritmo

5.1. Las 7 etapas de un algoritmos son:

5.1.1. Definición del problema:

5.1.1.1. Requiere que el problema sea definido y comprendido claramente para que pueda ser analizado con todo detalle .

5.1.2. Análisis del problema

5.1.2.1. El propósito del análisis de un problema es ayudar al programador para llegar a una cierta comprensión de la naturaleza del problema. El problema debe estar bien definido si se desea llegar a una solución satisfactoria.

5.1.3. Diseño del algoritmo

5.1.3.1. Determina los pasos algoritmo el orden lógico de ejecución depende de la manera como se desarrolla todo el programa.

5.1.4. Codificación

5.1.4.1. Diseño del Código de solución basado en algoritmo Conocido fuente problema.

5.1.5. Depuración

5.1.5.1. Se da paso al depurador que de la solución al problema sin ninguna falla Ayuda a facilitar y comprender las modificaciones del programa.

5.1.6. Compilación

5.1.6.1. Instrucciones del programador Teniendo en cuenta que: La gramática esté escrita correctamente, Transcribe el según las normas de programa al regirse el programador Finalmente interior de la memoria.

5.1.7. Mantenimiento

5.1.7.1. Se lleva a cabo después de terminar el programa cuando se detecta que debemos realizar un cambio para complementar ese trabajo.

6. Identificadores

6.1. Un identificador es un conjunto de caracteres alfanuméricos de cualquier longitud que sirve para identificar las entidades del programa

6.1.1. Características

6.1.1.1. Pueden contener las letras a a z y A a Z, el guión bajo "_" y los dígitos 0 a 9.

6.1.1.2. El primer carácter debe ser una letra o el guión bajo.

6.1.1.3. Tampoco se permite la utilización de nombres que contengan dos guiones bajos seguidos.

6.1.1.4. Los identificadores distinguen mayúsculas y minúsculas, así que Sum, sum y suM son distintos para el compilador.

7. Software de programación

7.1. Diferentes alternativas y lenguajes para desarrollar programas de informática: editores de texto, compiladores, intérpretes, enlazadores, depuradores, entornos de desarrollo integrados

8. .

9. .

10. .

11. .

12. .

13. Metodologías de programación

13.1. Es un conjunto o sistema de métodos, principios y reglas que permiten afrontar de manera sistemática el desarrollo de un programa que resuelve un problema

13.1.1. Cascada Pura

13.1.1.1. Es el enfoque metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal manera que el inicio de una etapa debe esperar a la finalización de la etapa anterior

13.1.2. Espiral

13.1.2.1. Las actividades de este modelo se conforman en espiral, en la que cada bucle representa un conjunto de actividades, las actividades no están fijadas a ninguna prioridad

13.1.3. Ágil

13.1.3.1. Basa su desarrollo en un ciclo iterativo en el que las necesidades y soluciones evolucionan a través de la colaboración entre los diferentes equipos involucrados en el proyecto

14. Ciclo de vida de un programa

14.1. Es el proceso que se sigue para construir, entregar y hacer evolucionar el software, desde la concepción de una idea hasta la entrega y retiro del sistema.

14.1.1. Identificación

14.1.1.1. Es importante conocer el origen del sistema, así como las motivaciones que impulsaron su desarrollo

14.1.2. Análisis de requerimientos

14.1.2.1. Es la identificación de las necesidades del cliente y los usuarios que el sistema debe satisfacer

14.1.3. Especificaciones

14.1.3.1. Los requerimientos se realizan en un lenguaje mas formal de manera que se pueda encontrar la función de correspondencia entre las entradas y salidas del sistema y las salidas que se supone que generan.

14.1.4. Especificaciones de arquitectura

14.1.4.1. Define las interfaces de interconexion y recursos entre módulos del sistema de manera apropiada para su diseño detallado y administración.

14.1.5. Diseño

14.1.5.1. En esta etapa se divide el sistema en partes manejables llamados módulos,y se analizan los elementos que lo constituyen.

14.1.6. Desarrollo e implementación

14.1.6.1. Codificación y depuración de la etapa de diseño e implementacion del código fuente operacional.

14.1.7. Integración y prueba

14.1.7.1. Se ensamblan los componentes de acuerdo a la arquitectura establecida y se evalúa el comportamiento de todo el sistema.

14.1.8. Documentación

14.1.8.1. Se generan los documentos necesarios para el uso y mantenimiento del sistema.

14.1.9. Entrenamiento y uso

14.1.9.1. Instrucciones y guías para los usuarios detallando las posibilidades y limitaciones del sistema, para su uso efectivo

14.1.10. Mantenimiento

14.1.10.1. Actividades para el mantenimiento operativo del sistema. Se clasifican en: Evolución, conservación y mantenimiento propiamente del dicho.

14.1.10.1.1. Son tres los grandes grupos en los que se divide este concepto informático

15. Algoritmos

15.1. Un algoritmo es una secuencia de instrucciones secuenciales, gracias al cual pueden llevarse a cabo ciertos procesos y darse respuesta a determinadas necesidades o decisiones.

15.1.1. Existen 4 tipos de algoritmos:

15.1.1.1. Algoritmos computacionales:

15.1.1.1.1. Un algoritmo cuya resolución depende del cálculo, y que puede ser desarrollado por una calculadora o computadora sin dificultades.

15.1.1.2. Algoritmos no computacionales

15.1.1.2.1. Aquellos que no requieren de los procesos de un computador para resolverse, o cuyos pasos son exclusivos para la resolución por parte de un ser humano.

15.1.1.3. Algoritmos cualitativos

15.1.1.3.1. Se trata de un algoritmo en cuya resolución no intervienen cálculos numéricos, sino secuencias lógicas y/o formales.

15.1.1.4. Algoritmos cuantitativos

15.1.1.4.1. Todo lo contrario, es un algoritmo que depende de cálculos matemáticos para dar con su resolución.

15.1.2. Los algoritmos presentan las caracteristicas

15.1.2.1. Secuenciales

15.1.2.1.1. Los algoritmos operan en secuencia, debe procesarse uno a la vez.

15.1.2.2. Precisos

15.1.2.2.1. Los algoritmos han de ser precisos en su abordaje del tema, es decir, no pueden ser ambiguos o subjetivos.

15.1.2.3. Ordenados

15.1.2.3.1. Los algoritmos se deben establecer en la secuencia precisa y exacta para que su lectura tenga sentido y se resuelva el problema.

15.1.2.4. Finitos

15.1.2.4.1. Toda secuencia de algoritmos ha de tener un fin determinado, no puede prolongarse hasta el infinito.

15.1.2.5. Concretos

15.1.2.5.1. Todo algoritmo debe ofrecer un resultado en base a las funciones que cumple.

15.1.2.6. Definidos

15.1.2.6.1. Un mismo algoritmo ante los mismos elementos de entrada (input) debe dar siempre los mismos resultados.

16. Clasificación de los tipos de programación