Post on 21-Jun-2020
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
InformaticaTipos de Datos
Operaciones Basicas
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial
curso 2017-2018
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 1/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 2/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 3/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Algoritmos y Programas
Problema
Resolver la ecuacion:
ax2 + bx + c = 0
Algoritmo
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 4/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Algoritmos y Programas
Problema
Resolver la ecuacion:
ax2 + bx + c = 0
Programa
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 5/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Estructura general de un programa
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 6/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Estructura general de un programa
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 7/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 8/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Tipos de Datos
Tipos de datos
Variable: i
Constante: n
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 9/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Tipos de Datos
Caracterısticas de un tipo de dato
Identificador de tipo
integer :: i
Rango valido de valores
{..., -3, -2, -1, 0, 1, 2, 3, ...}
Forma de denotar esos valores
i = 10
Conjunto de operaciones validas
i + j
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 10/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Tipos de Datos
Tipos de datos
Datos de tipo intrınseco
Datos numericosintegerrealcomplex
Datos no numericosDatos logicos: logicalDatos caracter: character
Datos de tipo derivado
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 11/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Reglas basicas de un dato
Declaracion
Todo dato debe ser declarado
Identificador de tipo :: nombre
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 12/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Identificador (nombre) de un dato
No debe exceder de 31 caracteres
No distingue mayusculas y minusculas
Evitar palabras ”clave”de Fortran
allocate write call max
matmul open do · · ·
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 13/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Reglas basicas de un dato
Definicion
Todo dato debe tener un valor antes de ser utilizado
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 14/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Reglas basicas de un dato
Definicion
Todo dato debe tener un valor antes de ser utilizado
Inicializacion: asignacion del valor en la misma lınea dedeclaracion
integer :: n = 10
real, parameter :: pi = 3.14159
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 15/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 16/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Enteros
Declaracion
integer :: i
integer :: j, k, numero
Definicion
i = 2
j = -1
k = 0
numero = -999999
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 17/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Reales
Declaracion
Simple Precision
4 bytes en memoria
6 decimales significativos
real :: x
real*4 :: x
real(4) :: x
real(kind=4) :: x
Declaracion
Doble Precision
8 bytes en memoria
16 decimales significativos
real*8 :: x
real(8) :: x
real(kind=8) :: x
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 18/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Reales
Definicion
Simple Precision
Modo Decimal
Modo exponencial
x = 20.508
x = 20.508e0
x = 205.08e-1
x = 0.20508e+2
Definicion
Doble Precision
Modo exponencial
x = 2d0
x = 2.0d0
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 19/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Complejos
Declaracioncomplex :: z
complex(8) :: z1
Definicionz = (2.0,0.0)
z1 = (2d0, 0d0)
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 20/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Parametros
Parametros (o constantes)
Dato cuyo valor no puede variar a lo largo de la ejecuciondel programa.
Se deben inicializar en la misma lınea de declaracion.
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 21/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Definicion
Importante
El valor asignado a un dato debe ser acorde con su tipo
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 22/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Definicion
El valor asignado a un dato debe ser acorde con esu tipo
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 23/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 24/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos numericos. Operaciones
operando1 operador operando2
Operandos numericos
Expresiones aritmeticas
x * 5.5
x + y
Expresiones relacionales
x <= 6.8
x == y
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 25/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
Operadores aritmeticos
+ Suma
− Resta
∗ Producto
/ Cociente
∗∗ Potenciacion
Orden en ausencia de Parentesis
2 + 3 * 2 = ????
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 26/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
Operadores aritmeticos
+ Suma
− Resta
∗ Producto
/ Cociente
∗∗ Potenciacion
Orden en ausencia de Parentesis
2 + 3 * 2 = 10
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 27/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
Operadores aritmeticos
+ Suma
− Resta
∗ Producto
/ Cociente
∗∗ Potenciacion
Orden en ausencia de Parentesis
2 + 3 * 2 = 8
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 28/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
2 + 4*1 - 2**2 + 8 = 10
Orden en ausencia de Parentesis
1o Potenciacion
2o Producto y Cociente
3o Suma y Resta
El orden en el que se realizan las operaciones de igualprecedencia es de izquierda a derecha.
a*b/c equivale a (a*b)/c
Excepcion: la potenciacion
3**2**2 equivale a 3**(2**2) 81
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 29/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
2 + 4 ∗ 1 − 2 ∗ ∗(2 + 8) = −1018
Orden con Parentesis
1o Parentesis
2o Potenciacion
3o Producto y Cociente
4o Suma y Resta
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 30/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
Tipo del resultado
Cuando se opera con datos numericos de distinto tipo ykind,“el resultado es del tipo con mayor rango de losinvolucrados en la operacion”
(a + - * /) b
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 31/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 1
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 32/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas
Tipo del resultado
Cuando se opera con datos numericos de distinto tipo ykind,“el resultado es del tipo con mayor rango de losinvolucrados en la operacion”
Antes de evaluar la expresion se convierten los operandosal tipo mas fuerte.
Excepto cuando se eleva un dato de tipo real ocomplex a una potencia de tipo integer, en cuyocaso no se convierte el exponente.
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 33/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 2
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 34/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 02
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 35/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 2
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 36/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 2
Importante
Siempre que el exponente seaentero, su valor debe darse comoentero.
No se puede elevar un numeronegativo a un real.
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 37/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones aritmeticas. Ejemplo 3
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 38/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones relacionales
Expresiones relacionales
Se utilizan para comparardatos numericos entre sı o conexpresiones aritmeticas.
Operadores relacionales
> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que
== Igual que
/= Distinto que
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 39/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones relacionales
Expresiones relacionales
El resultado de evaluar una expresion relacional es de tipological
Solo puede tomar uno de los valores .true. o .false.
Generalmente estas expresiones se utilizan en lasestructuras de control que gobiernan el flujo de unprograma.
Si al menos uno de los operandos es de tipo complex losunicos operadores relacionales disponibles son == y /=
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 40/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones relacionales. Ejemplo 4
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 41/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones relacionales. Ejemplo 4
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 42/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 43/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos de tipo logico
Declaracion
logical :: flag
Definicionflag = .true.
flag = .false.
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 44/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos tipo logico. Operaciones
Expresiones relacionales
Con 1 operando: operador operando
.not. flag
Con 2 operandos: operando1 operador operando2
flag1 .and. flag2
flag1 .or. flag2
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 45/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Expresiones relacionales. Ejemplo 5
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 46/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Indice
1 Introduccion
2 Tipos de datos
3 Datos numericos
4 Operaciones basicas con datos numericos
5 Datos logicos
6 Datos caracter
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 47/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos de tipo caracter
Declaracion
character :: nombre1
character(10) :: nombre2
character(len=10) :: nombre3
Definicion
nombre1 = ’A’
nombre2 = ’ aaa AAAA’
nombre3 = ’Me duermo en esta clase’
Valor asignado
nombre1 ←− ’A’
nombre2 ←− ’ aaa AAAA ’
nombre3 ←− ’Me duermo ’
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 48/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos caracter. Operaciones
Concatenacion //
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 49/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos caracter. Operaciones
Concatenacion //
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 50/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos caracter. Operaciones
Extraccion //
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 51/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Datos caracter. Operaciones
Extraccion //
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 52/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Estructura basica de un programa
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 53/54
Introduccion Tipos de datos Datos numericos Operaciones basicas Datos logicos Datos caracter
Estructura basica de un programa
Dpto. Matematica Aplicada a la Ingenierıa Aeroespacial — Informatica 54/54