ALGORITMOS Y ESTRUCTURA DE DATOS

Slides:



Advertisements
Presentaciones similares
Lenguaje C++.
Advertisements

DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
PROF. ING. JULIO CESAR CANO RAMIREZ
Clase 2 Tipos de datos Asignación de valores Estructura IF Ejercicios
Marzo de 2010Dos Ideas - La visión de Sistemas desde el Desarrollo Introducción a PL/SQL Conceptos básicos.
Iteración La iteración permite modelar problemas en los cuales una secuencia de instrucciones debe ejecutarse varias veces. La cantidad de iteraciones.
Elementos de Pascal Escribir un programa en Pascal que lea los valores de los catetos de un triángulo rectángulo y calcule y muestre la hipotenusa. program.
Algoritmos & Estructuras de Datos
UNIDAD 2: FUNCIONES.
Direcciones, Arreglos y Argumentos de Funciones
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Técnico en programación de Software
Fundamentos de programación
Introducción a la Estadística Informática
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Curso de Programación 1 Plan 97
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
Algoritmo y Estructura de Datos I
Curso Básico de Algoritmos
Ingeniero Anyelo Quintero
VISUAL BASIC CONSOLA Todas las ordenes o instrucciones se digitan dentro de sub Main() y End Sub ÁREA DE TRABAJO: Las aplicaciones de consola son aquellas.
ESCUELA: NOMBRES: LÓGICA DE LA PROGRAMACIÓN UNIDAD 2: Naturaleza de los Datos FECHA: Ing. Patricio Abad Espinoza OCTUBRE 2009 – FEBRERO Ciencias.
Conceptos Básicos de Java
El compilador usa una técnica llamada “unificación” que comprueba que en cualquier aplicación, los tipos coinciden con los tipos correspondientes de los.
MÓDULO DE PROCEDIMIENTOS Los módulos también pueden contener subrutinas y funciones → MÓDULO DE PROCEDIMIENTOS  PROCEDIMIENTOS → son compilados como parte.
Funciones en lenguaje C
Tema 6. Conceptos básicos de programación
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
Fundamentos de Programación
Sesión 6 Sentencias de Repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Diseño de diagramación Diagrama: es una representación gráfica del flujo información de y el proceso de ejecución del programa. Plateo del problema en.
CARACTERÍSTICAS DE LOS PROGRAMAS
COMPUTACION 2009 Clase 2.
TIPOS Y ESTRUCTURAS BÁSICAS DE DATOS
Tema 2: Los tipos de datos
Sintaxis.
Agosto 2010Programación I - Tipo de Datos1 Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Universidad Nacional de Luján Licenciatura en Sistemas.
Introducción a la Programación Tema 2: Instrucciones y tipos de datos simples Ingeniería Técnica en Informática de Gestión Departamento de Ingeniería del.
Programación en Pascal
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
ESTRUCTURA DE DATOS ESD-243
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
COMPONENTES DE UN ALGORITMOS
Ciclos (Loops, Repeticiones) Permiten ejecutar una secuencia de sentencias mas de una vez. Hay 2 tipos de loops:  WHILE repite la acción un número indefinido.
Teoría – Alejandro Gonzalez
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
ETAPAS PARA SOLUCIONAR UN PROBLEMA
PENSAMIENTO ANALÍTICO SISTÉMICO DAISY KATERINE RODRÍGUEZ DURÁN
Introducción a la programación
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Departamento de Informática Universidad Técnica Federico Santa María Temas 2,3,4: Estructura de un Programa Pascal Declaraciones Tipos de Datos Simples.
LÓGICA DE PROGRAMACIÓN LSC. Susana Alejandra López Jiménez.
Términos algoritmo diseñar algoritmo implementar algoritmo
UNIVERSIDAD TECNICA PERTICULAR DE LOJA
 Un lenguaje se puede definir como un conjunto de palabras y formas de expresión por medio de las cuales se comunican y relacionan miembros de una comunidad.
Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
PRINCIPIOS DE PROGRAMACIÓN
TIPOS DE DATOS.
Elaboración de algoritmos usando lógica de programación
Presente un cuestionario con los aspectos mas importantes sobre los
Es un tipo especial de software que nos permite *Crear *Desarrollar *Programar otras aplicaciones. Haciendo uso de sus conocimientos lógicos y lenguajes.
Lic. Carla Aguirre Montalvo
Programación de Computadores
EL TIPO DE DATO LOGICO y constantes.
Algoritmos y Programación. Objetivos de Aprendizaje: Al finalizar esta unidad ud. debe estar en la capacidad de: Definir el propósito y el contenido de.
INFORMÁTICA II TEMA: DISEÑA Y ELABORA ALGORITMOS DOCENTE: MARÍA DOLORES GARCÍA PONCE CAMPUS TONALÁ JALISCO.
MC. J. D. Pope S. ITD Unidad II. Introducción a la programación 2.1 Ejemplo de programas 2.2 Identificadores, constantes y variables 2.3 Tipos de datos:
Transcripción de la presentación:

