La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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:

Presentaciones similares


Presentación del tema: "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:

1 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: Enteros, reales, boléanos y de carácter 2.5 Técnicas de prueba y depuración

2 Estructura de un Programa Fortran 1. Program Nombre 2. Implicit none 3. Declaración de variables Real Integer Logical Character 4. Declaraciones ejecutables Read Tareas Write 5. End Program Nombre

3 Identificadores.- Son los nombres usados para identificar programas, constantes, variables, y otras entidades en un programa. En Fortran deben empezar con una letra seguido de otras letras, dígitos, o resaltadores. No se permiten otros caracteres. Ejemplo: Validas Masa, Velocidad, Velocidad_de_la_luz, etc.. No validas R2-D2, 6pies, etc.. Variables.- Son cantidades cuyo valor se desconoce temporalmente o que puede cambiar durante la ejecución de un programa. En Fortran, el nombre de una variable identifica el contenido de una localización de almacenamiento, cuando se calcula un nuevo valor para la variable, este reemplaza el contenido anterior. Constantes.- Son cantidades que no varían durante la ejecución de un programa.. Tipos de datos :- Los valores que toman las variables y constantes se conocen como datos y pueden ser de los siguientes tipos: Enteros.- Tienen solo valores enteros. Pueden ser positivos, negativos o cero, y no contienen parte fraccionaria. Por ejemplo 5, 320, -25, etc. Se recomienda no utilizar enteros para hacer cálculos, excepto cuando se utilizan como exponentes o contadores. Reales.- Tienen una parte fraccionaria. Por lo tanto, es necesario usar el punto decimal, aun que la parte fraccionaria sea cero o no se escriba. Algunas veces conveniente escribirlos en forma exponencial Por ejemplo: 10., -999.9, 1.0E-3, 123.45E20, 0.12E+1, etc. Boléanos.- Pueden ser constantes o variables logicas que tienen dos posibilidades:.TRUE. o.FALSE. Carácter.- Son constantes o variables que contienen cadenas de caracteres alfanumericos. Por ejemplo: ‘Esta es una prueba!’, ‘ ‘, “3.141593”, etc.

4 Operaciones aritméticas básicas Operador Significado Ejemplo ** Exponenciación 2 ** 4 * Multiplicación 2 * A / División B / Delta + Suma A + 6.2 - Resta 4.0 - 2.1

5 Aritmética mixta y Exponenciación La aritmética mixta debe evitarse en cuanto sea posible ya que puede arrojar resultados inesperados. Sin embargo, para el caso de la Exponenciación, es útil manejarla. Ejemplo R = y ** n Donde y es Real, y n es Integer Esta operación indica que y es un factor que se multiplica n veces y esto es lo que hace la computadora cuando ejecuta esta expresión Ejemplo R = y ** x Donde y es Real y, x es Real Esta operación indica que y es un factor que se multiplica x veces Sin embargo, para el caso x = 2.5. No es físicamente posible hacerlo. Por lo que es necesario, hacer el calculo de una manera indirecta, usando las propiedades de los logaritmos. Elevar un número negativo a una potencia entera es una operación legal (-2.0) ** 2 = 4 Elevar un número negativo a una potencia real es una operación ilegal (-2.0) ** 2.0 = run-time error

6 Aritmética Entera Operaciones con datos enteros, siempre arroja resultados enteros, siendo el caso mas critico el de la división Ejemplos 1 / 4 = 0 3 / 4 = 0 5 / 4 = 1 9 / 4 = 2 Por lo que no es recomendable usarla, para cálculos ordinarios, sino solo para Exponenciación y como Contador. Aritmética Real Operaciones con datos reales, siempre arroja resultados reales, que son los que esencialmente esperamos. Ejemplos 1. / 4. = 0.25 3. / 4. = 0.75 5. / 4. = 1.25 9. / 4. = 2.25 1. / 3. = 0.3333333 Error de Redondeo Por lo que es recomendable usarla, para todos los cálculos ordinarios, tomando en cuenta posibles errores de redondeo.

7 Aritmética mixta Cuando se combina datos mixtos, la regla general es que los datos de tipo simple son convertidos en datos de tipo mas fuerte. Para el caso de datos enteros y reales, los enteros son de tipo mas simple que los reales. Ejemplo 10 / 3.0 = 3.333333 4.0 / 5 = 0.8 1.0 + 1 = 2.0 2 * 2.0 = 4.0 2 ** (-2) = 0 2. ** (-2) = 0.25 La aritmética mixta esta fuertemente influenciada por la jerarquía en que se realizan las operaciones.

8 Jerarquía de Operaciones 1. El contenido de los paréntesis se evalúa primero, empezando del más anidado hacia fuera. 2. Todos los exponentes son evaluados, de derecha a izquierda. 3. Todas las multiplicaciones y divisiones son evaluadas, empezando de izquierda a derecha. 4. Todas las sumas y restas son evaluadas, empezando de izquierda a derecha. 5. Todos los operadores relacionales son evaluados, de izquierda a derecha 6. Todos los.NOT. son evaluados. 7. Todos los.AND. son evaluados de izquierda a derecha. 8. Todos los.OR. son evaluados de izquierda a derecha. 9. Todos los.EQV. y.NEQV. son evaluados de izquierda a derecha.

