Edd semana 01

Page 1

Tema 01: ALGORITMOS, REPRESENTACIÓN DEL ALGORITMO Y PROGRAMACIÓN ESTRUCTURADA

Dirección de Calidad Educativa Estructura de Datos - Edson Raúl Lazo Alvarez


Propósito El estudiante será capaz de conocer los algoritmos y representarlos. Conoce los conceptos de la programación estructurada. Estructura de Datos - Edson Raúl Lazo Alvarez


Algoritmo Conjunto ordenado y finito de pasos (acciones, instrucciones) ordenados que conducen a la solución de un problema. Por ejemplo: Al instalar un equipo de sonido ejecutamos las instrucciones (algoritmo) contenidas en el manual del equipo. Algoritmo matemático de Euclides para la obtención del máximo común divisor de dos números.

Si un algoritmo puede ser ejecutado por una computadora, se dice que es un algoritmo computacional; en caso contrario, se dice que es un algoritmo no computacional.

Estructura de Datos - Edson Raúl Lazo Alvarez


Algoritmo : se expresa en instrucciones a través de un lenguaje de programación, teniendo como resultado un programa.

Todo algoritmo puede ser descompuesto en tres partes:

E= Entrada de datos. Proceso. S=Salida de resultados. En cada uno de ellos se necesita el uso de variables. Variable: Localización de memoria principal que almacena un valor que puede cambiar en el transcurso de la ejecución del programa. Tiene un nombre, un tipo de dato y un valor. Ejemplo 1: Entero edad

18 Entero edad (direccion en memoria 00BF)

Ejemplo 2: Real peso, talla Estructura de Datos - Edson Raúl Lazo Alvarez


Características de un algoritmo Ser preciso: los pasos del algoritmo deben desarrollarse en un orden estricto, obedecer a un orden lógico. Ser definido. El computador solo desarrollará las tareas programadas y con los datos suministrados; no puede improvisar el dato que necesite para realizar un proceso. Ser finito: implica que el número de pasos de un algoritmo, debe ser limitado.

Presentación formal: para que el algoritmo sea entendido se exprese en alguna de las formas comúnmente aceptadas: el pseudocódigo, diagrama de flujo y diagramas de Nassi/Schneiderman, entre otras. Corrección: Para garantizar que el algoritmo logre el objetivo, es necesario ponerlo a prueba: verificación o prueba de escritorio. Eficiencia: es evaluar los recursos que requiere para almacenar datos y para ejecutar operaciones frente al beneficio que ofrece.

Estructura de Datos - Edson Raúl Lazo Alvarez


Módulos o Secciones de un Algoritmo ALGORITMO

DATOS DE ENTRADA

PROCESAMIENTO DE LOS DATOS

Estructura de Datos - Edson Raúl Lazo Alvarez

IMPRESIÓN DE RESULTADOS


Instrucciones Algorítmicas Básicas a. Entrada Consiste en obtener un dato de un dispositivo de entrada, como el teclado, y almacenarlo en una variable. En general, la acción de ingresar un dato a una variable se expresa en el pseudocódigo mediante la palabra LEER, de la siguiente forma: LEER variable Ejemplo: LEER edad

b. Salida Consiste en mostrar el valor de una variable en un dispositivo de salida, como la pantalla. En general, la acción de mostrar el valor de una variable se expresa en el pseudocódigo mediante la palabra IMPRIMIR (ESCRIBIR) de la siguiente forma: IMPRIMIR variable Ejemplo: IMPRIMIR TotalCompra

c. Asignación Consiste en dar a una variable el valor de una expresión. La asignación se expresa en el pseudocódigo de la siguiente forma: variable = expresión ó variable  expresión Donde variable y el valor de expresión deben tener el mismo tipo de dato. Ejemplo: resultado  numero1 + numero 2

Estructura de Datos - Edson Raúl Lazo Alvarez


Representación del Algoritmo Pseudocódigo Es la representación del algoritmo en lenguaje natural. Ejemplo: sumar dos números enteros. Ejemplo: sumar dos números.

Estructura de Datos - Edson Raúl Lazo Alvarez


Diagrama de Flujo Estructurado Representación con flujos entre los procesos a realizar. Los principales símbolos de representación para este diagrama son:

Estructura de Datos - Edson Raúl Lazo Alvarez