ALGORITMOS Y ESTRUCTURA DE DATOS Módulo 4 ALGORITMOS Y ESTRUCTURA DE DATOS PROFESOR: SIRACUSA EMILIANO MARTÍN Página Web: www.esiracusa.jimdo.com

Lenguaje de Programación PASCAL Creado por Niklaus Wirth, en Zurich, alrededor de los años 70. derivado del lenguaje Algol 60, pero es más potente y fácil de usar. Es el primer lenguaje que incorporó en una forma coherente los concentos de programación estructurada. Es un lenguaje procedural, es decir que todo proceso debe ser especificado. Es un lenguaje adecuado para la enseñanza de programación. Si bien no presenta elementos que soportan programación modular, permite un acercamiento interesante a la misma. Evita fomentar malos hábitos de programación

Programa: secuencia de instrucciones Programa: secuencia de instrucciones. Su escritura requiere cuidado y precisión. Las instrucciones son ejecutadas secuencialmente. A menos que se indique explícitamente lo contrario, se comienza la ejecución en la primera instrucción y se ejecuta cada instrucción de acuerdo a su turno hasta la última.. Este patrón general es quebrado por ciertas instrucciones. El proceso tiene un efecto que generalmente consiste en la exhibición o impresión de símbolos. El programa opera sobre ciertos objetos llamados datos.

Generalmente las instrucciones están precedidas por una declaración de los objetos sobre los cuales opera. El programador debe declarar los atributos de los datos antes de escribir las instrucciones. Algunas de las instrucciones requieren que el procesador tome alguna decisión. El programador debe establecer los criterios que el procesador puede usar para tomar la decisión. Puede ser necesario ejecutar una instrucción o un grupo de instrucciones más de una vez. El programa en sí mismo es una nidada estática, pero el proceso de llevar a cabo las instrucciones es dinámico

Programa Fuente Compilador Pascal Programa objeto

Procesador Datos de Entrada Programa Objeto Salida de datos

Errores de compilación Programa Objeto Computadora Programa Fuente Compilador Pascal Errores de compilación Datos de Entrada Salida de datos Errores de corrida

Símbolos: los símbolos usados en Pascal son las letras, los dígitos y caracteres o pares de ellos tal como + - := () ; : Palabras reservadas: tienen un significado especial para Pascal y no puede ser modificado. Begin, end, if, then, repeat, etc. Identificadores definidos por el lenguaje Pascal: integer. real, write, sqrt. Tiene un significado pero puede ser modificado. Identificadores definidos por el programador: Son los nombres de datos, procesos que tienen un significado para el programador. Existen reglas para su escritura. Todo identificador comienza con una letra que puede estar seguida por una letra o dígito. En Turbo Pascal se permite agregarle guión. La longitud máxima es de 256 caracteres. X-32, base, verdad, potencia

Se debe tener cuidado con la longitud de los identificadores. La primera ocurrencia de un identificador en un programa es siempre en su declaración, allí el identificador se define. La elección de un identificador es importante en programación. Facilita la elaboración del programa, es más fácil de leer y comprender, reduce el número de errores involuntarios en la escritura, en la corrección y en el tipiado. Una letra puede ser usada como un identificador de una sección corta de un programa, pero no es conveniente usarla cuando es referenciado frecuentemente en un programa largo. Su nombre debe estar relacionado con el dato que representa.

Estructura de un programa Program Prueba: Encabezamiento var a , b: integer; Declaraciones de identificadores c: integer: begin Bloque del programa read ( a, b); c := a + b; write(c) end.

