You are on page 1of 24

UNIVERSIDAD VERACRUZANA

Tecnologas computacionales

Mtro. Alberto Jair Cruz Landa


albertojair1614@gmail.com
albecruz@uv.mx

Definicin
Definimos Algoritmo: Como un conjunto de pasos, procedimientos o acciones que nos permitan alcanzar un
resultado o resolver un problema.

Ejercicio
Describe en tu libreta, detalladamente un algoritmo para elaborar unos huevos revueltos a la mexicana.

Etapas para resolver un


problema
Describe en tu libreta, detalladamente un algoritmo para elaborar unos huevos revueltos a la mexicana.

Imagen Extrada del libro Fundamentos de Programacin


(Piensa en C), Osvaldo Cairo.

Caractersticas que deben


tener los algoritmos

Precisin: Los pasos a seguir en el algoritmo se debe precisar claramente.

Determinismo: El algoritmo, dado un conjunto de datos de entrada idntico, siempre debe arrojar los
mismo resultados.

Finitud: El algoritmo, independientemente de la complejidad del mismo, siempre debe tener longitud
finita.

Mdulos o secciones de un Algoritmo


Imagen Extrada del libro Fundamentos de Programacin
(Piensa en C), Osvaldo Cairo.

Lenguajes de Programacin
Lenguaje de programacin: Se trata de un sistema de smbolos y reglas que facilitan la elaboracin de
programas computacionales.

Lenguaje Maquina: cdigo binario (0 y 1)

Lenguaje de bajo nivel: Ensamblador (cdigos mnemnicos)

Lenguaje de alto nivel: Parecido al lenguaje humano

Caractersticas que deben


tener los algoritmos

Precisin: Los pasos a seguir en el algoritmo se debe precisar claramente.

Determinismo: El algoritmo, dado un conjunto de datos de entrada idntico, siempre debe arrojar los
mismo resultados.

Finitud: El algoritmo, independientemente de la complejidad del mismo, siempre debe tener longitud
finita.

Mdulos o secciones de un Algoritmo


Imagen Extrada del libro Fundamentos de Programacin
(Piensa en C), Osvaldo Cairo.

Compiladores
Un Compilador es un programa que lee un programa escrito en un lenguaje (lenguaje fuente) y lo traduce a un
programa equivalente en otro lenguaje (lenguaje objeto).

Compiladores
Como parte importante de este proceso de traduccin, el compilador informa al usuario de la presencia de
errores en el cdigo fuente.

Interpretes
Los interpretes analizan el programa fuente y lo ejecutan directamente, sin generar ningn cdigo equivalente.

Compiladores e Interpretes

Lenguajes Compilados e
Interpretados

Entornos de lenguajes de
Programacin
En las primeras etapas de la programacin los programas se realizaban mediante una cadena de operaciones.

Los entornos de programacin son programas que proveen de todas o la mayora de las herramientas necesarias
para que el programador desarrolle un programa.
Otra denominacin que se da a los entornos es IDE (Integrated Development Enviroment o Entorno Integrado de
Desarrollo).

Entornos de lenguajes de
Programacin
Las facilidades que aportan los entornos de lenguajes de programacin son:

Edicin de programas
o Anlisis del cdigo sobre la marcha (sintcticos).
o Ayuda en tiempo real con autocompletado.
o Puede formar parte del entorno o bien ser una herramienta por separado.
o El editor permite guardar los programas en un archivo denominado cdigo fuente.

Programas traductores (compilador)

Herramientas de depuracin del programa de ejecucin.

Entornos de lenguajes de
Programacin
Ejemplos de entornos de lenguajes de programacin:

Conceptos bsicos de
programacin
Lenguajes de programacin de alto nivel se encuentran dos subdivisiones claras en la manera de llevar a cabo la
resolucin de los problemas:

Programacin estructurada: La resolucin de un problema se divide en tareas y subtareas. Se utilizan


tres estructuras principales; secuencia, seleccin e interaccin.

Programacin orientada a objetos: Paradigma de programacin que emplea objetos e interacciones


entre ellos, para disear aplicaciones. Est basado en varias tcnicas como herencia, abstraccin,
polimorfismo y encapsulacin.

Entorno tpico en C++

Imagen Extrada del libro Cmo Programar C++, P.J. Deitel,


H.M. Deitel

Entorno tpico en C++


