Fundamentos de Algoritmos e Informática: Estructuras, Variables y Lenguajes de Programación
Fundamentos de algoritmos e informática
Los algoritmos son una serie de pasos ordenados y lógicos que conducen a la solución de un problema.
¿Cuáles son los 3 momentos que cumple un algoritmo?
Un algoritmo cumple tres momentos: entrada, proceso y salida.
Estructuras de repetición
Las estructuras de repetición sirven para controlar la repetición de una instrucción, de un grupo de instrucciones o de un programa completo.
La estructura for se emplea cuando se conoce el número exacto de repeticiones que se desea ejecutar.
Fases del desarrollo de un software
Fases del desarrollo de un software: análisis, construcción, control de calidad y paso a producción.
Características de un algoritmo
- Debe ser preciso e indicar el orden de realización de cada paso.
- Debe ser definido.
- Debe ser enumerado.
Variables
Representan los valores asignados. Por lo general tienen dos partes: nombre y tipo de datos que manejan.
Reglas para la creación de una variable
Se puede escribir una combinación de letras y números, por lo general debe empezar con una letra.
No se permiten acentos, espacios en blanco, puntuación ni caracteres especiales en el nombre de la etiqueta.
Estructuras selectivas
Las estructuras selectivas requieren de una prueba o comparación de ciertas condiciones, seguidas de otras alternativas en el programa.
- Si la condición es verdadera, se ejecuta cierta sentencia.
- Si es falsa, se ejecuta la alternativa.
Operadores lógicos
Los operadores lógicos sirven para combinar condiciones.
Diagrama de flujo
El diagrama de flujo es la representación gráfica del algoritmo o proceso, utilizando símbolos con significado bien definido que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin del proceso.
Entrada de datos
Salida de datos
Proceso de operación
Toma de decisiones
Inicio, fin
Contador y acumulador
Contador: es una variable que se incrementa o decrementa de manera constante.
Acumulador: es una variable que se incrementa o decrementa de manera variable.
Diferencia entre clases y objetos
Clase: la clase es un conjunto de objetos que comparten la estructura y comportamiento comunes.
Objetos: un objeto es el resultado de la instanciación de una clase, o sea algo más detallado y preciso conforme sus características y especificaciones.
Estructuras selectivas (detalle)
Estructuras selectivas: requieren de una prueba o comparación para definir rutas alternas en el programa. Si la condición es verdadera, se ejecuta cierta sentencia; si es falsa, se ejecuta la alternativa.
Compilador e intérprete
Compilador: es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el 2.º lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode) o simplemente texto.
Intérprete: es un programa informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en que, mientras estos traducen un programa desde su descripción en un lenguaje de programación al código de máquina del sistema, los intérpretes solo realizan la traducción a medida que sea necesaria, típicamente instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción.
Lenguajes de programación
Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas.
Un lenguaje de programación de bajo nivel es el que proporciona un conjunto de instrucciones aritmético-lógicas sin la capacidad de encapsular dichas instrucciones en funciones que no estén ya contempladas en la arquitectura del hardware.
Lenguaje de máquina: este lenguaje está compuesto por un conjunto de instrucciones que determinan acciones a ser tomadas por la máquina.