Diagrama Nassi/Schneiderman (N-S)

RepresentaciĂłn en bloques, es decir cada uno de los procesos como ingreso/salida de datos, decisiones, acciones, repeticiones; estĂĄn representados en bloques de tareas consecutivos.

Estructura de Datos - Edson RaĂşl Lazo Alvarez


Actividades

Elaborar el algoritmo y su respectiva representación, identificando los elementos de entrada y los elementos de salida, para los siguientes casos: El proceso de asistir a clases a un centro de estudios. El proceso de solicitar un libro en la biblioteca de una universidad. El proceso de un punto de ventas de un supermercado. El proceso de intercambiar dos valores numéricos.

El proceso de calcular la regla de tres simple. El proceso de matrícula para elaborar una lista de contactos digital. El proceso de Matrícula en una universidad.

Estructura de Datos - Edson Raúl Lazo Alvarez


Como ejercitar una Mente Abierta: http://es.wikihow.com/ejercitar-una-mente-abierta

Estructura de Datos - Edson RaĂşl Lazo Alvarez


Programación en el Computador 2.1 Programa Secuencia de instrucciones que especifican las operaciones que debe realizar la computadora, en la cual cada paso del algoritmo está expresado por medio de una instrucción. 2.2 Lenguaje de Programación

Conjunto de sentencias utilizadas para escribir secuencias de instrucciones que para que ejecute un programa en una computadora. Tipos de Lenguaje de Programación • Lenguaje Máquina: Lenguaje de programación que la computadora interpreta y ejecuta directamente, y está compuesto de instrucciones codificadas en binario (0, 1). • Lenguaje de Bajo Nivel: también llamados lenguajes ensambladores, permiten al programador escribir instrucciones de un programa usando abreviaturas del lenguaje natural (inglés), también llamadas palabras nemotécnicas (ADD, DIV, SUB, etc). • Lenguaje de Alto Nivel: permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintácticas muy similares al lenguaje natural (inglés). Estructura de Datos - Edson Raúl Lazo Alvarez


2.3 Programas Traductores

Traducen los programas fuente de a código máquina. Pueden ser:

Intérprete: Es un traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta.

PROGRAMA FUENTE

INTERPRETE

Estructura de Datos - Edson Raúl Lazo Alvarez

PROGRAMA EJECUTABLE


Compilador:

es un traductor que toma un programa fuente, y lo traduce sentencia por sentencia.

PROGRAMA FUENTE

COMPILADOR

PROGRAMA EJECUTABLE

La compilación es el proceso de traducción del programa fuente a programa objeto (traducido a código máquina), a través de un programa enlazador, para conducir al programa ejecutable. COMPILADOR

PROGRAMA FUENTE

PROGRAMA OBJETO

Estructura de Datos - Edson Raúl Lazo Alvarez

PROGRAMA ENLAZADOR

PROGRAMA EJECUTABLE


2.4 Programación Estructurada Conjunto de técnicas para escribir, verificar, depurar, y mantener los programas. Es una metodología de desarrollo de programas llamada refinamientos sucesivos: - Se plantea una operación como un todo. - Se divide en segmentos más sencillos o de menor complejidad. - Luego unificar las aplicaciones. Técnicas de la Programación estructurada: Éste conjunto de técnicas permite elaborar programas en cualquier lenguaje de programación. A) Recursos Abstractos Descomponer una determinada acción compleja en acciones más simples, para ser ejecutadas y que serán instrucciones. B) Diseño Descendente El problema se descompone en niveles o pasos sucesivos: que hace? como lo hace? C) Estructuras Básicas Son estructuras de control para el programa:

Secuenciales Selectivas Repetitivas Estructura de Datos - Edson Raúl Lazo Alvarez


2.5 Resolución de un Problema Los siguientes pasos propuestos para la resolución de problemas están basados en el Ciclo de Vida Clásico en la Construcción de un Software.

 Análisis del Problema:

 Diseño del Algoritmo

 Expresar el algoritmo en un programa.

examinar cuidadosamente el problema , obtener una idea clara sobre lo que se solicita y de lo que se necesita necesarios para solucionarlo.

secuencia ordenada de pasos, sin ambigüedades, que conducen a la resolución de un problema.

escribir el algoritmo usando la sintaxis de un lenguaje de programación.

 Ejecución y Validación del programa.

