Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de...

20
Universidad del Papaloapan Tema: M. C. Bertha López Azamar Programación Estructurada Materia: Diseño de Algoritmos

Transcript of Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de...

Page 1: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Universidad del Papaloapan

Tema:

M. C. Bertha López Azamar

Programación Estructurada

Materia:

Diseño de Algoritmos

Page 2: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Objetivos:

Conocer los conceptos básicos de

algoritmos y programación.

Comprender las características deseables

de un programa y los pasos para su

elaboración

Manejar la terminología básica de

algoritmos.

Page 3: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Una computadora es totalmente

inútil si no dispone de un

programa capaz de procesar

información.

Introducción

La programación consiste en desarrollar

programas para procesar información.

La programación como término se utiliza

para designar la creación de programas a

pequeña escala, el desarrollo de sistemas

complejos se denomina ingeniería de

software.

Page 4: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Los lenguajes de programación:

son herramientas que nos permiten crear

programas y software.

• son independientes de las computadoras

a utilizar.

• representan en forma simbólica y en

modo de texto los códigos, los cuales

podrán ser leídos por una persona.

Page 5: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Historia de la programación

Lenguaje máquina

Lenguaje ensamblador

Lenguajes de Alto nivel

• Entre ellos tenemos Fortran, Delphi, Visual

Basic, Pascal, Java, C, C++, LISP, Prolog,

etc..

Page 6: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Los procesadores del lenguaje

Son los programas que permiten el

tratamiento de la información en forma de

texto, representada según la sintaxis del

lenguaje de programación.

Son los programas que realizan la

traducción del programa escrito por el

programador, a código máquina

ejecutable por la computadora.

Page 7: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Los programas escritos en un lenguaje de

programación pueden ser:

• Compilados

• Interpretados

Page 8: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Compiladores Interpretes

Traducen el programa

completo a lenguaje

máquina antes de

ejecutar cualquiera de

las instrucciones.

Una vez que el

programa está

compilado, las líneas

de código fuente dejan

de tener sentido

durante la ejecución del

programa.

Recorren el programa

tomando instrucciones

una a una en

pequeños grupos que

traducen y ejecutan.

Un intérprete lee el

código fuente de un

programa línea por

línea, realizando las

instrucciones

específicas contenidas

en esa línea.

Page 9: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

La ejecución de un

programa con

compilador requiere

de dos etapas:

1. Traducir el programa

simbólico a código

máquina

2. Ejecución y

procesamiento de los

datos

El intérprete en los

lenguajes de

programación simula

una máquina virtual,

donde el lenguaje de

máquina es similar al

lenguaje fuente.

Compiladores Interpretes

Page 10: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Una vez compilado el

programa fuente

escrito por el

programador, y

obtenido el código

objeto de la

compilación, el

compilador no se

necesita (a menos que

se requiera una nueva

compilación).

Se requiere en todo

caso, un interprete de

tiempo de ejecución

para que se pueda

ejecutar el programa.

Compiladores Interpretes

Page 11: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Programa lenguaje

de alto nivel

Compilador

Programa lenguaje

ensamblador

Ensamblador

Programa lenguaje

máquina

Funcionamiento de

un compilador:

Leer línea del

programa en

lenguaje de

alto nivel

Traducir línea

al lenguaje

máquina

Ejecutar línea

traducida

Finalizar

Funcionamiento de

un interprete:

Page 12: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

El lenguaje C

El lenguaje de programación en C, es un

lenguaje conocido como de alto nivel y

multiplataforma, nace en 1971.

Es un lenguaje estructurado, lo que permite

generar código claro y sencillo, ya que esta

basado en la modularidad y las sentencias

de control.

Esta estructurado en tres partes

fundamentales, las cuales son:

• una librería estándar,

• un programa compilador y

• un preprocesador.

Page 13: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

La librería estándar son programas realizados en

código objeto.

Estas librerías se deben colocar el un programa

de lenguaje programación en C, en la

instrucción conocida como INCLUDE.

El programa compilador su función es traducir las

instrucciones del programa fuente en C a

