COMPUTACION 2009 Clase 1. 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)

Slides:



Advertisements
Presentaciones similares
IBD Curso 2007 Clase 2.
Advertisements

DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
Algoritmos y Programas
Programación de Computadores
Programación de Computadores
PROGRAMACION ESTRUCTURADA
Ecuaciones de Valor Absoluto y Desigualdades
Introducción a los Algoritmos
Programación en Pascal
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
TEORÍA DE CONJUNTOS.
Resolución de Problemas Algoritmos y Programación
Metodología de la Programación
Programación I Teoría I
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
INFORMÁTICA PROGRAMACIÓN.
Técnico en programación de Software
Ecuaciones Cuadráticas
Ecuaciones y Resolución de Ecuaciones Lineales
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
VARIABLES Y CONSTANTES
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Expresiones Algebraicas
Objetos de un programa Datos: Se denomina dato a toda aquella información característica de una entidad y que es susceptible de tratamiento en un programa.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
Metodología para la Construcción de Programas
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.
COMPUTACION 2009 C lase 11 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Paradigma de programación estructurada  La programación estructurada trata.
C lase 10 COMPUTACION /17/2014Computacion - Fac. Ingeniería2  Ademas de los ya vistos (tipos simples), puede usarse como parámetros variables.
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
ALGORITMOS Y ESTRUCTURA DE DATOS
Tema 6. Conceptos básicos de programación
INTRODUCCIÓN A LA COMPUTACIÓN 12va Semana – 19va Sesión Miércoles 18 de Mayo del 2005 Juan José Montero Román
Fundamentos de Programación
Programación de Computadores
Sesión 6 Sentencias de Repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
EXPONENTES Y RADICALES
Academia de Informática
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.
COMPUTACION 2009 Clase 2.
Programación I Universidad Nacional de Luján
Agosto 2010Programación I - Tipo de Datos1 Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Universidad Nacional de Luján Licenciatura en Sistemas.
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Programación en Pascal
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
75.40 Algoritmos y Programación I
Teoría – Alejandro Gonzalez
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
APRENDIZ: SANDRA L. CAICEDO C. ORDEN: 20194
Definir un vector Forma general Variable=[tipo]*tamaño Tipo: es el valor inicial con el cual quedarán llenas todas las posiciones creadas del vector. Tamaño:
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Vectores y Matrices.
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.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
UNIDAD 7.
 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.
Elaboración de algoritmos usando lógica de programación
Presente un cuestionario con los aspectos mas importantes sobre los
Lic. Carla Aguirre Montalvo
Programación de Computadores
EL TIPO DE DATO LOGICO y constantes.
ELEMENTOS BÁSICOS DE PROGRAMACIÓN EN C# Mtro. José David Uc Salas
Transcripción de la presentación:

COMPUTACION 2009 Clase 1

9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)  1 clase análisis y diseño (1 hora)  2 parciales (1 ero escrito; el 2 do en computadora y multiple-choice para redes y SO)

Horarios de clases teóricas 1.Miércoles 8.30 a hs 2.Miércoles 11 a 13 hs. 3.Miércoles de 13 a 15 hs. 9/17/2014 Computación - Fac. Ingeniería - UNMDP3

9/17/2014 Computación - Fac. Ingeniería - UNMDP4 Clases prácticas CLASES DE LABORATORIO: Comienzan el jueves 12/03 CLASES TEORICO PRACTICA: Comienzan el jueves 19/03

