1/30
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
caracterisiticas de fortran
Resultados rápidos y con poco error
No es orientado a objetos
No incluye sistema de gráficos
No e sinteractivo → muy cientifico
Estrictamente compilado → osea que el codigo fuente traduce x completo antes de ejecutarse
Brinda mayor rendimiento → es mas rapido
Un programa de fortran es un archivo secuencial → cada byte de informacion va uno tras el otro
Si se requiere informacion del progama de alguna parte del medio, se tendra que leer entero primero → se puede perder tiempo
constantes y variables fotran
Intege*n o real:: : son las variables enteras
N =2,4 u 8 bytes
Intrínseco: i,j,k,l,m,n
Rea o real :: l: variables de numeros reales
Intrisicamentes 4 byte pero puede ser 8 (si lo aclaro)
Tambien puede haber DOUBLE PRECISION o CUADRUPLE PRECISION
Intrinsico : A-H y O-Z
Complex o complex :: : numero complejo representado por 2 variables
Se representa como un par ordenado donde cada variable tiene la misma precision que la otra
(a,b) → a real, b imaginario
Logical o logical :: : variable booleanas → true o false
1 byte
Character*n o Character(len=n): tipo string
n= cantidad de caracteres de la palabra
Pueden sobrar bytes → agrega espacios en blanco
Como cada letra le corresponde un numero binario → se almacena ese numero binario en 1 byte (siguiendo las reglas del codigo ASCII)
Vectores, matrices y cubos fostran
Las variables pueden tener dimensiones de hasta 3, donde el vector tiene 1 dimension, matrices 2, y cubos 3
Se usa DIMENSION variable(cantidad de elementos) → donde la variable debe haber declarado el tipo anteriormente
Notar que el conteo de la cantidad de elementos comienza en 1 ∴ para acceder al elemento 1 de un vector se lo hace asi: A(1)
Variables → tienen 1 dimension y hasta 1000 componentes (depende del compilador)
A(1000)
Matrices → hasta 100x100 elementos
B(100,100)
Notar que cuando estoy usando una matriz de complejos, tener en cuenta que los complejos al ser un par ordenado ocupan mas espacio de lo normal ∴ suele ser de 50x50
entrada fortran
OPEN(n,FILE=”nombre del documento”, STATUS= “OLD”/”NEW”/”UNKNOWN”
Abre un documento (que debe estar en el escritorio con el nombre que ingresado luego de file
N → ayuda al programados a referenciar ese documento en el memento de escribir o leer su contenido (suele ser 10)
OLD → el compilador busca un documento con el nombre ingresado
Si no lo encuentra devuelve error
NEW → el compilador crea un nuevo documento con el nombre ingresado
UNKNOWN → el compilador busca el documento, si lo encuentra lo abre, si no, lo crea
READ(*,*, format, end = numero de codigo) variables
El primer * implica de donde se lee la entrada → Unidad logica
* → entrada por computadora (predeterminado)
N → documento asociado a ese número
El segundo * implica como es que se lee el documento
* → lo determina la computadora (suele ser por seperaciones por , o muchos espacios)
Format (opcional)→ determina como leer la entrada seguin un formato que le asigna el programador
Se le puede decir que se saltee espacios, o guardar variables con su tipo de variable definido
Sirve para leer tablas o para leer ciertos datos de un documento
End → cuando el compilador detecat que el documento termina, continua hacia el numero del cosigo asignado → es una linea etiquetada en el programa
La linea etiquetada suele ser CONTINUE
Variables → los datos leidos se almcenan en las variables
salida fortram
WRITE(*,*) variable o “character”
Primer * → unidad logica
Indica donde se escribe
Segundo * → formato
CLOSE(numero de la etiqueta del archivo) → cierra el archivo
operadores logicos fotran

Do fortan
Permite la repeticion finita y definida por el programados
DO i, n, salto
Progama …
END DO
Caractristicas
I → inicio
N → final
Solo permite numero del tipo INTEGER
El salto es opcional, como predeterminado es un salto 1
Puede ser negativo pero tener en cuenta que i y n debes ser enteros)
Siempre debe empezar como el valor minimo 1
Cuando la variable del incio, con el salto determinado, llega hasta el final, el programa continua despues de la sentencia end do → si no se cierra, es un DO infinito
El valor de i al terminar el loop sera de n+1 ( que tnga el valor n+1 no implica que haga 1 serie mas de la sentencia, simplemente es el valor con el que determina que ya es mayor al valor n final)
Es acumulable con otros DOs
Tiempo de corrido para una sentencia DO es N → tiempo ∝ N
Usos:
Repeticion de un calculo como la suma, productora, calculo de matrices
Hacer un contador de cuantas veces el programa entra una secuencia do
Problema con la pérdida de decimales
Ya que la memoria es finita y hay arrastre de decimales, cuando utilizamos una sentencia de repetición, ese arrastre se puede potenciar con loops largos. Un ejemplo seria la serie de Lorentz:
(imagen) → en este caso, conviene primero sumar los terminos de menor magnitud, de esta manera la variable que guarda el resultado de la suma ya tiene “guardado” la suma de decimales y la memoria de los decimales es correcta, luego cuando se suman las magnitudes mayores, no perturban las decimales.

if fortan
Permita hacer una pregunta booleana y luego operar en base a esa respuesta
IF (booleano) THEN
Programa…
ELSEIF (booleano)
Programa …
ELSE
Programa
ENDIF
Carcateristicas
En al caso que el booleano sea verdad, la sentencia continua con el programa definido luego del THEN
Si el caso no es verdadero, le sentencia IF es una sentencia que permite series, ∴ se puede definir otro if hasta el ENDIF
Tambien es acumulable → puede haber if adentro de IFs
En el caso de un encadenamiento de iFs, una vez que uno de ellos cumple con la condicion y luego de ejecutar y programa dentro de esa sentencia, el compilador luego ira direcatmente al ENDIF, no pasara por los siguientes ELSEIF
Esto se debe a que el ELSE es una alternativa al If original, es un camino paralelo, pero en el caso que entre por algun camino, no ira por el otro. En cambio en IF dentro de otros, son caminos en serie ∴ cada If seria una difusión del camino original, y al terminar esa bifurcación, podra volver al camino original
En el caso que ningun IF se cumpla, seguira con el ENDIF
Si es que se quiere terminar un If prematuramente se puede usar GOTO o RETURN
Usos:
Funciones a trozos
Usar bhaskara → se puede aislar el caso donde el determinante es negativo o se puede determinar la cantidad de raices que se devolvera segun el determinante
do while
Permite completar un ciclo de sentencias siempre y cuando la condicion sea veradera
DO WHILE(booleano)
Programa
ENDDO
Caracteristicas
El do while no tiene un incio ni final explicito ∴ para evitar un loop infinito hay que determinar una variable booleana que se pueda convertir en falsa en algun momento deseado por el programador
Usos
Series de taylor donde la variable booleana es si el error excede la cota elegida
Si los incrementos en alguna variable no son elementales si no que funciones
funciones intrinsecas fortran

Funciones sentencia
función(var1,var2, …) = expresion matepatica usando las variables
Funcion → el nombre de la funcion
Variables → indical el orden de los argumentos utilizados en la expresion matematica
Uso
Funcion discriminante : DISC(A,B,C) = B**2-4.*A*C
Funciones externas
Tipo de funcion FUNCTION nombre (variabes)
… declaracion del tipo de variables …
Nombre = ecuacion matematica
RETURN
ENDFUCNION
Es necesito definir dentro del programa donde se llama a la funcion como una fucnion externa
Es necesario declarar si la funcion y sus variables son del tipo REAL, LOGICAL, etc
Nos nombres de las variables no estan obligadas a coincidir en el momento del llamado de la funcion con el nombre con el cual fue definido
Para llamar una funcion se lo hace simplemente poniendo: nombre de la funcion (variables)
Tener en cuenta que el orden con el que se ingresa las variable sis es importante
Permiten 1 operacion
subrutinas
Permiten mas de 1 operacion con varias variables o argumentos → permite dividir un problema en muchos pasos
SUBROUTINE nombre (variables)
..declaracion del tipo de variables…
Programa..
RETURN
END SUBORUTINE
Se escriben en forma externa al programa → simil programa principal
En el listado de variables se debe contaplar los argumentos que recibe la subroutine y los argumentos que devuelve ya que son indistinguibles en el momento de declararlo
Se escriben al final del programa principal
Se las llama : CALL nombre (lista de variables)
Los argumentos se copian a variables en el espacio de memoria asignado a la subrutina y cuando esta termina se copian de nuevo a la memoria del programa. Las variables internas de la subrutina desaparecen en el momento que esta termina
Puede ser recursiva → puede llamarse a si misma
Puede o no ser usada, pero si se llama a una subrutina que no existe marca un error
Pueden tener otro lenguaje de progrmacion o provenir de una vibliote de subrutinas
python
Es un programa orientado a objetos → permite trabajar con clases, objetos, atributos y metodos
Clase → la definicion con la cual se crea un objeto
Objeto → se aplica la clase para creer estructuras de datos
Atritibutos → datos que identifican al objetos como el tamano
Metodos → cada clase de objeto tiene una funcion o metodo asociada específicamente a ese tipo de objecto. Por ejemplo si es un vector existe la funsion sum que suma todos los elementos del vector
Utiliza la indentancion para identificar codigo dentro de sentencias
Es interpretado, el programa se traduce y ejecuta el programa linea a linea → suele ser mas lento ya que si vuelve a una linea previamente traudicda, la lee devuelta
Es interactivo ya que se puede modificar sin destruir el codigo al ejecutarlo
Permite librerias o bibliotecas con herramientas graficas
No es necesario compilar el programa antes de ejecutarlo
En la hora de considerar vectores, estos tienen como primer elemento el 0
Variables basicas python
Notar que en python no es necesario guardar le tipo de dato ya que lo hace automaticamente la computadora, igualmente el programa permite transformar una variable a otro tipo de dato.
Para la transformaciones de variables estan las funciones:
type(variable) → identifica el tipo de dato
int() → convierte a un numero a su entero, no lo redondea, simplemente se queda con la parte entera del numero
float() → transforma un tipo de dato numero a uno real, si es que es un integer, los decimales seran 0, si es qu es complejo, se queda con la parte real solo
round() → para redondear un float hacia el entero mas cercano (devuelve un entero)
Tupla → par ordenado
Complejos (a+bj) → a.real devuelve la parte real y a.imag devuelve la parte imaginaria
Tambien al ser un objeto hay funciones asociadas como a.conjugate()
string() → convierte cualquier tipo de dato en una serie de characters
Tambien tiene funciones aosciadas como len(string), string.upper(), string.split(), etc
Caracteristicas
No se permite nombrar a variables con nombres intrínsecos de clases de variables → entonces no puedo llamar a una variable ‘int’ ya que es una clase de variables
No se puede usar characteres como !,@,#,$,%
La mayuscula importa en el momento de nombrar variables
La variable no pued empezar con un numero
Las variables suelen ser doble precicison intrínsecamente → es mas preciso en el arrastre de decimales
entrada y salida python
Variable = input(“texto para aclarar”)
Se utiliza para el ingreso de datos por teclado
Es necesario que en la misma sentencia de linea se declare la variable donde se va a guardar el dato ingresado
Variable = open(“nombre del archivo”, metodo de uso) y variable.close()
Se utiliza para abrir archivos
Ese archivo se almacena en una variable
Metodo de uso
“R” → para leer el archivo
readline(), realine(n), readlines(), readlines(n)
“W” → para escribir en el rachvp
archivo.write()
+ → se utiliza si el archivo ya existe y luego se escribe o se lee sobre lo prexisitente
Si es binario es “rb” o “wb”
Contenedores o variables complejas python
Son estructuras que engloban o juntan a variables basicas.
Uso
Manejar conjunto de elementos de datos
Caracteristicas
Los elementos dentro de un contenedor pueden o no estar enumerado, pueden repetirse
Son elementos son iterables → es posible de recorrer individualmente cada elemento dentro de contenedor
Son acumulables → puede haber contenedores dentro de otros
tipos de contenedores
Listas
Colección de objetos
Los objetos pueden ser de distintos datos
Tienen orden enumerados
Empiezan en 0
Pueden muutar y su contenido es modificable
[datos, datos, datos]
Acepta la suma de listas en una sola
Append, insert, count, sort, copy
list() → crea listas
range(inicion, fin, salto)
Tuplas
Listas con valores inmutables
(variable, varaible, …)
Pueden usarse como keys en un diccionario
Tienen muchas cantidad de funciones asociiadas
count(),index()
Python ausme intrinsicamente que un conjunto de datos almacenados al mismo tiempo es una tupla
Sets
Colecciones de datos no ordenados y sin indices
{varaible, variable , …}
No permiten valores repetidos
add(), remove(variable)
Frozensets
Sets inmutables
frozenset({set o lista})
Diccionarios
Permites organizar datos con relacion a una palabra clave
{key: variable o lista, …]
Pued ehaber diccionarios adentro de otros
Se puede creer una lista en base a variables usando dict(key1=’valor’, …)
dict.keys()
operadores de comparacion python

operadores logicos python

operadores d eidentidad
Verifican que los objetos ocupan la misma posición en memoria RAM, en otras palabras, se pregunta si son el mismo objeto o parte de él.

for
Realizar bucleas o loops
For variable in contenedor:
Programa
La variable toma los elementos del contenedor iterable
cual las operaciones que se especifiquen dentro del bloque del for serán aplicadas a todos los elementos del contenedor.
Si es que el contenedor tiene otro contenedor dentro, se pueden iterar al mismo tiempo
La variable es un iterador y el contenedor es un iterable
range
crea una secuencia de números enteros y se utiliza de la siguiente manera: range(comienzo,final, paso) y es muy útil en combinación con la orden for.
if python
If (condicion):
Programa
Elif (otra condicion):
Programa
Else:
Program
try except
Try:
Ejecurat un programa
Except tipo de error:
Ejecutar un programa
El programa intenta de ejecutar el codigo, si es que ocurre un error como KeyError, ValueError, ejecuta el promograma definido luego de except
while python
While condicion:
Programa
El loop se ejecuta siempre y cuando la condicion sea verdader
Si se desea terminar el loop antes → beak
Si se desea omitir uno iteracion → continue
funciones python
Las funciones deben estar cargadas antes del programa principal para que el ejecutable lo tenga definido en la hora de llamar a la funcion dentro del cosigo principal
Def nombre (variable, variable=dato):
Programa
Return variables
Donde las variables son aquellas ingresadas
En return variables se puede devolver las mismas ingresadas o nuevas
El programa principal recibira las variables devueltas
Si es que se escribe return sin variables defnidas, se devolvera todas las variables ingresadas
Tambien existen argumentos default, donde si no son ingreados variables, toman el valor ingresado por el programador
En este caso variables una argumento de posición y default es un argumento default
Son recusrivas
funcion lamdba
La función lambda es para crear funciones de una línea, y son equivalentes en todos sus aspectos a la función sentencia de Fortran.
lambda variables: expresión matemática en función de las variables que se ingresaron
Variables locales y globales
Las variables internas de una función, que serían las que no se enviaron en los argumentos del
llamado de la función y a las que se les asigna valores dentro de esta, sólo existen dentro de la
función y se las considera como locales. Mientras que las variables del programa son globales
y se pueden utilizar dentro de la función, pero cualquier modificación dentro de esta crea una
variable local, y este cambio no se propaga al programa principal.
Bibliotecas
Para poder utilizar funciones definidas en otras bibliotecas:
Import nombre de la biblioteca as ombre → importa todas la funciones de la biblioteca con un nombre definido por el programador
Import funcion from nombre de la biblioteca as anombre de la funcion abreviada→ porta solo la funcion de esa biblioteca con un nombre debefinido por el programador