Professional Documents
Culture Documents
1. Definición de Algoritmo
1.1. Propiedades de los Algoritmos
2. ¿Qué es un Programa?
2.1. Cómo se construye un Programa
3. Definición y uso de herramientas para describir
soluciones: Diagramas de flujo, Pseudocódigo
3.1. El Diagrama de Flujo
3.2. El pseudocódigo
4. Traducción de ideas a un lenguaje de programación
concreto: El problema de la implementación
4.1. Acciones y Estructuras de control
4.2. Procedimientos
5. Lenguajes de programación. Clasificación. Colocación
en la clasificación del lenguaje C
5.1. Clasificación de los lenguajes de programación
5.1.1. Lenguajes máquina
5.1.2. Lenguajes de bajo nivel
5.1.3. Lenguajes de alto nivel
5.2. El lenguaje C
Tema 2. Pág. 1
1.Definiciones de Algoritmo:
• Un algoritmo es la expresión de una secuencia precisa
de operaciones que conduce a la resolución de un
problema.
• Sistema de reglas que permiten obtener una salida
específica a partir de una entrada específica. Cada paso
debe estar definido exactamente, de forma que pueda
traducirse a lenguaje de computadora
2. Definiciones de Programa.
• Un programa para ordenador es la expresión de un
algoritmo en un lenguaje artificial formalizado.
• Conjunto de Instrucciones que controlan el
funcionamiento del ordenador
Tema 2. Pág. 2
2.1. Cómo se contruye un programa. Fases en la
construcción de un programa
Tema 2. Pág. 3
Terminal C F
Comienzo Fin
Entrada/Salida
Proceso
NO
Decisión
SI
Decisión Multiple
Linea de Flujo
Conectores
Llamada a Subrutina
Tema 2. Pág. 4
Ejemplo: Diagrama de Flujo para indicar si un Nº es par o
impar
Tema 2. Pág. 5
Pseudocódigo para indicar si un Nº es par o impar
1. Inicio
2. Si N=2 escribe par e ir a 6, en caso contrario continuar
3. Si N=1 escribe impar e ir a 6, en caso contrario
continuar
4. N=N-2
5. Volver al punto 2
6. Fin
Tema 2. Pág. 6
4. Traducción de ideas a un lenguaje de programación
concreto: El problema de la implementación
4.2. Procedimientos
Es un fragmento de programa que realiza una tarea
concreta y recibe un nombre por el que puede ser llamado
o activado desde otra parte del programa. Concepto de
argumentos.
Tema 2. Pág. 7
5.1. Clasificación de lenguajes
5.1.1 Lenguaje máquina
Los lenguajes máquina son directamente inteligibles
por el ordenador, ya que sus instrucciones son cadenas
binarias (caracteres 0 y 1) que especifican una operación,
y las posiciones (dirección) de memoria implicadas en la
misma. Estas instrucciones se llaman instrucciones
máquina o código máquina
- Inconvenientes:
dificultad y lentitud en la codificación,
poca fiabilidad,
dificultad grande de verificar y poner a punto los
programas
Los programas sólo son ejecutables en el mismo
procesador
Tema 2. Pág. 8
5.1.3. Lenguajes de alto nivel
Este tipo de lenguajes presentan las siguientes ventajas:
La escritura de programas se basa en reglas sintácticas
similares a los lenguajes humanos.
Las modificaciones y puestas a punto de los programas
son más fáciles.
Portabilidad.
Y sus inconvenientes son:
Se necesitan varias traducciones del programa fuente
para conseguir el programa definitivo.
No se aprovechan los recursos internos de la máquina.
El tiempo de ejecución es mucho mayor.
Traducción
Compiladores (código fuente + código objeto)
Interpretes (análisis, traducción del código fuente)
5.2 Lenguaje C:
C combina elementos de lenguajes de alto nivel con la
funcionalidad del lenguaje ensamblador.
Permite la manipulación de bits, bytes (palabras),
direcciones (punteros).
Soporta el concepto de tipos de datos (conj. Valores que
puede tener una variable junto a conj de operaciones)
Tema 2. Pág. 9