Diagrama sintáctico Programa . Encabezamiento Bloque Declaraciones ; Identificador Identificador Letra Letra Dígito _

Sección de declaraciones Datos en un programa: Cada objeto a! que se hace referencia en un programa es un dato. Cada dato en un programa debe ser declarado previamente a su uso. Cada dato tiene asociado un tipo. El tipo de dato determina tanto los valores que ese dato puede asumir como las operaciones que pueden realizarse con él. Pascal tiene cuatro tipos de datos elementales: integer que representa un subconjunto de los números enteros. real que es un subconjunto de los números reales. boolean con los valores false y true. char que representa al conjunto de caracteres imprimibles. Cada uno de estos tipos tiene definidas operaciones particulares.

Sección de declaraciones Integer: números negativos y positivos sin punto decimal. 0, -25, 963 son números enteros. Sólo se representa un subconjunto finito de los números enteros matemáticos. En cada computadora hay un entero máximo indicado por la constante maxint y un entero mínimo indicado por -maxint. Todo dato entero asume valores entre -maxint y maxint. Intentar evaluar un dato fuera de este rango dará un error de corrida.

Operaciones del tipo de dato integer Aritméticas: + - * div mod (operadores binarios) + - ( operadores unarios) jerarquía de los operadores: + - (unarios) * div + - (binarios) expresiones aritméticas: Se evalúan de izquierda a derecha, de acuerdo a la jerarquía de los operadores que sólo puede ser modificada per la presencia de paréntesis. 3* 5 +12 dará como resultado 27 (3* 5) + 12 dará como resultado 27 3* (5 + 12) dará como resultado 51

donde cada vi es un valor entero. De comparación: comparan dos valores enteros y devuelve un valor booleano Operadores de relación: <, <=, >. >=, =,<> (binarios) donde cada vi es un valor entero. Funciones predefinidas por el lenguaje Pascal son aquellas que tienen un significado para el lenguaje y que aplicadas a un argumento dan por resultado un valor. Identificador de función ( argumento) Con argumento entero y resultado entero: pred (predecesor) devuelve el número anterior del argumento expresión aritmética operador v1 + v2 div v3 >= (v4 + v5) * v6

pred(5) devuelve 4 pred ( -3) devuelve – 4 succ (sucesor) devuelve el número siguiente al argumento succ( 5) devuelve 6 succ( -3) devuelve -2 abs ( valor absoluto) devuelve el valor absoluto del argumento abs( 5) devuelve 5 abs(-5) devuelve 5 sqr (cuadrado) devuelve e! cuadrado del argumento sqr (5) devuelve 25 sqr(-2) devuelve 4

real, es un subconjunto de los números reales matemáticos real, es un subconjunto de los números reales matemáticos. No se pueden representar los números irracionales, los racionales periódicos, los número muy próximos a cero y los excesivamente grandes, es decir aquellos números cuya representación en binario supere la representación dispuesta por el sistema. Un número de tipo real se puede escribir con punto decimal o en notación exponencial. 0.000000234 se puede escribir también en la forma 2.34E-7. Un número real tiene como características el rango y la precisión. El rango es de 10 elevado a un número que depende de la capacidad de la máquina y la precisión corresponde a la cantidad de números decimales a representar.

Operaciones del tipo real Aritméticas: + - * div mod (operadores binarios) + - ( operadores unarios) jerarquía de los operadores: + - (unarios) * div + - (binarios) las expresiones aritméticas se evalúan de izquierda a derecha y la jerarquía de los operadores puede alterarse con el uso de paréntesis. 4.67 + 12.032 * 45.1/ 7 0 (-4.67 + 12.032) * 45.1/ 7.0 De comparación: <, <=, >. >=, =,<> : 3.5 >6.58-2.3

Funciones con argumento real que devuelven un valor real. abs (x)= |x| sqr(x)= x al cuadrado sin (x)= seno de x cos (x)= coseno de x arctan (x)= arco tangente de x In (x)= logaritmo neperiano de x exp (x)= e elevado a la x sqrt (x)= raíz cuadrada de x