9/17/2014 Computación - Fac. Ingeniería - UNMDP5 HORALUNESMARTESMIÉRCOLESJUEVESVIERNES 8:00 - 8:30 Laboratorio 8:30 - 9:00 TURNO 2 9:00 - 9:30( 8 a 11) Laboratorio 9: :00Cirimelo TURNO 4 10: :30Gelon (9 a12) Laboratorio 10: :00Zapirain Alvarez TURNO 6 11: :30 Teorico práctico Arroyo - Mateos(10 a 13) 11: :00AULA 13 DistéfanoArona 12: :30 Teorico práctico Pasetto 12: :00 AULA 8 13: :30 Teorico práctico 13: :00 AULAS: 10 y Laboratorio 14: :30 Laboratorio Clase 14: :00 TURNO 7TURNO 1Teorico/práctica 15: :30 (14 a 17) 14 a 16 hs. 15: :00 Laboratorio EvansAznarMoler 16: :30 Teorico práctico TURNO 5 MeijomeLizarralde 16: :00 AULA Laboratorio(15.30 a 18.30) 17: :30 Laboratorio Giordano Teorico práctico 17: :00 TURNO 3 Marsiglio AULA Laboratorio 18: :30 (17 a 20) 18: :00 Frassoni Teorico práctico 19: :30RuizAULA 10 19: :00 Horarios de las clases practicas. Tiene que elegir: 1 turno laboratorio(amarillo) 1 turno teorico/pract (celeste) Horarios de las clases practicas. Tiene que elegir: 1 turno laboratorio(amarillo) 1 turno teorico/pract (celeste) Si le ha quedado algún tema flojo o quiere reforzar su conocimiento, dispone de una clase globalizadora el viernes

9/17/2014 Computación - Fac. Ingeniería - UNMDP6 Páginas WEB (novedades, información y materiales) utacion (software)

9/17/2014 Computación - Fac. Ingeniería - UNMDP7 Temas de la clase 1: Introducción al lenguaje Pascal  Algoritmo  programa  Acciones=sentencias ejecutables  Estructura de un programa Pascal  Tipos de datos  Sentencias de Asignación  Sentencias de Entrada /Salida  Prueba de escritorio

9/17/2014 Computación - Fac. Ingeniería - UNMDP8 Problemas Sumar numeros enteros Encontrar las raices de una ecuación cuadrática Invertir una matriz Resolver un sistema de ecuaciones diferenciales Traducir un texto COMO se resuelven estos problemas en una computadora?

Encontrar una raíz de la siguiente ecuación cuadrática : x x +4 = 0 Problema

ALGORITMO RAIZ1 1.Ingresar los valores de los coeficientes de la ecuación 2.Calcular el discriminante 3.Calcular una raíz 4.Fin de algoritmo RAIZ1 1.Ingresar los valores 1, -4 y 4 2.Discriminante  3.Raiz  4.Fin del algoritmo RAIZ1 SOLUCION

9/17/2014 Computación - Fac. Ingeniería - UNMDP11 ALGORITMO Es un procedimiento con las siguientes características :  Posee una secuencia finita y ordenada de acciones primitivas.  Las acciones primitivas son no ambiguas  La ejecución de la secuencia de acciones primitivas, en el orden dado, conduce a la solución del problema en un tiempo finito.

9/17/2014 Computación - Fac. Ingeniería - UNMDP12 Contexto en el que se diseña un algoritmo:  PROCESADOR: es toda entidad capaz de “entender” ordenes elementales y ejecutarlas.  ACCIONES PRIMITIVAS: órdenes elementales entendidas por el procesador que se emplea.  ACCIONES NO PRIMITIVAS: son órdenes no elementales de una abstracción mayor a las órdenes elementales. Cada una de ellas puede ser dividida en otras acciones (primitivas o no).

Dados 3 números enteros (cualesquiera), se desea detectar los que son positivos y escribirlos. Problema

ALGORITMO DECISION 1.Ingresar a,b,c 2.Si a es positivo entonces escribir a 3.Si b es positivo entonces escribir b 4.Si c es positivo entonces escribir c 5. Fin del algoritmo DECISION Solución 1.Ingresar a,b,c 2.Si a>0 entonces escribir a 3.Si b>0 entonces escribir b 4.Si c>0 entonces escribir c 5. Fin del algoritmo DECISION