9 Ejemplos de Jerarquía de Operaciones Si A= 2, B=3, C=5 (Reales) I=2, J=3 (Enteros) Evaluar A * B + C = 11.0 A * ( B + C ) = 16.0 A / I / J = 0.33333 B / C * A = 1.2 B / ( C * A ) = 0.3 I / J / A = 0.0 A * B ** I / A ** J * 2 = 4.5 C + ( B / A ) ** 3 / B * 2. = 7.25 -B ** A * C = - 45 J / ( I / J ) = división por cero A ** B ** I = 512.0

10 Operadores Lógicos de Relación Operador Representa Estilo Nuevo Estilo Viejo <.LT. Menor que (less than) < =.LE. Menor que o igual a (less than o equal to) = =.EQ. Igual a (equal to) / =.NE. Diferente a (not equal to) >.GT. Mayor que (greater than) > =.GE. Mayor que o igual a (greater than o equal to)

11 Ejemplo de Operadores Lógicos de relación Operación Resultado 3 < 4.True. 3 <= 4.True. 3 = = 4.False. 3 > 4.False. 7 + 3 < 2 + 11.True. 4 = = 4..True. ‘A’ < ‘B’.True. 15 + 5 < = 4*10.True. ‘Papeles’ < ‘ Papel’.False. ‘Pepe’ < ‘Peseta’.True.

12 Operadores Lógicos Básicos Operador Definición l 1.AND.l 2 El resultado es TRUE si l 1 y l 2 son TRUE l 1.OR.l 2 El resultado es TRUE si l 1 o l 2 o ambas son TRUE l 1.EQV.l 2 El resultado es TRUE si l 1 es lo mismo que l 2 ambas TRUE o ambas FALSE l 1.NEQV.l 2 El resultado es TRUE si l 1 no es lo mismo l 2 o sea una es TRUE y la otra FALSE o viceversa..NOT.l 1 El resultado es TRUE si l 1 es FALSE, y FALSE si l 1 es TRUE l 1.op. l 2 Donde l 1 y l 2 Son expresiones lógicas, variables, o constantes, y.op. es un operador lógico básico.

13 Ejemplo de Operadores Lógicos Básicos Si a=-10.0, b=0.1, c=2.1 (Reales) L1 =.True., L2 =.False., L3 =.False. (Lógicos) Determinar si las siguientes expresiones son legales y el resultado a > b.or. b > c legal.False. (.not. a).or. L1 ilegal a no es var. lógica L1.and..not. L2 legal.True. a < b.eqv. b < c legal.True. L1.or. L2.and. L3 legal.True. L1.or. (L2.and. L3) legal.True. (L1.or. L2).and. L3 legal.False. a.or. b.and. L1 ilegal a y b no son var. lógicas

14 Compiladores Un compilador es un programa que traduce los programas fuente escritos en lenguajes de alto nivel -C, Fortran- a lenguaje maquina Programa Fuente Compilador Programa Objeto Editor Montador (Enlazador o linker) Programa ejecutable en el lenguaje maquina Fases para hacer ejecutable un programa Fortran

15 Depuración de programas (debbugging) Depuración es el proceso de búsqueda y eliminación de errores en un programa. Los errores en los programas son de tres tipos. Compilación.- Son normalmente errores de sintaxis. Son los mas fáciles de detectar y corregir ya que los compiladores comerciales generan mensajes de error que indican el tipo de error y la línea donde ocurre. Es necesario corregirlos antes de continuar. P.E. Paréntesis desbalanceados. Ejecución ( run time ).- Se originan por instrucciones Matemáticas indefinidas o que violan las reglas del lenguaje. P.E. Calcular la raíz cuadrada o el logaritmo de un numero negativo. Lógica.- Son fallas en la composición y organización del programa fuente. P.E. Ciclos sin fin.

16 Compilación y Enlazado de un programa Fortran Program raiz Implicit none Real :: a,b,c,Disc,x1,x2 Print*,'Introducir a, b, c' Read*,a,b,c Disc = b**2 - 4*a*c If (Disc < 0) Stop x1 = (-b + Sqrt (Disc))/(2*a) x2 = (-b - Sqrt (Disc))/(2*a) Write (*, *) x1,x2 End Program raiz --------------------Configuration: E_Cuadratica - Win32 Debug-------------------- Linking... E_Cuadratica.exe - 0 error(s), 0 warning(s) --------------------Configuration: E_Cuadratica - Win32 Debug-------------------- Compiling Fortran... C:\clases\Programación\Fortran\E_Cuadratica.f90 E_Cuadratica.obj - 0 error(s), 0 warning(s)

17 Ejemplo Resolver la ecuación de segundo grado: a x 2 + b x + c = 0 para raíces reales Análisis a x 2 + b x + c = 0 Las raíces de la ecuación son: La naturaleza de las raíces depende del valor del discriminante Discriminante < b 2 - 4ac Tenemos raíces imaginarias Especificación de variables Variables de entrada: Real a, b, c Variables adicionales: Real Discriminante Variables de salida: Real x 1, x 2

18 .False..True. D < 0 a, b, c inicio D = b 2 - 4 a c La ecuación tiene raíces reales x 1 = ( - b +  D ) / 2 a x 2 = ( - b -  D ) / 2 a x 1, x 2 fin Seudocodigo Inicio Leer a, b, c Discriminante  b 2 - 4ac Si Discriminante < 0 Parar Imprimir la ecuación tiene raíces reales x 1  (- b + Sqrt (Discriminante) ) / 2a x 2  (- b - Sqrt (Discriminante) ) / 2a Imprimir x 1, x 2 Fin Diagrama de Flujo


Descargar ppt "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:"

Presentaciones similares


Anuncios Google