Fase 1. (Creacin del programa)- Consiste en editar un archivo con un programa de edicin (editor). Regularmente
los nombres de archivos de cdigo fuente en C++ terminan con las extensiones .cpp, .cxx, .cc o .C.
Fase 2 y 3. (Preprocesamiento y compilacin)- (2) Se introduce el comando para compilar el programa. En un
sistema de C++, un programa preprocesador se ejecuta de manera automtica antes de que empiece la fase de
traduccin del compilador. El preprocesador de C++ obedece a comandos denominados directivas del
preprocesador, las cuales indican que deben realizarse ciertas manipulaciones en el programa antes de compilarlo.
(3) en la fase 3 el compilador traduce el programa de C++ en cdigo de lenguaje mquina (cdigo objeto).
Fase 4. (Enlace) Por lo general, los programas en C++ contienen referencias a funciones y datos definidos en otra
parte, como en las bibliotecas estndar o en las bibliotecas privadas de grupos de programadores que trabajan
sobre un proyecto en especfico. Un enlazador relaciona el cdigo objeto con el cdigo para las funciones faltantes,
de manera que se produzca una imagen ejecutable (sin piezas faltantes).

Fase 5 (Carga) Antes de poder ejecutar un programa, primero se debe colocar en la memoria. Esto se hace
mediante el cargador, que toma la imagen ejecutable del disco y la transfiere a la memoria.
Fase 6 (Ejecucin) Por ltimo, la computadora, bajo el control de su CPU, ejecuta el programa una instruccin a la
vez.

Texto Extrado del libro Cmo Programar C++, P.J. Deitel,


H.M. Deitel

Entorno tpico en C++


Fase 1. (Creacin del programa)- Consiste en editar un archivo con un programa de edicin (editor). Regularmente
los nombres de archivos de cdigo fuente en C++ terminan con las extensiones .cpp, .cxx, .cc o .C.
Fase 2 y 3. (Preprocesamiento y compilacin)- (2) Se introduce el comando para compilar el programa. En un
sistema de C++, un programa preprocesador se ejecuta de manera automtica antes de que empiece la fase de
traduccin del compilador. El preprocesador de C++ obedece a comandos denominados directivas del
preprocesador, las cuales indican que deben realizarse ciertas manipulaciones en el programa antes de compilarlo.
(3) en la fase 3 el compilador traduce el programa de C++ en cdigo de lenguaje mquina (cdigo objeto).
Fase 4. (Enlace) Por lo general, los programas en C++ contienen referencias a funciones y datos definidos en otra
parte, como en las bibliotecas estndar o en las bibliotecas privadas de grupos de programadores que trabajan
sobre un proyecto en especfico. Un enlazador relaciona el cdigo objeto con el cdigo para las funciones faltantes,
de manera que se produzca una imagen ejecutable (sin piezas faltantes).

Fase 5 (Carga) Antes de poder ejecutar un programa, primero se debe colocar en la memoria. Esto se hace
mediante el cargador, que toma la imagen ejecutable del disco y la transfiere a la memoria.
Fase 6 (Ejecucin) Por ltimo, la computadora, bajo el control de su CPU, ejecuta el programa una instruccin a la
vez.

Texto Extrado del libro Cmo Programar C++, P.J. Deitel,


H.M. Deitel

Diagramas de flujo
El diagrama de flujo representa la esquematizacin grfica de una algoritmo. En realidad muestra grficamente los
pasos o procesos a seguir para alcanzar la solucin del problema.
El diagrama de flujo se debe construir de manera independiente al lenguaje de programacin.
Smbolos utilizados en los diagramas de flujo

Texto Extrado del libro Fundamentos de Programacin


(Piensa en C), Osvaldo Cair.

Diagramas de flujo

Texto Extrado del libro Fundamentos de Programacin


(Piensa en C), Osvaldo Cair.

Diagramas de flujo

Texto Extrado del libro Fundamentos de Programacin


(Piensa en C), Osvaldo Cair.

Ejemplo Diagrama de flujo

Pseudocdigo
El pseudocdigo es un lenguaje artificial e informal que ayuda a los programadores a desarrollar algoritmos. El
pseudocdigo es similar al espaol comn; es conveniente y sencillo, aunque no es un lenguaje de programacin
real.
Los pseudocodigos no se ejecutan en las computadoras, sino que slo ayudan al programador a resolver un
programa antes de intentar escribirlo en un lenguaje de programacin como C / C++.

You might also like