Dada una cantidad variable de números enteros (cualesquiera), se desea escribir aquellos que sean positivos y aquellos que no lo sean, aclarando cada caso Dada una cantidad variable de números enteros (cualesquiera), se desea escribir aquellos que sean positivos y aquellos que no lo sean, aclarando cada caso Problema

ALGORITMO REPETIR 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3. Ingresar a 4. Si a>0 entonces escribir a,’es positivo’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3. Ingresar a 4. Si a>0 entonces escribir a,’es positivo’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR Solución

Ejecución de un algoritmo ENTRADA: cantidad  4 {Ingresar cantidad} a  6 6 es positivo {porque 6 es mayor que cero} a  es negativo o cero {porque -9 es menor que cero} a  0 0 es negativo o cero {porque 0 es cero} a  2 2 es positivo {porque 2 es mayor que cero} 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3.Ingresar a 4.Si a>0 entonces escribir a, ’ es positivo ’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR

9/17/2014 Computación - Fac. Ingeniería - UNMDP18 La ejecución de un algoritmo es una secuencia operaciones calculadas a partir de las acciones primitivas del algoritmo. La ejecución de un algoritmo para una entrada específica de datos constituye la resolución de un problema particular. Esos datos son propios del problema. Ejecución de un algoritmo

ALGORITMO PROGRAMA Entrada de DATOS Resultados Ciclo elemental

Estructura de un Programa Pascal