corregir el programa y ejecutarlo con las validaciones.

Estructura de Datos - Edson Raúl Lazo Alvarez


ACTIVIDAD N° 1 Investigar y presentar: Tipos de Datos, Variables, Constantes,

Operadores y Jerarquía de Operadores en el lenguaje C++.  Trabajo Individual  Fecha de Presentación: Martes 23 de agosto 2016  Formato: Impreso

Estructura de Datos - Edson Raúl Lazo Alvarez


Síntesis Algoritmo es:

Conjunto de pasos, ordenados y finitos, para resolver un problema.

No Computacional Computacional  Programa

Se representa:  PSeudocódigo  Diagrama de Flujo  Diagrama N-S Tipos de Programas Traductores:

Técnicas de Programación Estructurada:

Intérprete Compilador 1. Recursos Abstractos 2. Diseño Descendente 3. Sentencias Básicas a. Secuencial b. Selectivas c. Repetitivas Estructura de Datos - Edson Raúl Lazo Alvarez


Estructura de Datos - Edson RaĂşl Lazo Alvarez


Propósito de la Clase (Laboratorio)

Reconoce un entorno de lenguaje de programación.

Estructura de Datos - Edson Raúl Lazo Alvarez


Iniciando en el Lenguaje de Programación 0. Crear la carpeta Programas y Librerías en alguna unidad de trabajo.

Estructura de Datos - Edson Raúl Lazo Alvarez


1. Iniciando con Visual C++

Estructura de Datos - Edson RaĂşl Lazo Alvarez


2. Se visualiza la ventana de bienvenida.

Estructura de Datos - Edson RaĂşl Lazo Alvarez


3. Crear nuevo un proyecto:

File -> New Proyect

Estructura de Datos - Edson RaĂşl Lazo Alvarez


4. Seleccionar el Tipo del Proyecto: Visual C++ y la Plantilla: Win32 Console Application

Estructura de Datos - Edson RaĂşl Lazo Alvarez


5. Asignarle nombre al proyecto: PrimerProyecto y la ruta de la carpeta creada: Programas.

Estructura de Datos - Edson RaĂşl Lazo Alvarez


6. Seccionar NEXT para asignar característica al proyecto

Estructura de Datos - Edson Raúl Lazo Alvarez


7. Seleccionar EMPTY PROJECT para darle característica de Proyecto Vacío, y luego seleccionar FINISH

Estructura de Datos - Edson Raúl Lazo Alvarez


8. Se visualiza el Explorador de Proyecto al lado derecho de la pantalla

Estructura de Datos - Edson RaĂşl Lazo Alvarez


9. Crear un archivo fuente

Estructura de Datos - Edson RaĂşl Lazo Alvarez


10. Seleccionar la plantilla para el cĂłdigo fuente: C++ File (.cpp) , luego asignarle un nombre Programa1 y seleccionar ADD

Estructura de Datos - Edson RaĂşl Lazo Alvarez


11. Crear la estructura general de un programa en C

LibrerĂ­as de Cabecera Programa Principal

Estructura de Datos - Edson RaĂşl Lazo Alvarez


12. Crear líneas de código dentro del programa principal

Declaración de Variables Mensaje por pantalla Ingreso de Datos por teclado Proceso de Cálculo Mensaje por pantalla Salida de Datos por pantalla

Estructura de Datos - Edson Raúl Lazo Alvarez


13. Depurar y Ejecutar el Programa1.cpp, seleccionando el botón START DEBUGGING

Estructura de Datos - Edson Raúl Lazo Alvarez


14. Obtenemos el Programa Ejecutable

Estructura de Datos - Edson RaĂşl Lazo Alvarez


A) En la Carpeta Programas, se ha creado el archivo de Solution

Estructura de Datos - Edson RaĂşl Lazo Alvarez


B) En la Carpeta del Proyecto, se ha creado el archivo PrimerProyecto.vcproj y el archivo Programa1.cpp

Estructura de Datos - Edson RaĂşl Lazo Alvarez


C) Se puede visualizar el Programa Objeto

Estructura de Datos - Edson RaĂşl Lazo Alvarez


D) Se puede visualizar el Programa Enlazador y el Programa Ejecutable

Estructura de Datos - Edson RaĂşl Lazo Alvarez


Estructura de Datos - Edson RaĂşl Lazo Alvarez


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.