jueves, 28 de marzo de 2019
lunes, 11 de marzo de 2019
Intervalos
Intervalos
·
Los lenguajes funcionales puros tienen la
propiedad de transparencia referencial
·
Como consecuencia, en programación funcional,
una función siempre devuelve el mismo valor cuando se le llama con los mismos
parámetros
·
Las funciones no modifican ningún estado, no
acceden a ninguna variable ni objeto global y modifican su valor
Diferencia entre declaración y modificación de variables:
·
En programación funcional pura una vez declarada
una variable no se puede modificar su valor
·
En algunos lenguajes de programación (como
Scala) este concepto se refuerza definiendo la variable como inmutable (con la
directiva val).
·
En programación imperativa es habitual modificar
el valor de una variable en distintos pasos de ejecución
Funciones
Un problema
complejo se puede dividir en pequeños subproblemas más sencillos. Estos
subproblemas se conocen como “Módulos” y su complementación en un lenguaje se
llama subprograma (procedimientos y funciones).
Un subprograma
realiza las mismas acciones que un programa, sin embargo, un subprograma lo
utiliza solamente un programa para un propósito específico.
Un subprograma
recibe datos de un programa y le devuelve resultados (el programa “llama” o
“invoca” al subprograma, este ejecuta una tarea específica y devuelve el
“control” al programa que lo llamo).
Función: Una
función en matemáticas, es una operación que toma un o más valores (argumentos)
y devuelve un resultado (valor de la función para los argumentos dados). Por
ejemplo:
F(X) = X / (1+X2)
Donde:
F………….. Nombre de
la función
X…………. Es el
argumento (también conocido como parámetro formal)
Definición de
funciones: Una definición de función se presenta de la siguiente manera:
Función
nombre_funcion (p1, p2,…, pn)
Inicio
Bloque de
instrucciones
Fin
Donde:
Función…………… Es la
palabra clave que nos indica una definición de función.
Nombre_funcion…. Es
el identificador con el cual se reconoce a la función en el cuerpo del
Algoritmo
principal.
P1, p2,…, pn……… Es
el grupo de parámetros que define a la función.
Llamado a una
función
Cuando definimos
una función solo le indicamos al algoritmo que esta función existe, pero una
definición de función no implica la realización de las instrucciones que la
constituyen. Para hacer uso de una función, el algoritmo principal la debe
llamar. Por ejemplo:
Función F(X)
Inicio
F = X / (1 + X^2)
Fin
Inicio
Imprimir “Este es
el algoritmo principal”
Leer N
R = F(N) llamado de
la función
Imprimir “El
resultado de la función es:”, R
Fin
2.3 intervalos
2.4 Operadores
Haskell soporta
cinco operadores matemáticos básicos:
§ suma (+)
§ resta (-)
§ multiplicación (*)
§ división (/)
§ exponenciación ( ^)
El circunflejo que
representa la exponenciación en la mayoría de los teclados saldrá usando la
combinación de teclas “alt gr”+” {”, será necesario pulsar la barra espaciadora
después de eso para que aparezca el circunflejo.
Veamos algunos
ejemplos de funciones que usen estos operadores.
Como vemos en las
funciones que hemos usado solo les enviamos un único parámetro, pero veamos un
ejemplo en el que mandaríamos dos parámetros a la función
Observe que he
tenido que cargar de nuevo el archivo de ejemplo en el entorno de desarrollo,
el hecho de que guarde los cambios en el bloc de notas no hace que los cambios
se reflejen en el entorno.
Para mandar dos
parámetros observe que los he colocado entre paréntesis y separados por comas.
Tipos de datos
El tipo de
datos
En lenguajes de
programación un tipo de dato es un atributo de una parte de los datos que
indica al ordenador (y/o al programador) algo sobre la clase de datos sobre los
que se va a procesar.
En un sentido
amplio, un tipo de datos define un conjunto de valores y las operaciones sobre
estos valores. Casi todos los lenguajes de programación explícitamente incluyen
la notación del tipo de datos, aunque lenguajes diferentes pueden usar
terminología diferente. La mayor parte de los lenguajes de programación
permiten al programador definir tipos de datos adicionales, normalmente
combinando múltiples elementos de otros tipos y definiendo las operaciones del
nuevo tipo de dato. Por ejemplo, un programador puede crear un nuevo tipo de
dato llamado "Persona" que especifica que el dato interpretado como
Persona incluirá un nombre y una fecha de nacimiento.
Un tipo de dato
entero en computación es un tipo de dato que puede representar un subconjunto
finito de los números enteros. El número mayor que puede representar depende
del tamaño del espacio usado por el dato y la posibilidad (o no) de representar
números negativos. Los tipos de dato entero disponibles y su tamaño dependen
del lenguaje de programación usado así como la arquitectura en cuestión. Por
ejemplo, si para almacenar un número entero disponemos de 4 bytes de memoria
tememos que: 4 Bytes = 4x8 = 32 bits Con 32 bits se pueden representar
232=4294967296 valores: Sólo positivos: del 0 al 4294967295 Positivos y
negativos: del -2147483648 al 2147483647
Tipos de datos en
coma flotante Se usan para representar números con partes fraccionarias. Hay
dos tipos de coma flotante: float y double. El primero reserva almacenamiento
para un número de precisión simple de 4 bytes y el segundo lo hace para un
numero de precisión doble de 8 bytes.Tipo:float4 Bytes (32 bits) double8 Bytes
(64 bits)
Tipo de dato
carácter (Char) Es cualquier signo tipográfico, puede ser una letra, un número,
un signo de puntuación o un espacio. Este término se usa mucho en computación.
Un valor de tipo carácter es cualquier carácter que se encuentre dentro del
conjunto ASCII ampliado, el cual está formado por los 128 caracteres del ASCII
más los 128 caracteres especiales que presenta, en este caso, IBM.
Los valores
ordinales del código ASCII ampliado se encuentran en el rango de 0 a 255.
Dichos valores pueden representarse escribiendo el carácter correspondiente
encerrado entre comillas simples (apóstrofos).Así, podemos escribir: ‘A' <
'a ‘Que significa: "El valor ordinal de A es menor que el de a" o
"A está antes que a “Un valor de tipo carácter (char en inglés) se guarda
en un byte de memoria. La única operación (además de las relacionales) que
podemos hacer con caracteres es la concatenación concatenando dos caracteres,
por ejemplo 'a' y 'X' obtendríamos la cadena "aX".
Tipo de dato lógico
El tipo de dato lógico o booleano es en computación aquel que puede representar
valores de lógica binaria, esto es, valores que representen falso o verdadero.
Se utiliza normalmente en programación, estadística, electrónica,
matemáticas (Álgebra booleana), etc...Para generar un dato o valor lógico a
partir de otros tipos de datos, típicamente, se emplean los operadores
relacionales (u operadores de relación), por ejemplo: 0 es igual a falso y 1 es
igual a verdadero (3>2)= 1 = verdadero (7>9)= 0 = falso
Palabra reservada
una palabra reservada es una palabra que tiene un significado Gramatical
especial para ese lenguaje y no puede ser utilizada como un identificador en
ese lenguaje.
Por ejemplo, en
SQL, un usuario no puede ser llamado "group", porque la palabra group
es usada para indicar que un identificador se refiere a un grupo, no a un
usuario. Al tratarse de una palabra clave su uso queda restringido.
Ocasionalmente la especificación de un lenguaje de programación puede tener
palabras reservadas que están previstas para un posible uso en futuras
versiones. En Java const y goto son palabras reservadas — no tienen significado
en Java, pero tampoco pueden ser usadas como identificadores. Al reservar los
términos pueden ser implementados en futuras versiones de Java, si se desea,
sin que el código fuente más antiguo escrito en Java deje de funcionar.
Suscribirse a:
Entradas (Atom)