Funciones con argumento real que devuelven un valor entero. trunc (x) = parte entera de x (trunca) trunc (3.4) = 3 trunc (-2.6) = -2 round(x) ~ entero más próximo a x. (redondea) round ( 3.6) = 4 round(3.2) = 3 round(-4.8) = -5 Funciones con argumento entero que devuelven un valor real sin, cos, arctan, In, exp, sqrt

Boolean: sólo tiene los valores true v false Boolean: sólo tiene los valores true v false. Operaciones Lógicas la jerarquía de operadores se interrumpe con paréntesis De comparación: <, <=, >. >=, =,<> : (3+4*4<7) and (43<1) , F o V Funciones de argumento booleano y resultado booleano pred(true)=falce succ(falce)true not Unitaria and or Binaria

Char: no hay un conjunto de caracteres definidos por Pascal Char: no hay un conjunto de caracteres definidos por Pascal. Este usa el conjunto de caracteres de la computadora sobre la que está corriendo. Pero requiere que el conjunto de caracteres tenga las siguientes propiedades: cada carácter debe tener un número ordinal asociado. Los valores ordinales de los dígitos de 0 a 9 debe ser ordenado y consecutivo. Los valores ordinales de las letras debe ser ordenado pero no necesariamente consecutivo. clase 11 Prof. Moroni Las PC en su mayoría usa el conjunto de caracteres ASCII (American Standard Cade for Information Iaterchange) que tiene las propiedades requeridas.

Operaciones De comparación: <, <=, >. >=, =,<> : ' a'<'b ' Funciones de caracteres en caracteres pred('z') = 'y' succ('x') = 'y' función de caracteres en enteros ord(x) = al valor correspondiente de x en el código ASCII (ordinal) chr(x) = al carácter correspondiente en el código para el valor del argumento (carácter)

Sección de declaraciones  

Sección de declaraciones Constantes simbólicas: Un literal puede estar asociado a un identificador. y es necesario declararlo en la sección de constantes del programa. La sección de declaraciones de constantes en un programa va precedida de la palabra const Const pi = 3.14139; veces = 100; líneas = 60; letras= a , renglones = líneas Forma general Const identificador = literal identificador = identificador de constante previamente declarada

Sección de declaraciones El uso de constantes simbólicas para representar valores constantes simplifica los programas y su mantenimiento. Para que un cambio se refleje en todo el programa se necesita cambiar solamente el valor de la constante. Ubicación de la declaración de constantes en un programa: Program Prueba; const pi = 3.14159; veces = 100; líneas 60; letra = 'a'; renglones = líneas;

contador, Índice: integer; carácter: char, sueldo, capacidad: real; Sección de declaraciones Variables: datos cuyos valores pueden cambiar durante ia ejecución del programa. Tanto los literales como las constantes tienen su tipo asociado de acuerdo a su valor. En cambio las variables no tienen un tipo asociado. Pascal exige la indicación del tipo en la sección de declaraciones de variables. var contador, Índice: integer; carácter: char, sueldo, capacidad: real; Var id1, id2,…,idn: tipo de dato

Bibliografía López García, Guillermo (ed.) (2005). El ecosistema digital: Modelos de comunicación, nuevos medios y público en Internet. Valencia: Servei de Publicacions de la Universitat de València. Disp. Snyder, Ilana –compiladora (2004): Alfabetismos digitales. Comunicación,innovación y educación en la era electrónica. Málaga: Aljibe Stallman, Richard M. (2004) Software libre para una sociedad libre. Introducción de Lawrence Lessig. Curso Nivelación 2011 - Universidad Nacional de Chilecito Lic. en Sistemas - Ing. En Sistemas – Tecnicatura Univ. Desarrollo Aplic. WEB. Agustin Fonseca- Juegos de mente – Memoria, Cálculo, Memoria, Agilidad Mental. Martín Sierra, Abel Martín Álvarez, Ángel Aguirre Pérez- Aula Matemática digital 2. Ing. Gábor loerines, ing. Francisco Chaves-Micro computación Tomo 2- Nahel Ediciones. Adrián Paenza- Matemática... ¿Estás Ahí? Adrián Paenza- Matemática... ¿Estás Ahí? Episodio 2 Adrián Paenza- Matemática... ¿Estás Ahí? Episodio 3,14. Moroni Norma-Apunte de R.P.A (2003) –U.N.S.