PROGRAM Identificador Encabezamiento (USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Bloque

PROGRAM Identificador Encabezamiento ( USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Bloque

PROGRAM Identificador ( USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Para trabajar con estas secciones de declaracion y definicion de datos necesitamos conocer los TIPOS DE DATOS

Entero (integer) Numerico Real (real) Estandar Simples Carácter (char, y el caso especial string) Lógico (boolean) Definidos por Subrango el programador Enumeración Arreglos (array) Estructurados Registros (record) Conjuntos (set) Archivos (file) Puntero TIPOS DE DATOS Un tipo de dato define el conjunto de valores que pueden ser tomados por una variable y las operaciones que pueden realizarse con ella

Datos Simples Estándar (Free Pascal)  Numérico  Lógico (*) (BOOLEAN ) – Dos valores: verdadero (TRUE) / falso (FALSE) (*) Ordinales Entero (*) (INTEGER) [LONGINT/BYTE/SHORTINT/WORD/ CARDINAL/INT64]  Carácter (*) (CHAR) - Un único carácter – Comillas simples Real (REAL) [SINGLE/DOUBLE/EXTENDED]

Tipo entero (integer) 9/17/2014 Computación - Fac. Ingeniería - UNMDP26 Tipos Rango numérico Bytes (Bits) Byte (8) Shortint (8) Smallint (16) Integer (16) Longint (32) Int (64) Word (16) Longword (32) QWord (64) Cardinal (32)

Tipo real (real) 9/17/2014 Computación - Fac. Ingeniería - UNMDP27 Tipos Rango real Decimales significativos Bytes (Bits) Single (32) Real (64) Double (64) Extended (80) Comp (64)

9/17/2014 Computación - Fac. Ingeniería - UNMDP28 Sintaxis CONST Identificador de constante=valor de la constante; Ejemplo: CONST Anio=2008; Altura=1.68; Siglo=21; Ejemplo: CONST Anio=2008; Altura=1.68; Siglo=21; Definición de constantes No olvidar

9/17/2014 Computación - Fac. Ingeniería - UNMDP29 Declaración de variables Sintaxis: VAR Identificador de variable:identificador de tipo; Ejemplo: VAR dividendo, divisor, cociente,dcm: integer; resultado: real; sigue: boolean; Ejemplo: VAR dividendo, divisor, cociente,dcm: integer; resultado: real; sigue: boolean; No olvidar

9/17/2014 Computación - Fac. Ingeniería - UNMDP30 Observaciones La declaración de variables es obligatoria. Cada vez que se declara una variable, se reserva espacio en la memoria para su almacenamiento.

Sentencias Ejecutables Estructuradas (o Compuestas) son construcciones compuestas de otras sentencias que deben ser ejecutadas en secuencia (enunciados compuestos), en forma condicional (enunciados condicionales) o en forma reiterada (enunciados de repetición). Estructuradas (o Compuestas) son construcciones compuestas de otras sentencias que deben ser ejecutadas en secuencia (enunciados compuestos), en forma condicional (enunciados condicionales) o en forma reiterada (enunciados de repetición). Simples Ninguna de sus partes puede a su vez considerarse como otra sentencia. Simples Ninguna de sus partes puede a su vez considerarse como otra sentencia.

9/17/2014 Computación - Fac. Ingeniería - UNMDP32 Sentencias simples Asignación Lectura (entrada de datos) Escritura (escritura de resultados)

Sentencia de asignación La acción es la provocada por el símbolo . Sirve para reemplazar el valor actual de una variable por un nuevo valor especificado por una expresión. Sentencia de asignación La acción es la provocada por el símbolo . Sirve para reemplazar el valor actual de una variable por un nuevo valor especificado por una expresión. Sintaxis: Identificador de variable:=expresión;

ACCIONES DEL ALGORTIMO DE EUCLIDES mcd  divisor dividendo  divisor divisor  resto PASCAL mcd := divisor; dividendo:= divisor; divisor := resto ; Ejemplos de asignación

Sentencia de entrada La acción que se provoca es la lectura de datos. Se puede usar read o readln. Sentencia de entrada La acción que se provoca es la lectura de datos. Se puede usar read o readln. Sintaxis Read(v1,v2,...,vn); Readln(v1,v2,..vn); Ejemplos: Read(dividendo); Readln(dividendo,divisor) Readln(altura);

Sintaxis: write(e1,e2,...,en); writeln(e1,e2,..,en); Sentencia de salida La acción que se provoca es la escritura de resultados. Se puede usar write o writeln Sentencia de salida La acción que se provoca es la escritura de resultados. Se puede usar write o writeln Ejemplos: write(mcd); write(‘Hoy comienza el otoño' ); write('La superficie es =',superficie); writeln('La raiz cuadrada de es =',sqrt (34.56)); writeln(‘ab’);

program EJEM1; CONST A=5; VAR B:integer; C,D : real; BEGIN D:= 2; write('Ingrese un numero entero:'); readln(B); C:=B*A / D; writeln('El producto de ', A,' por ', B,' dividido’, D, ‘es:', C); END. ¿Qué es una prueba de escritorio? No olvidar

Prueba de escritorio: Lote de Prueba: 8 ( para la variable B, la cual es leída ) A = 5DBC Salida 2 8 El producto de 5 por 8 dividido 2 es: 20 D:= 2; write('Ingrese un numero entero:'); readln(B); C:=B*A / D; writeln('El producto de ', A,' por ', B,'dividido’, D, ‘es:', C); 20

Prueba de escritorio 9/17/2014 Computación - Fac. Ingeniería - UNMDP39  Una prueba de escritorio es la ejecución de un programa a partir de un ingreso de datos específico.  Se escribe el nombre de todas las variables y expresiones lógicas y se muestra sus valores a medida que se ejecutan las sentencias del programa donde se encuentran, comenzando por la que sigue a BEGIN y terminando con la que precede a END. Esto es, se sigue una secuencia.

Prueba de escritorio 9/17/2014 Computación - Fac. Ingeniería - UNMDP40  Si las variables que contienen el resultado muestran las respuestas correctas, se presume que el programa resuelve el problema. Es muy conveniente hacer varias corridas con diversos juegos de datos a fin de verificar que SIEMPRE da la respuesta correcta.  Free Pascal puede hacer una prueba de escritorio con el depurador (o debugger)