Niveles de abstracción. Lisp y la pedagogía

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Niveles de abstracción. Lisp y la pedagogía"

Transcripción

1 Niveles de abstracción. Lisp y la pedagogía F. Javier Gil Chica versión de enero de 2015 Resumen Estudiar implica alcanzar sucesivos niveles de abstracción. En este artículo se muestra cómo estos niveles pueden hacerse explícitos mediante el uso de un lenguaje de programación y hacemos una excursión desde los niveles inferiores del aprendizaje de las matemáticas hasta el nivel de los estudios superiores, mostrando cómo estas abstracciones se pueden formalizar al tiempo que obtenemos herramientas útiles y adquirimos formas de pensar y enfrentar problemas. 1. Motivación El curso de los estudios supone la adquisición de niveles de abstracción cada vez más elevados, construidos a partir de abstracciones anteriores. Esto es válido al menos para las disciplinas científicas. Por otro lado, la computación personal es ya corriente. Por otro, finalmente, en muchos textos se exponen procedimientos algorítmicos, escritos en pseudocódigo, reconociendo implícitamente que ésta es una forma conveniente y útil de formalizar ciertos conocimientos. Nosotros nos proponemos mostrar cómo, mediante un lenguaje de programación de sintaxis trivial, el alumno puede formalizar estas sucesivas abstracciones, lo que tiene a nuestro modo de ver varias importantes ventajas. En primer lugar, el dominio o al menos la familiaridad con un lenguaje de programación resulta más que conveniente para las disciplinas científicas, desde el punto de vista de la mera utilidad. En segundo lugar, un nivel mediano en programación es suficiente para que el estudiante se de cuenta y aproveche algunos patrones generales, como pueden ser: la descomposición de un problema en una serie de problemas más pequeños, el uso de la recursividad, estrategias generales para abordar problemas (fuerza bruta, dividir para vencer, búsqueda aleatoria, exhaustiva, heurísitca,..., el reconocimiento de estructuras de datos generales para organizar la información, etc. En 1

2 tercer lugar, la programación de una abstracción recién adquirida obliga a plantear esta abstracción de una forma clara, libre de ambigüedades. En cuarto lugar, con el paso del tiempo, el alumno puede adquirir una biblioteca personal de valor permanente, que le ayude en sus estudios posteriores. Esto es mucho más interesante que instruirlo en el uso de programas comerciales, que nunca serán tan flexibles. No sugerimos que estos programas deban ser descartados, sólo que, con frecuencia, existen soluciones sencillas para problemas sencillos (o no tanto que están al alcance de un usuario corriente y que pueden alcanzarse con poco esfuerzo y un alto nivel de satisfacción intelectual. Además, la habilidad de los lenguajes para combinar herramientas sencillas formando otras más complejas hace que la destreza que se adquiera hoy se revalorizará con el tiempo: a medida que adquirimos nuevas herramientas, crecen las posibilidades para combinarlas con otras que ya poseemos. Para mostrar nuestro punto de vista, vamos a guiar al lector por una serie de niveles de abstracción creciente, y veremos cómo estos niveles se pueden expresar en un lenguaje de programación. En definitiva, vamos a crear pequeños programas, casi todos triviales, para formalizar los niveles crecientes que se alcanzan en el estudio de las matemáticas. Elegimos el lenguaje Lisp por varias razones. En primer lugar, es el único lenguaje del que puede decirse que es bello. Su uso recompensa al intelecto. En segundo lugar, porque su sintaxis es trivial, lo que nos ahorra tener que mostrar una sintaxis particular. De hecho, al lector le bastará leer los ejemplos para darse cuenta de la sintaxis. En tercer lugar, porque este lenguaje va mucho más allá de estos primeros niveles que nosotros vamos a desbrozar. En cuarto lugar, porque es uno de los más antiguos lenguajes de programación (junto con Cobol y Fortran, y su estabilidad en el pasado dice mucho sobre su posible estabilidad futura, de modo que el esfuerzo que se hace hoy en aprenderlo se podrá rentabilizar durante décadas. En quinto lugar, porque es interactivo: basta escribir una función y ésta función puede ejecutarse, con independencia de que pertenezca a un programa más complejo. Además, su interactividad nos libra del molesto ciclo de edición-compilación-ejecución. En sexto lugar, porque dispone de una aritmética completa y potente, que puede trabajar con enteros, reales, racionales y complejos, sin estar limitado por los bits del procesador. Con seis es suficiente, pero se pueden presentar otras seis, al menos. Quéharemosapartirdeaquí?Presentaremosnivelanivel,ycómopuede usarse Lips en cada uno de ellos. 2

3 2. Nivel 1 Cuando un estudiante se encuentra en este nivel, es seguramente demasiado joven para introducirle un lenguaje de programación. No obstante, para hacer un recorrido completo, partimos de aquí. En este nivel, el alumno, probablemente en primaria, reconoce algunos números a primera vista. Cuando se le presentan conjuntos de objetos, reconoce inmediatamente cuántos de estos objetos hay en el conjunto, sin necesidad de contar. Esto sucede para conjuntos de 1, 2, 3 y probablemente 4 objetos. La suma es entonces algo natural, pues consiste sólo en asignar nombres al cardinal de los conjuntos mostrados. Por ejemplo, si a un infante se le muestran dos conjuntos, uno con 1 elemento y otro con 2 elementos, la suma de ambos cardinales es el cardinal de un conjunto de 3 elementos, reconocible inmediatamente. En Lisp, esta operación con números sencillos se escribe así: > (+ 1 2 > 3 y el resultado es 3. Suponemos que tras escribir la primera línea pulsamos la tecla INTRO, y como resultado se imprime la segunda. Se observa ya que en este lenguaje las operaciones se encierran entre paréntesis, y que tras el paréntesis de entrada se escribe la operación que se desea realizar, y a continuación sus argumentos. Prácticamente, esta es toda la sintaxis que hay que saber. 3. Nivel 2 En el siguiente nivel de abstracción, el alumno aprende a sumar números cualesquiera. Esto requiere de un algoritmo, y el algoritmo es independiente de qué números concretos se desean sumar. Esto expande las posibilidades. En Lisp: > ( > Nivel 3 A partir del nivel anterior, se alcanzan enseguida operaciones adicionales, como la resta, la multiplicación (que no es más que una suma repetida y la división (que no es más que una resta repetida. En Lisp: 3

4 > ( > 303 > ( > 18 > (* > 400 > (/ > 4 En este punto, el estudiante puede usar Lisp como una calculadora potente, si bien limitada a números enteros. Sin duda, es una calculadora mejor que una de sobremesa, pues no está limitada por el tamaño de los números y la introducción de las operaciones es más cómoda. Por qué entonces no usar Lisp como calculadora? > ( > > ( > > (* > Nivel 4 En este nivel, el alumno conoce distintas clases de números. Los enteros no son suficientes, y se le presentan los naturales, y después los racionales, los reales y, finalmente, los complejos. Nuestro lenguaje es capaz de operar con distintos tipos de números. Por ejemplo con racionales: > (+ 12/67 34/101 > 3490/6767 Con reales: > (* > y con complejos: > (/ #C(12-9 #C(-9 7 > #C(-171/130-3/130 4

5 6. Nivel 5 El siguiente nivel borra las diferencias entre los distintos tipos de números: un número es sólo un número. Lisp permite usar tipos distintos en la misma expresión, y da el resultado en el tipo adecuado. Por ejemplo, la suma de dos racionales es un racional, pero el producto de un racional por un real es un real: > (* 7/ > Además, se puede operar con complejos cuyas partes real e imaginaria sean de cualquier tipo: > (/ #C(5.0 45/118 #C(-9 14 > #C( Nivel 6 En el nivel 6, generalizamos las operaciones básicas haciendo que puedan tomar un número cualquiera de argumentos: > (+ 1 2/ > > (/ > Nivel 7 En el nivel 6, tenemos ya los operadores elementales, que pueden tomar un número arbitario de operandos. Ahora ampliamos aún más las capacidades de cálculo, admitiendo que un operando puede ser no sólo un número, sino otra expresión, es decir, el resultado de otro u otros operandos. Además, el proceso puede anidarse tanto como se desee o necesite: > (+ 2 (* 3 3 > 18 > (* 4 (+ (/ > 12 > (- 10 (* 2 (+ 9 1 (- 3 5 > -6 5

6 9. Nivel 8 El nivel 8 es crucial, pues es el paso desde el concepto de operando al concepto de función. Sabemos que existen funciones como las exponenciales, raíces, logarítimas y trigonométricas que, en última instancia, se reducen a una secuencia, quizás larga, de operaciones elementales de suma, resta, división y multiplicación. Podemos ahora ver las operaciones elementales como funciones sencillas e incluirlas en la gran familia de las funciones. Estas otras funciones también se pueden calcular en Lisp: > (sqrt 25.3 > > (log 12 > > (sin 0.34 > > (cos 2.71 > > (atan 3.0 > Nivel 9 El número de funciones que pueden definirse es infinito. Lisp permite definir nuevas funciones, combinando funciones ya existentes. Existe una función especial, defun, para definir nuevas funciones. Para hacerlo además, necesitamos una abstracción adicional: la variable. En efecto, podemos escribir (sqrt 8, (sqrt 34 o de cualquier otro valor. El hecho de que la función pueda aplicarse a cualquier argumento de su dominio implica la separación entre el procedimiento de cálculo y los valores a los que se aplica este procedimiento. Mediante el uso de variables podemos designar no un valor en concreto, sino cualquier valor. Como ejemplo, definimos una función que calcula la media de dos números. Para representar a dos números cualesquiera, usamos dos variables, a y b: > (defun media (a b (/ (+ a b 2 > (media 4 9 > 13/2 > (media > 5.3 6

7 Inmediatamente después, es posible usar esta función como si fuese parte del lenguaje, con el mismo rango que las funciones elementales o trigonométricas: > (* 2.0 (media 3 4 > Nivel 10 A veces una función puede calcularse recursivamente. Recursivas son aquellas funciones que entran dentro de su propia definición. Por ejemplo, el factorial de un número n se puede definir en función del factorial de n 1: n! = n (n 1!. Hay muchas funciones que pueden calcularse así. Para el factorial: (defun factorial (n (if (= n 0 1 (* n (factorial (- n 1 Recordemos que Lisp no está limitado a la representación de los números por hardware, es decir, puede trabajar con cantidades que superan en mucho las que se pueden representar con los 32 o 64 bits de los procesadores: > (factorial 543 >

8 Entretanto, el mayor entero que se puede representar con 32 bits es ; con 64 bits: y una hipotética futura generación de procesadores de 128 bits podrá representar enteros hasta Para calcular estos números, hemos escrito en Lisp la función elevado a que toma dos enteros y calcula el primero de ellos elevado al segundo: > (defun elv (x y (if (= y 0 1 (* x (elv x (- y 1 > (elv 2 32 > Intermedio: listas La lista es la estructura de datos más general, si admitimos que un elemento de una lista puede a su vez ser una lista. Entonces, las listas permiten representar vectores, matrices, pilas, colas, árboles y, por supuesto, listas. Estas estructuras de datos son abstractas, en el sentido de que pueden contener elementos de muchos tipos distintos, como números, palabras o combinaciones de ambos. Por ejemplo, un diccionario es una lista de listas de dos elementos, cada una de las cuales contiene un término y su definición. Todos los datos que se organizan jerárquicamente encajan en el tipo de datos abstracto árbol. Por ejemplo, la taxonomía de los reinos vegetal y animal se pueden representar como un árbol. En Lisp, una lista se representa encerrando a sus elementos entre paréntesis: ( (hola adios luna Como se ve, en Lisp el código y los datos se representan de la misma forma. La única diferencia es que en una lista de código se supone que el primer elemento es un operador y el resto de elementos sus argumentos. Pero si Lisp encontrase la segunda lista buscaría en vano el operador hola y se emitiría un mensaje de error. Para evitar esto, se indica a Lisp con un apóstrofo que la lista que viene a continuación contiene sólo datos: 8

9 (hola adios luna Dos funciones son útiles: (list y (cons. La primera crea una lista a partir de los argumentos que se le ofrezcan: > (list > ( La segunda toma como argumentos un objeto y una lista, y añade el objeto al principio de la lista. El objeto, a su vez, puede ser una lista: > (cons 3 (2 1 0 > ( > (cons (1 2 (3 4 5 > ( ( Como ejemplo de uso, escribimos una función que toma una lista de números como argumento y devuelve otra cuyos elementos son los elementos de la lista original multiplicados por 2: (defun duplica (lista (if (null lista nil (cons (* 2 (firs lista (duplica (rest lista 13. Nivel 11 Operar sobre listas es un nuevo nivel de abstracción, puesto que se opera sobre ellas con independencia de qué contengan: si números, cadenas, combinaciones de ambos u otras listas. Por ejemplo, la longitud de una lista es 0 si la lista está vacía y 1 más la longitud de la lista que resulta de saltar el primer elemento en caso contrario. Esta definición es naturalmente recursiva, y se puede formaliza así: (defun longitud (lista (if (null lista 0 (+ 1 (longitud (rest lista La función (first aplicada a una lista da como resultado el primer elemento. La función (rest aplicada a una lista da como resultado la sublista formada por el segundo y sucesivos elementos. Ahora podemos probar: 9

10 > (longitud (1 2 3 (4 5 > 4 Volviendo a la función (media definida anteriormente, es natural escribir una nueva versión que calcule la media no de dos números, sino de una lista de longitud arbitraria. Para ello será preciso calcular la suma de una lista. Si la lista está vacía, la suma de sus elementos es 0, si no, es el valor del primer elemento más la suma del resto de elementos. Esta definición es también naturalmente recursiva, y se escribe inmediatamente: (defun suma (lista (if (null lista 0 (+ (first lista (suma (rest lista Y ahora: (defun media (lista (/ (suma lista (longitud lista Probemos: > (media ( > 16/7 Un ejemplo más. Para calcular el máximo de una lista, suponiendo que no está vacía: (defun maxlista (lista (if (null (rest lista (first lista (if (> (first lista (maxlista (rest lista (first lista (maxlista (rest lista En lenguaje claro: si la lista contiene un sólo elemento, él es el máximo, si no, puede suceder que el primer elemento sea mayor que el máximo del resto, y entonces es él el máximo, o puede que no, y entonces el máximo es el máximo del resto de la lista. La recursión parece magia. 10

11 14. Nivel 12 Es una operación frecuente aplicar una función sobre todos los elementos de una lista. En una sección anterior hemos escrito una función llamada (duplica. En este nivel, generalizamos la idea y nos proponemos aplicar una función cualquiera a los elementos de una lista. Esto implica que las funciones puedan pasarse como parámetros. Para completar, una función debería también ser capaz de devolver como resultado otra función. Por ejemplo, la suma de una serie es un ejemplo de lo primero: la función encargada de la suma ha de recibir como parámetro la función f que se aplica a cada n en el intervalo desde n = a a n = b (f(n es el término general. Un ejemplo de lo segundo es la derivada: dada una función, se obtiene otra. Cubriremos estos aspectos en este nivel. Lisp incorpora tres funciones que pueden tomar a otras funciones como argumento. La primera es (funcall, que toma una función y los argumentos sobre los que se aplicará esa función: > (funcall # > 15 La segunda es (apply que toma una función y una lista. La función se aplicará a los elementos de la lista: > (apply # + ( > 21 La tercera es (mapcar, que toma una función de una variable y una lista y aplica la función a cada elemento de la lista, obteniendo otra: > (mapcar # sqrt ( > ( Aplicaremos estas ideas para escribir una función capaz de calcular la integral numérica por la fórmula de los trapecios. Esta función tomará como argumentos: 1 la función que se quiere integrar; 2 el extremo inferior a de la integral; 3 el extremo superior b de la integral y 4 el número de puntos N >= 2 que se tomarán para la integral, incluyendo a a y b. En primer lugar, escribiremos una función que devuelva una lista con valores igualmente espaciados, entre a y b, de N elementos: (defun valores (a b N (if (= N 2 (cons a (cons b nil (cons a (valores (+ a (/ (- b a(- N 1 b (- N 1 11

12 A continuación, la función (mapcar producirá una lista de valores, que serán los valores que toma la función que se desea integrar en cada punto de la lista primera. Una vez hecho esto la integral se obtiene enseguida, pues es el producto de (b a/(n 1 por: la suma de la lista menos la semi-suma de los extremos. Sabemos cómo sumar una lista, y sabemos cómo obtener el primer elemento. Cómo obtener el último? Con la función (last. Pero, al contrario que (first, que devuelve el primer elemento de la lista, (last devuelve una lista que contiene sólo el último elemento. Por tanto, (car (last lista devuelve el último elemento. Ahora, la función que suma la lista completa y le resta la semi-suma de los elementos primero y último es trivial: (defun sumatorio (lista (- (suma lista (/ (+ (first lista (car (last lista 2.0 Con todo esto, es posible escribir la función que integra numéricamente una función cualquiera entre dos extremos: (defun trapecios (f a b N (* (/ (- b a (- N 1 (sumatorio (mapcar f (valores a b N Ahora podemos calcular la integral de una función pasándola como argumento a (trapecios. Por ejemplo: > (defun cuadrado (x (* x x > (trapecios # cuadrado > Segundo intermedio Una macro es un programa que escribe un programa, que después se ejecuta. El alcance de las macros en Lisp va muchísimo más lejos de lo que pretendemos en estas notas, pero a título ilustrativo, escribiremos una macro que tome como argumento una función y escriba la expresión que después se ejecutará para darnos la integral: > (defmacro trapmac (f a b N (* (/ (-,b,a(-,n,1 (sumatorio (mapcar #,f (valores,a,b,n 12

13 después de lo cual es posible escribir > (trapmac cuadrado > Nivel 12, segunda parte La segunda parte de este nivel consiste en ver que una función puede devolver otra función. La función devuelta es creada en el interior de otra, y devuelta como resultado, de la misma forma que se calculan y devuelven números. La sintaxis es casi trivial: (defun f (x # (lambda (n (+ x n f es una función que toma un argumento x y que devuelve otra función que toma un argumento n y devuelve la suma (+ x n. lambda es un nombre especial con el que Lisp se refiere a funciones anónimas. A veces se quiere hacer un pequeño cálculo dentro de una función y para eso se usa otra cuya utilidad es local: no vale la pena ponerle un nombre especial porque no va a ser llamada desde otras instancias. Entonces se usa la forma lambda. De manera que si se llama (f 3, el resultado no será un número, sino una función, que a su vez requerirá de otro argumento y dará un resultado. > (funcal (f 3 5 > 8 > (apply (f 3 (5 > 8 > (mapcar (f 3 ( > ( De manera que, en este punto, las funciones realizan cálculos donde pueden manipular no sólo números, sino también otras funciones, y pueden tomarlas como argumento y devolverlas como resultado. 17. Nivel 13 Este es el último nivel que vamos a presentar aquí, pero no el último al que permite acceder Lisp. De hecho, Lisp está hecho de tal forma que puede generar nuevas abstracciones a partir de otras anteriores, del nivel que se 13

14 quiera. Trataremos ahora de la forma en que es posible combinar funciones en una sola unidad. Hasta ahora, hemos escrito funciones individuales, o funciones que usaban funciones anteriores, autónomas. Por ejemplo, en el programa que calcula la integral de una función por el método de los trapecios, hemos usado las funciones(sumatorio y(valores, que fueron definidas antes. A su vez, (sumatorio hace uso de (suma. Puede ser que todas estas funciones tengan utilidad en sí mismas o puede que no. Por ejemplo (suma puede ser útil fuera del contexto del cálculo de la integral, pues hace la operación genérica de sumar los elementos de una lista. Pero (sumatorio no parece tener otra utilidad que la de servir a (trapecios. Entonces, se plantea la necesidad, o al menos la conveniencia, de poder aglutinar junto con una determinada función, todas aquellas funciones auxiliares que no tienen otro propósito que el de ayudar dentro de su contexto, y no tienen por qué ser conocidas fuera de ese contexto. Estas funciones auxiliares se declaran en Lisp mediante (labels. Vamos a reescribir la función (trapecios de tal forma que las funciones en que se apoya sean parte suya y sólo conocidas por ella. Antes de eso, un par de ejemplos para aclarar la sintaxis: (defun f (n (labels ( (a (n (+ n 4 (* n (a 7 Aquí, inmediatamente después de declarar nuestra intención de crear una función de nombre f que tomará como argumento un número n, abrimos un ámbito con (labels. Este ámbito se extiende hasta el penúltimo paréntesis, que cierra (labels, justo antes del último, que cierra (defun. Dentro de ese ámbito, y conocida sólo ahí, se declara la función a. Obsérvese que no es preciso usar (defun. Esa función hace un pequeño cálculo, y servirá de auxiliar a f. El cálculo es simple: toma su argumento y le suma 4. Una vez terminada de definir a, se pasa a definir f, que toma su argumento y lo multiplica por el resultado de hacer (a 7. Obsérvese que hemos llamado n tanto al argumento de f como al de a. Pero no son la misma n. La primera es el argumento de f, y la segunda es el argumento de a. Son dos variables distintas, pero tienen el mismo nombre. (a es llamada con argumento 7: cuando se realiza la llamada, se calcula (a con n=7. Cuando se llama a f, se llama con el argumento que se quiera. Por supuesto, también podríamos haber escrito: (defun f (n (labels ( (a (x (+ x 4 (* n (a 7 14

15 (labels puede contener más de una función, y esas funciones locales pueden llamarse entre sí, e incluso pueden ser recursivas. Un segundo ejemplo, en el que usamos una indentación diferente para hacer más claro el ámbito determinado por (labels : (defun g (n (labels ( y ahora (a (x (+ x 5 (b (y (* y (a 4 (* n (a 1 (b 2 > (mapcar # g ( > ( La función g se apoya en a y b, y b se apoya a su vez en a. Ni a ni b son conocidas fuera de g, y por tanto no pueden ser llamadas: si se intenta, se obtendrá un mensaje de error. Ahora, podemos reescribir la función (trapecios. Usamos una indentación generosa para hacer explícito cada bloque. (defun trapecios (f a b N (labels ( (suma (lista (if (null lista 0 (+ (first lista (suma (rest lista (valores (a b N (if (= N 2 (cons a (cons b nil (cons a (valores (+ a (/ (- b a(- N 1 b (- N 1 (sumatorio (lista (- (suma lista (/ (+ (first lista (car (last lista

16 (* (/ (- b a (- N 1 ;; (sumatorio (mapcar f (valores a b N ;; trapecios ;; Ahora se puede calcular: > (trapecios # cuadrado > Conclusión Aunque hemos sólo arañado la superficie de Lisp, ha sido suficiente para hacer el recorrido típico que lleva a un estudiante desde la escuela primaria a la Universidad: desde la suma de pequeñas cantidades al análisis funcional, donde los elementos que se manipulan no son números, sino funciones. Hemos visto cómo cada nuevo nivel de abstracción puede formalizarse mediante un lenguaje de programación, y cómo esa formalización tiene un valor añadido: no sólo se expresan conceptos en un nuevo lenguaje, lo que obliga a expresarlos de forma clara y precisa, sino que como resultado se adquieren herramientas y utilidades duraderas. Como ejemplo trivial, una vez que se dispone de la función (media se tiene la herramienta para calcular medias de listas de números de cualquier tipo y longitud arbitraria. (media puede ser útil en muchos contextos y, sobre todo, puede usarse de forma independiente o como una pieza para construir funciones más complejas. En el camino, también se adquieren formas de pensar útiles. Por ejemplo, se aprende a plantear problemas usando recursividad. Dado el carácter de estas notas, no hemos explorado las abstracciones de datos, con lo cual se podrá organizar y manipular la información con estructuras naturales para cada tipo de problema. Para finalizar, tenemos que citar la obra Structure and Interpretation of Computer Programas, de Harold Abelson, Gerald Jay Sussman y Julie Sussman. Es una obra maestra y una fuente de placer intelectual. El lector interesado puede acudir a otras muchas obras: Practical Common Lisp, de Peter Seibel; Successful Lisp: How to Understand and Use Common Lisp, de David B. Lamkins; Land of Lisp, de Conrad Barski M. D.; Common Lisp: a Gentle Introduction to symbolic computation, de David S. Touretzky; Common 16

17 Lisp, de Paul Graham. Omitimos otros libros, de gran calidad pero muy alto nivel. Por supuesto, hay muchas páginas sobre Lisp que pueden consultarse también. 1 1 Sugerencias, erratas: gil@disc.ua.es 17

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten

Más detalles

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un

Más detalles

lasmatemáticas.eu Pedro Castro Ortega materiales de matemáticas

lasmatemáticas.eu Pedro Castro Ortega materiales de matemáticas 1. Fracciones Una fracción es una expresión del tipo a b, donde a y b son números naturales llamados numerador y denominador, respectivamente. 1.1. Interpretación de una fracción a) Fracción como parte

Más detalles

Aritmética de Enteros

Aritmética de Enteros Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión

Más detalles

Índice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción

Índice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción Curso 0: Matemáticas y sus Aplicaciones Tema 5. Lógica y Formalismo Matemático Leandro Marín Dpto. de Matemática Aplicada Universidad de Murcia 2012 1 Proposiciones y Conectores Lógicos 2 Tablas de Verdad

Más detalles

Bases Matemáticas para la Educación Primaria. Guía de Estudio. Tema 3: Números racionales. Parte I: Fracciones y razones Números racionales

Bases Matemáticas para la Educación Primaria. Guía de Estudio. Tema 3: Números racionales. Parte I: Fracciones y razones Números racionales Bases Matemáticas para la Educación Primaria Guía de Estudio Tema 3: Números racionales Parte I: Fracciones y razones Números racionales 1 Situación introductoria ANÁLISIS DE CONOCIMIENTOS PUESTOS EN JUEGO

Más detalles

Algoritmos y programas. Algoritmos y Estructuras de Datos I

Algoritmos y programas. Algoritmos y Estructuras de Datos I Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de

Más detalles

Guía de uso de DERIVE. 2) Botones de acceso rápido Al colocar el cursor sobre el botón aparece un recuadro con su función

Guía de uso de DERIVE. 2) Botones de acceso rápido Al colocar el cursor sobre el botón aparece un recuadro con su función Sobre la pantalla principal de DERIVE distinguimos: 1) La barra del menú 2) Botones de acceso rápido Al colocar el cursor sobre el botón aparece un recuadro con su función UNIDAD DOCENTE DE MATEMÁTICAS

Más detalles

Lección 2: Notación exponencial

Lección 2: Notación exponencial GUÍA DE MATEMÁTICAS III Lección 2: Notación exponencial En la lección anterior hemos visto cómo trabajar con números reales y cómo para facilitar el trabajo con ellos es conveniente utilizar aproximaciones,

Más detalles

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos PROGRAMACIÓN DE SHELL SCRIPTS EN LINUX El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales,

Más detalles

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO Recursividad: La recursividad es una técnica de programación

Más detalles

Estructuras de control

Estructuras de control Estructuras de control Introducción Los algoritmos vistos hasta el momento han consistido en simples secuencias de instrucciones; sin embargo, existen tareas más complejas que no pueden ser resueltas empleando

Más detalles

Derivadas Parciales (parte 2)

Derivadas Parciales (parte 2) 40 Derivadas Parciales (parte 2) Ejercicio: Si donde y. Determinar Solución: Consideraremos ahora la situación en la que, pero cada una de las variables e es función de dos variables y. En este caso tiene

Más detalles

Métodos que devuelven valor Dado el siguiente triángulo rectángulo:

Métodos que devuelven valor Dado el siguiente triángulo rectángulo: Métodos que devuelven valor Dado el siguiente triángulo rectángulo: hipotenusa altura base Para dibujar este triángulo necesitamos los siguientes datos: base y altura La base y la altura, se utilizarán

Más detalles

SESIÓN 11 DERIVACIÓN DE FUNCIONES TRIGONOMETRICAS INVERSAS

SESIÓN 11 DERIVACIÓN DE FUNCIONES TRIGONOMETRICAS INVERSAS SESIÓN 11 DERIVACIÓN DE FUNCIONES TRIGONOMETRICAS INVERSAS I. CONTENIDOS: 1. Función inversa, conceptos y definiciones 2. Derivación de funciones trigonométricas inversas 3. Ejercicios resueltos 4. Estrategias

Más detalles

Operadores. Javier Fernández Rivera -

Operadores. Javier Fernández Rivera - Programación en C Operadores Javier Fernández Rivera - www.aurea.es Los operadores Son los elementos o caracteres gráficos encargados de manipular los datos, que pueden ser dados por números, caracteres,

Más detalles

GUÍA BÁSICA DE SCHEME v.4

GUÍA BÁSICA DE SCHEME v.4 Esta guía básica pretende ser una introducción elemental al lenguaje de programación Scheme. Se presenta como una guía de comienzo rápido de tal forma que permita conocer de una forma muy esquemática los

Más detalles

2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO. Una señal puede ser definida como una portadora física de información. Por ejemplo,

2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO. Una señal puede ser definida como una portadora física de información. Por ejemplo, 2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO Una señal puede ser definida como una portadora física de información. Por ejemplo, las señales de audio son variaciones en la presión del aire llevando consigo

Más detalles

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas Herramientas de Programación M.C. Juan Carlos Olivares Rojas Febrero 2011 Temario Simbología Reglas para la construcción de Diagramas Pseudocódigo Temario Tipos de Datos y Expresiones Estructuras lógicas

Más detalles

Matemáticas UNIDAD 1 CONSIDERACIONES METODOLÓGICAS. Material de apoyo para el docente. Preparado por: Héctor Muñoz

Matemáticas UNIDAD 1 CONSIDERACIONES METODOLÓGICAS. Material de apoyo para el docente. Preparado por: Héctor Muñoz CONSIDERACIONES METODOLÓGICAS Material de apoyo para el docente UNIDAD 1 Preparado por: Héctor Muñoz Diseño Gráfico por: www.genesisgrafica.cl 1. BREVE PRESENTACIÓN DE LA UNIDAD AMPLIACIÓN DE CONOCIMIENTOS

Más detalles

Anexo. Control de errores

Anexo. Control de errores Anexo. Control de errores Tipos de errores Los errores en un programa o algoritmo se pueden clasificar de la siguiente manera Errores de compilación Los errores de compilación no permiten la ejecución

Más detalles

Computación Aplicada. Universidad de Las Américas. Aula virtual de Computación Aplicada. Módulo de Excel 2013 LIBRO 7

Computación Aplicada. Universidad de Las Américas. Aula virtual de Computación Aplicada. Módulo de Excel 2013 LIBRO 7 Computación Aplicada Universidad de Las Américas Aula virtual de Computación Aplicada Módulo de Excel 2013 LIBRO 7 Contenido TRABAJANDO CON FUNCIONES EN EXCEL 2013... 3 FUNCIONES MATEMÁTICAS... 4 FUNCIONES

Más detalles

Operaciones básicas con hojas de cálculo

Operaciones básicas con hojas de cálculo Operaciones básicas con hojas de cálculo Insertar hojas de cálculo. Para insertar rápidamente una hoja de cálculo nueva al final de las hojas de cálculo existentes, haga clic en la ficha Insertar hoja

Más detalles

EL LENGUAJE ALGEBRAICO

EL LENGUAJE ALGEBRAICO LENGUAJE ALGEBRAICO Guillermo Ruiz Varela - PT EL LENGUAJE ALGEBRAICO Hasta ahora siempre hemos trabajado en matemáticas con números y signos, es lo que se llama lenguaje numérico. A partir de ahora, vamos

Más detalles

UNIDAD 2. Logaritmos DEFINICION DE LOGARITMO. Definiciones:

UNIDAD 2. Logaritmos DEFINICION DE LOGARITMO. Definiciones: Matemática UNIDAD. Logaritmos Medio GUÍA N 1 DEFINICION DE LOGARITMO Qué valor de x satisface la ecuación x = 7? Fácilmente podemos verificar que x = es una solución para esta ecuación, pues = 7. Pero

Más detalles

Ámbito Científico-Tecnológico Módulo IV Bloque 2 Unidad 1 Tan real como la vida misma

Ámbito Científico-Tecnológico Módulo IV Bloque 2 Unidad 1 Tan real como la vida misma Ámbito Científico-Tecnológico Módulo IV Bloque 2 Unidad 1 Tan real como la vida misma Estamos acostumbrados a trabajar con números naturales o enteros en la vida cotidiana pero en algunas ocasiones tendrás

Más detalles

Sistemas de dos ecuaciones lineales de primer grado con dos incógnitas

Sistemas de dos ecuaciones lineales de primer grado con dos incógnitas Un sistema de dos ecuaciones lineales de primer grado con dos incógnitas tiene la siguiente forma Ax + By + C = 0 A x + B y + C (1) = 0 Ya sabemos que una ecuación lineal de primer grado con dos incógnitas

Más detalles

ESTADÍSTICA CON EXCEL

ESTADÍSTICA CON EXCEL ESTADÍSTICA CON EXCEL 1. INTRODUCCIÓN La estadística es la rama de las matemáticas que se dedica al análisis e interpretación de series de datos, generando unos resultados que se utilizan básicamente en

Más detalles

. De R (Reales) a C (Complejos)

. De R (Reales) a C (Complejos) INTRODUCCIÓN Los números complejos se introducen para dar sentido a la raíz cuadrada de números negativos. Así se abre la puerta a un curioso y sorprendente mundo en el que todas las operaciones (salvo

Más detalles

Programación en java. Estructuras algorítmicas

Programación en java. Estructuras algorítmicas Programación en java Estructuras algorítmicas Estructuras algoritmicas 1. Conceptos basicos 1. Dato 2. Tipos de datos 3. Operadores 2. dsd Conceptos Basicos DATO: se considera una representación simbólica

Más detalles

Departamento de Matemáticas, CCIR/ITESM. 9 de febrero de 2011

Departamento de Matemáticas, CCIR/ITESM. 9 de febrero de 2011 Factorización LU Departamento de Matemáticas, CCIR/ITESM 9 de febrero de 2011 Índice 26.1. Introducción............................................... 1 26.2. Factorización LU............................................

Más detalles

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO Control de Flujo Estructuras de Control Experiencia Educativa de Algorítmica 1 Introducción El estilo de como escribimos y analizamos un algoritmo se convierte en una de las principales características

Más detalles

TEMA 1. Números Reales. Teoría. Matemáticas

TEMA 1. Números Reales. Teoría. Matemáticas 1 1.- Los números reales Cuáles son los números reales? Los números reales son todos los números racionales y todos los números irracionales. El conjunto de los números reales se designa con el símbolo

Más detalles

4. Operadores Operador asignación

4. Operadores Operador asignación Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre

Más detalles

Medidas de centralización

Medidas de centralización 1 1. Medidas de centralización Medidas de centralización Hemos visto cómo el estudio del conjunto de los datos mediante la estadística permite realizar representaciones gráficas, que informan sobre ese

Más detalles

Tema: Excel Formulas, Funciones y Macros

Tema: Excel Formulas, Funciones y Macros 1 Facultad Escuela Lugar de Ejecución : Ingeniería. : Biomédica : Laboratorio de Biomédica Tema: Excel Formulas, Funciones y Macros Objetivos Específicos Conocer los conceptos básicos en relación a la

Más detalles

Acuerdo 286 Matemáticas

Acuerdo 286 Matemáticas Acuerdo 286 Matemáticas Habilidad Matemática Fausto Zarate Melchor Habilidad Matemática. La habilidad matemática se compone de dos tipos de habilidad: la espacial y la numérica. a) Representación del espacio.

Más detalles

EVERYDAY ENGINEERING EXAMPLES FOR SIMPLE CONCEPTS

EVERYDAY ENGINEERING EXAMPLES FOR SIMPLE CONCEPTS EVERYDAY ENGINEERING EXAMPLES FOR SIMPLE CONCEPTS Arte, finanzas y sucesiones en EXCEL MATH 2252 Calculus II Dra. Carmen Caiseda Copyright 2015 Arte, Finanzas y sucesiones en Excel Engage: MSEIP Engineering

Más detalles

*Número natural, el que sirve para designar la cantidad de. *El cero, a veces, se excluye del conjunto de los números

*Número natural, el que sirve para designar la cantidad de. *El cero, a veces, se excluye del conjunto de los números *Número natural, el que sirve para designar la cantidad de elementos que tiene un cierto conjunto, y se llama cardinal de dicho conjunto. *Los números naturales son infinitos. El conjunto de todos ellos

Más detalles

Series aritméticas. ó La suma de los primeros n términos en una serie se representa por S n. . Por ejemplo: S 6

Series aritméticas. ó La suma de los primeros n términos en una serie se representa por S n. . Por ejemplo: S 6 LECCIÓN CONDENSADA 9.1 Series aritméticas En esta lección aprenderás terminología y notación asociada con series descubrirás una fórmula para la suma parcial de una serie aritmética Una serie es la suma

Más detalles

Fracciones y fractales

Fracciones y fractales C APÍTULO 0 Fracciones y fractales Resumen del contenido El tema del Capítulo 0 es la investigación de patrones en el diseño fractal. No se intimide si no ha visto fractales anteriormente. El propósito

Más detalles

UNIDAD 8: SUCESIONES Y SERIES

UNIDAD 8: SUCESIONES Y SERIES UNIDAD 8: SUCESIONES Y SERIES Llegamos a la última unidad de la asignatura correspondiente a Sucesiones y Series, recuerde mantener la motivación hasta el final, el tema que vamos a tratar aquí es de especial

Más detalles

Complejidad computacional (Análisis de Algoritmos)

Complejidad computacional (Análisis de Algoritmos) Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución

Más detalles

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo Tipos de datos. Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo Valores Constantes: Es un dato que se introduce directamente en

Más detalles

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos

Más detalles

13. Utilizar la fórmula del término general y de la suma de n términos consecutivos

13. Utilizar la fórmula del término general y de la suma de n términos consecutivos Contenidos mínimos 3º ESO. 1. Contenidos. Bloque I: Aritmética y álgebra. 1. Utilizar las reglas de jerarquía de paréntesis y operaciones, para efectuar cálculos con números racionales, expresados en forma

Más detalles

Ejercicios ejemplo: verificación de algoritmos del valor suma de una sucesión matemática. (CU00238A)

Ejercicios ejemplo: verificación de algoritmos del valor suma de una sucesión matemática. (CU00238A) aprenderaprogramar.com Ejercicios ejemplo: verificación de algoritmos del valor suma de una sucesión matemática. (CU00238A) Sección: Cursos Categoría: Curso Bases de la programación Nivel II Fecha revisión:

Más detalles

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado Facultad de Ingeniería. Escuela de computación. 2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas

Más detalles

Algoritmos y Programas

Algoritmos y Programas Introducción a la Programación Pontificia Universidad Javeriana Generado con LAT E X Febrero de 2010 Recorderis Algoritmos Recorderis Estado Una configuración determinada del sistema en un tiempo-espacio

Más detalles

Factorización de polinomios FACTORIZACIÓN DE POLINOMIOS

Factorización de polinomios FACTORIZACIÓN DE POLINOMIOS FACTORIZACIÓN DE POLINOMIOS 1. Polinomios Un monomio es el producto de un número real por una o más letras que pueden estar elevadas a exponentes que sean números naturales. La suma de los exponentes de

Más detalles

LOS NÚMEROS ENTEROS. Para restar un número entero, se quita el paréntesis y se pone al número el signo contrario al que tenía.

LOS NÚMEROS ENTEROS. Para restar un número entero, se quita el paréntesis y se pone al número el signo contrario al que tenía. Melilla Los números Enteros y operaciones elementales LOS NÚMEROS ENTEROS 1º LOS NÚMEROS ENTEROS. El conjunto de los números enteros Z está formado por los números naturales (enteros positivos) el cero

Más detalles

SISTEMAS DE NUMERACION

SISTEMAS DE NUMERACION SISTEMAS DE NUMERACION INTRODUCCION El número de dígitos de un sistema de numeración es igual a la base del sistema. Sistema Base Dígitos del sistema Binario 2 0,1 Octal 8 0,1,2,3,4,5,6,7 Decimal 10 0,1,2,3,4,5,6,7,8,9

Más detalles

CONJUNTOS NUMÉRICOS. La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria.

CONJUNTOS NUMÉRICOS. La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria. CONJUNTOS NUMÉRICOS La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria. Por ejemplo, usamos números para contar una determinada cantidad

Más detalles

FÓRMULAS. Operador aritmético Significado Ejemplo

FÓRMULAS. Operador aritmético Significado Ejemplo FÓRMULAS Fórmula Una Formula es: La representación de una operación aritmética en una hoja de calculo. Una fórmula comienza por un signo igual (=), seguido del cálculo que realiza. Por ejemplo, la siguiente

Más detalles

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para

Más detalles

f: D IR IR x f(x) v. indep. v. dependiente, imagen de x mediante f, y = f(x). A x se le llama antiimagen de y por f, y se denota por x = f -1 (y).

f: D IR IR x f(x) v. indep. v. dependiente, imagen de x mediante f, y = f(x). A x se le llama antiimagen de y por f, y se denota por x = f -1 (y). TEMA 8: FUNCIONES. 8. Función real de variable real. 8. Dominio de una función. 8.3 Características de una función: signo, monotonía, acotación, simetría y periodicidad. 8.4 Operaciones con funciones:

Más detalles

3. Ecuaciones, parte I

3. Ecuaciones, parte I Matemáticas I, 2012-I La ecuación es como una balanza Una ecuación es como una balanza en equilibrio: en la balanza se exhiben dos objetos del mismo peso en ambos lados mientras que en la ecuación se exhiben

Más detalles

UNIDAD DE APRENDIZAJE I

UNIDAD DE APRENDIZAJE I UNIDAD DE APRENDIZAJE I Saberes procedimentales Interpreta y utiliza correctamente el lenguaje simbólico para el manejo de expresiones algebraicas. 2. Identifica operaciones básicas con expresiones algebraicas.

Más detalles

Tema 3 POTENCIAS Y NOTACIÓN CIENTÍFICA 1. Notación científica. Mr: Gonzalo Flores C

Tema 3 POTENCIAS Y NOTACIÓN CIENTÍFICA 1. Notación científica. Mr: Gonzalo Flores C POTENCIAS Y NOTACIÓN CIENTÍFICA 1 Notación científica Mr: Gonzalo Flores C POTENCIAS Y NOTACIÓN CIENTÍFICA 2 ESQUEMA DE LA UNIDAD 0. Potencias de exponente natural. Propiedades. 1. Potencias de exponente

Más detalles

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal Algoritmos y solución de problemas Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal Introducción Departamento de Electrónica, Sistemas e Informática En las ciencias de la computación

Más detalles

Tema Contenido Contenidos Mínimos

Tema Contenido Contenidos Mínimos 1 Estadística unidimensional - Variable estadística. - Tipos de variables estadísticas: cualitativas, cuantitativas discretas y cuantitativas continuas. - Variable cualitativa. Distribución de frecuencias.

Más detalles

Lección 10: División de Polinomios. Dra. Noemí L. Ruiz Limardo 2009

Lección 10: División de Polinomios. Dra. Noemí L. Ruiz Limardo 2009 Lección 10: División de Polinomios Dra. Noemí L. Ruiz Limardo 009 Objetivos de la lección Al finalizar esta lección los estudiantes: Dividirán polinomios de dos o más términos por polinomios de uno y dos

Más detalles

INTEGRACIÓN NUMÉRICA

INTEGRACIÓN NUMÉRICA INTEGRACIÓN NUMÉRICA En los cursos de Cálculo Integral, nos enseñan como calcular una integral definida de una función contínua mediante una aplicación del Teorema Fundamental del Cálculo: Teorema Fundamental

Más detalles

TEMA 1 NÚMEROS NATURALES

TEMA 1 NÚMEROS NATURALES TEMA 1 NÚMEROS NATURALES Criterios De Evaluación de la Unidad 1 Efectuar correctamente operaciones combinadas de números naturales, aplicando correctamente las reglas de prioridad y haciendo un uso adecuado

Más detalles

ÁREA: MATEMÁTICAS UNIDAD : 1 TEMPORALIZACIÓN: OCTUBRE 1ª QUINCENA OBJETIVOS CONTENIDOS CRITERIOS DE EVALUACIÓN

ÁREA: MATEMÁTICAS UNIDAD : 1 TEMPORALIZACIÓN: OCTUBRE 1ª QUINCENA OBJETIVOS CONTENIDOS CRITERIOS DE EVALUACIÓN ÁREA: MATEMÁTICAS UNIDAD : 1 TEMPORALIZACIÓN: OCTUBRE 1ª QUINCENA Conocer los nueve primeros órdenes de unidades y las equivalencias entre ellos. Leer, escribir y descomponer números de hasta nueve cifras.

Más detalles

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL 1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto

Más detalles

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) APRENDERAPROGRAMAR.COM QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:

Más detalles

Problemas de Recursividad

Problemas de Recursividad Problemas de Recursividad Problema 1. El factorial de un número entero n 0, denotado como n!, se define! como!!! i = 1 2 n cuando n > 0, y 0! = 1. Por ejemplo 6! = 1 2 3 4 5 6 = 720 Diseñad una método

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

Lección 1: Números reales

Lección 1: Números reales GUÍA DE MATEMÁTICAS III Lección 1: Números reales Los números irracionales En los grados anteriores estudiamos distintas clases de números: Vimos en primer lugar: los naturales, que son aquellos que sirven

Más detalles

TEST DE RAZONAMIENTO NUMÉRICO. Consejos generales

TEST DE RAZONAMIENTO NUMÉRICO. Consejos generales TEST DE RAZONAMIENTO NUMÉRICO Consejos generales 1 I. INTRODUCCIÓN En lo relativo a los cálculos de porcentajes, es fundamental tener en cuenta que los porcentajes, en realidad, son referencias abstractas,

Más detalles

13 ESO. «El estudio es un esfuerzo total para aprender, y sólo es verdaderamente provechoso cuando se aprende» Morgan. Profesor

13 ESO. «El estudio es un esfuerzo total para aprender, y sólo es verdaderamente provechoso cuando se aprende» Morgan. Profesor «El estudio es un esfuerzo total para aprender, y sólo es verdaderamente provechoso cuando se aprende» 13 ESO Morgan. Profesor N N ÍNDICE: EL NIF DIA DEL MEDIO AMBIENTE 1. NÚMEROS NATURALES 2. MÚLTIPLOS

Más detalles

Tema 2: Teorema de estructura de los grupos abelianos finitamente generados.

Tema 2: Teorema de estructura de los grupos abelianos finitamente generados. ESTRUCTURAS ALGEBRAICAS GRADO EN MATEMÁTICAS. CURSO 215/216 Tema 2: Teorema de estructura de los grupos abelianos finitamente generados. 1.1. Grupo abeliano libre. Bases. Definición 1.1. El grupo Z n con

Más detalles

Guía práctica de estudio 03: Algoritmos

Guía práctica de estudio 03: Algoritmos Guía práctica de estudio 03: Algoritmos Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 03: Algoritmos Objetivo:

Más detalles

NÚMEROS COMPLEJOS: C

NÚMEROS COMPLEJOS: C NÚMEROS COMPLEJOS: C Alejandro Lugon 21 de mayo de 2010 Resumen Este es un pequeño estudio de los números complejos con el objetivo de poder usar las técnicas de solución de ecuaciones y sistemas diferenciales

Más detalles

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación 1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos

Más detalles

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros

Más detalles

Utilización de Funciones en OpenOffice.org Calc

Utilización de Funciones en OpenOffice.org Calc Utilización de Funciones en OpenOffice.org Calc Una función es un conjunto de instrucciones reunidas bajo un nombre que calculan un resultado o llevan a cabo una acción específica. Las funciones pueden

Más detalles

Diagramas de secuencia

Diagramas de secuencia Facultad de Ingeniería Departamento de Ingeniería de Sistemas y Computación Diagramas de secuencia Fragmentos Combinados: caminos alternativos Departamento de Ingeniería de Sistemas y Computación - Universidad

Más detalles

GUÍA DE ESTUDIO: MATEMÁTICAS POLINOMIOS

GUÍA DE ESTUDIO: MATEMÁTICAS POLINOMIOS GUÍA DE ESTUDIO: MATEMÁTICAS POLINOMIOS Esta guía de estudio está diseñada con ejercicios resueltos paso a paso con el fin de mostrar los procedimientos detallados para abordar cada uno de ellos. Las estrategias

Más detalles

PROGRAMACIÓN DE LOS CONTENIDOS DE MATEMÁTICAS EN LA PREPARACIÓN DE LA PARTE COMÚN DE LA PRUEBA DE ACCESO A LOS C.F.G.S. (Opción C)

PROGRAMACIÓN DE LOS CONTENIDOS DE MATEMÁTICAS EN LA PREPARACIÓN DE LA PARTE COMÚN DE LA PRUEBA DE ACCESO A LOS C.F.G.S. (Opción C) PROGRAMACIÓN DE LOS CONTENIDOS DE MATEMÁTICAS EN LA PREPARACIÓN DE LA PARTE COMÚN DE LA PRUEBA DE ACCESO A LOS C.F.G.S. (Opción C) I.E.S. Universidad Laboral de Málaga Curso 2015/2016 PROGRAMACIÓN DE LA

Más detalles

Teoría de Números. Divisibilidad. Olimpiada de Matemáticas en Tamaulipas

Teoría de Números. Divisibilidad. Olimpiada de Matemáticas en Tamaulipas Teoría de Números Divisibilidad Olimpiada de Matemáticas en Tamaulipas 1. Introducción Divisibilidad es una herramienta de la aritmética que nos permite conocer un poco más la naturaleza de un número,

Más detalles

CONSEJOS SOBRE WORD 2012

CONSEJOS SOBRE WORD 2012 PÁRRAFOS Según dicen, Word es el programa informático que más se utiliza en todo el mundo y, sin embargo, es poco conocido y estudiado. Se debe a que es tan intuitivo y parece tan fácil trabajar en él,

Más detalles

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. Constantes y variables Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. pi = 3.1416 Variable: Es un espacio en la memoria de la computadora que

Más detalles

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C. El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información que se puede tratar en un programa informático. En este artículo vamos a conocer los tipos de datos

Más detalles

Infinito más un número Infinito más infinito. Infinito por infinito. OPERACIONES CON INFINITO Sumas con infinito. Productos con infinito

Infinito más un número Infinito más infinito. Infinito por infinito. OPERACIONES CON INFINITO Sumas con infinito. Productos con infinito OPERACIONES CON INFINITO Sumas con infinito Infinito más un número Infinito más infinito Infinito menos infinito Productos con infinito Infinito por un número Infinito por infinito Infinito por cero Cocientes

Más detalles

Una sucesión infinita es una función cuyo dominio es el conjunto de los enteros positivos. Podemos denotar una sucesión como una lista

Una sucesión infinita es una función cuyo dominio es el conjunto de los enteros positivos. Podemos denotar una sucesión como una lista Cap 9 Sec 9.1 9.3 Una sucesión infinita es una función cuyo dominio es el conjunto de los enteros positivos. Podemos denotar una sucesión como una lista a 1, a 2, a 3, a n, Donde cada a k es un término

Más detalles

DERIVADA DE LA FUNCIONES BÁSICAS TANGENTE, COTANGENTE, SECANTE Y COSECANTE

DERIVADA DE LA FUNCIONES BÁSICAS TANGENTE, COTANGENTE, SECANTE Y COSECANTE DERIVADA DE LA FUNCIONES BÁSICAS TANGENTE, COTANGENTE, SECANTE Y COSECANTE Sugerencias para quien imparte el curso: En esta sección de la propuesta didáctica se parte de plantear un problema de optimización

Más detalles

Operadores aritméticos: suma (+), resta (-), producto (*), cociente (/) y potencia (**).

Operadores aritméticos: suma (+), resta (-), producto (*), cociente (/) y potencia (**). TEMA 3 TRANSFORMACIÓN DE DATOS En ocasiones es necesario crear nuevas variables a partir de otras ya existentes o modificarlas para poder explotarlas de forma más adecuada. Esto se realiza mediante las

Más detalles

Medidas de tendencia central

Medidas de tendencia central Medidas de tendencia central Medidas de tendencia central Medidas de Posición: son aquellos valores numéricos que nos permiten o bien dar alguna medida de tendencia central, dividiendo el recorrido de

Más detalles

Enteros (Z):..., -3, -2, -1, 0, 1, 2, 3,... Números enteros (positivos o negativos), sin decimales. Incluye a los naturales.

Enteros (Z):..., -3, -2, -1, 0, 1, 2, 3,... Números enteros (positivos o negativos), sin decimales. Incluye a los naturales. Tema 1: Números Reales 1.1 Conjunto de los números Naturales (N): 0, 1, 2, 3. Números positivos sin decimales. Sirven para contar. Enteros (Z):..., -3, -2, -1, 0, 1, 2, 3,... Números enteros (positivos

Más detalles

Sobre funciones reales de variable real. Composición de funciones. Función inversa

Sobre funciones reales de variable real. Composición de funciones. Función inversa Sobre funciones reales de variable real. Composición de funciones. Función inversa Cuando en matemáticas hablamos de funciones pocas veces nos paramos a pensar en la definición rigurosa de función real

Más detalles

Tema 2.- Formas Cuadráticas.

Tema 2.- Formas Cuadráticas. Álgebra. 004 005. Ingenieros Industriales. Departamento de Matemática Aplicada II. Universidad de Sevilla. Tema.- Formas Cuadráticas. Definición y representación matricial. Clasificación de las formas

Más detalles

ƒ : {(1, 4), (2, 5), (3, 6), (4, 7)}.

ƒ : {(1, 4), (2, 5), (3, 6), (4, 7)}. SECCIÓN 5. Funciones inversas 5. Funciones inversas Verificar que una función es la inversa de otra. Determinar si una función tiene una función inversa. Encontrar la derivada de una función inversa. f

Más detalles

El Teorema Fundamental del Álgebra

El Teorema Fundamental del Álgebra El Teorema Fundamental del Álgebra 1. Repaso de polinomios Definiciones básicas Un monomio en una indeterminada x es una expresión de la forma ax n que representa el producto de un número, a, por una potencia

Más detalles

1.1 CASO DE ESTUDIO: JUEGO DE CRAPS

1.1 CASO DE ESTUDIO: JUEGO DE CRAPS . CASO DE ESTUDIO: JUEGO DE CRAPS El juego de Craps se practica dejando que un jugador lance dos dados hasta que gana o pierde, el jugador gana en el primer lanzamiento si tiene como total 7 u, pierde

Más detalles

DEPARTAMENTO DE MATEMATICAS Y FISICA Matemáticas Discreta

DEPARTAMENTO DE MATEMATICAS Y FISICA Matemáticas Discreta DEPARTAMENTO DE MATEMATICAS Y FISICA Matemáticas Discreta SUCESIONES Y RELACIONES DE RECURRENCIA Esta última sección la dedicamos a presentar el concepto de recurrencia, que esta muy ligado al axioma de

Más detalles

QUÉ ES UNA FUNCIÓN? ESTRUCTURA DE UNA FUNCIÓN. La sintaxis de cualquier función es:

QUÉ ES UNA FUNCIÓN? ESTRUCTURA DE UNA FUNCIÓN. La sintaxis de cualquier función es: QUÉ ES UNA FUNCIÓN? Una función es una fórmula predefinida por Excel que opera sobre uno o más valores (argumentos) en un orden determinado (estructura). El resultado se mostrará en la celda donde se introdujo

Más detalles

Club GeoGebra Iberoamericano. 9 INECUACIONES 2ª Parte

Club GeoGebra Iberoamericano. 9 INECUACIONES 2ª Parte 9 INECUACIONES 2ª Parte INECUACIONES INTRODUCCIÓN Los objetivos de esta segunda parte del tema serán la resolución de inecuaciones con GeoGebra y la aplicación que tiene este software para la representación

Más detalles

Una función es una fórmu SINTAXIS DE UNA FUNCI. Ejemplo de sintaxis: escriben entre los paréntes Ejemplo: =SUMA(A1:C8) argumentos.

Una función es una fórmu SINTAXIS DE UNA FUNCI. Ejemplo de sintaxis: escriben entre los paréntes Ejemplo: =SUMA(A1:C8) argumentos. Universidad Alas Peruanas Escuela Profesional d HO ASIGNATURA : Computación ESCUELA : Administrac DOCENTE : Ing. Jorge LU Una función es una fórmu con uno o más valores y celda o será utilizado para SINTAXIS

Más detalles