instrucciones en lenguaje maquina.

El compilador depura y detecta los posibles

errores en el lenguaje fuente, y es capaz de

notificar el error ocurrido al programador,

mediante un mensaje de texto.

Page 14: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

El preprocesador es un componente

perteneciente propiamente al lenguaje C, se

encarga de traducir cada instrucción del

programa fuente de la siguiente forma:

• Elimina los comentarios colocados por el

programador,

• incluye en el programa fuente el contenido

de los archivos que se encuentran

declarados en el INCLUDE, a estos

archivos se le suele llamar cabeceras, y

por ultimo ,

• sustituye los valores de las constantes

declaradas en el define.

Page 15: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Visual basic

Nace en 1991 del BASIC (Beginner´s All-purpose

Symbolic Instruction Code).

Tiene un ambiente de desarrollo gráfico que

facilitar la creación de interfaces gráficas

(GUI) simplificando la programación.

Es un lenguaje guiado por eventos, basado en objetos

y no orientado a objetos

centrado en un motor de formularios que facilita el

rápido desarrollo de aplicaciones gráficas.

Es utilizado principalmente para aplicaciones

de gestión de empresas, debido a la rapidez

con la que puede hacerse un programa que

utilice una base de datos sencilla.

Page 16: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Visual Basic constituye un IDE

(entorno de desarrollo integrado )

Consista de:

• Editor de código: Programa donde se

escribe el código fuente.

• Depurador : Programa que corrige errores

en el código fuente para que pueda ser

bien compilado.

• Compilador : Programa que traduce el

código fuente a lenguaje de máquina.

• Constructor de interfaz gráfica o GUI: Es

una forma de programar en la que no es

necesario escribir el código para la parte

gráfica del programa, sino que se puede

hacer de forma visual.

Page 17: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Inconvenientes de Visual Basic No tiene instrucciones de preprocesamiento.

No avisa de ciertos errores o advertencias.

No es multiplataforma.

No permite programación a bajo nivel ni incrustrar

secciones de código en lenguaje ensamblador.

No permite el manejo de memoria dinámica, punteros,

etc. como parte del lenguaje.

El tratamiento de mensajes de Windows es básico e

indirecto.

Tiene una gran gama de controles incorporados que en

algunos casos son muy generales (lo que lleva a tener

que reprogramar nuevos controles para una necesidad

concreta de la aplicación).

Page 18: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Java

Lenguaje de programación de alto nivel , surge en

1995, desarrollado por Sun Microsystems para

aplicaciones software independiente de la plataforma.

En un sentido estricto, Java no es un lenguaje

absolutamente orientado a objetos.

El lenguaje en sí mismo toma mucha de su sintaxis de

C y C++.

• Pero tiene un modelo de objetos más simple y elimina

herramientas de bajo nivel, que suelen inducir a muchos errores,

como la manipulación directa de punteros o memoria.

Java se ha convertido en un lenguaje con una

implantación masiva en todos los entornos

(personales y empresariales).

Page 19: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

El lenguaje Java se creó con cinco

objetivos principales:

Debería usar la metodología de la

programación orientada a objetos.

Debería permitir la ejecución de un mismo

programa en múltiples sistemas operativos.

Debería incluir por defecto soporte para

trabajo en red.

Debería diseñarse para ejecutar código en

sistemas remotos de forma segura.

Debería ser fácil de usar y tomar lo mejor de

otros lenguajes orientados a objetos, como

C++.

Page 20: Diseño de Algoritmosblopez/ProgramacionEstru... · Diseño de Algoritmos . Elementos básicos de programación M. C. Bertha López Azamar Programación Estructurada Objetivos: ...

Elementos básicos de programación

M. C. Bertha López Azamar Programación Estructurada

Las aplicaciones Java están típicamente compiladas

en un bytecode, aunque la compilación en código

máquina nativo también es posible.

• En el tiempo de ejecución, el bytecode es

normalmente interpretado o compilado a código

nativo para la ejecución, aunque la ejecución

directa por hardware del bytecode por un

procesador Java también es posible.