Aritmética en Haskell
|
|
- María Teresa Alvarado Gutiérrez
- hace 7 años
- Vistas:
Transcripción
1 Aritmética en Haskell Taller de Álgebra I Primer cuatrimestre de 2014
2 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente.
3 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos!
4 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos! Esto corresponde a programar algún algoritmo de división...
5 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos! Esto corresponde a programar algún algoritmo de división... Alguna idea?
6 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos! Esto corresponde a programar algún algoritmo de división... Alguna idea? Idea: Para calcular div n m podemos usar la fórmula recursiva: { 0 si n < m div n m = 1 + div (n-m) m si n m
7 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos! Esto corresponde a programar algún algoritmo de división... Alguna idea? Idea: Para calcular div n m podemos usar la fórmula recursiva: { 0 si n < m div n m = 1 + div (n-m) m si n m Cómo sería el código Haskell?
8 Algoritmo de división Para obtener el cociente y resto entre dos números enteros, tenemos las funciones div y mod, respectivamente. Sin embargo, no necesitamos que estas funciones sean primitivas, sino que... podemos programarlas nosotros mismos! Esto corresponde a programar algún algoritmo de división... Alguna idea? Idea: Para calcular div n m podemos usar la fórmula recursiva: { 0 si n < m div n m = 1 + div (n-m) m si n m Cómo sería el código Haskell? Cómo calculamos el resto?
9 Algoritmo de Euclides El Algoritmo de Euclides calcula el máximo común divisor entre dos números a, b Z +.
10 Algoritmo de Euclides El Algoritmo de Euclides calcula el máximo común divisor entre dos números a, b Z +. Recordemos el algoritmo en su versión imperativa: 1 r 0 := a; 2 r 1 := b; 3 Mientras r i 0, hacer: 4 r i+1 := r i 1 mod r i ; 5 i := i + 1; 6 Fin 7 El resultado es r i 1 ;
11 Algoritmo de Euclides Cómo sería en Haskell?
12 Algoritmo de Euclides Cómo sería en Haskell? mcd :: Int -> Int -> Int
13 Algoritmo de Euclides Cómo sería en Haskell? mcd :: Int -> Int -> Int mcd a 0 = a
14 Algoritmo de Euclides Cómo sería en Haskell? mcd :: Int -> Int -> Int mcd a 0 = a mcd a b = mcd b (mod a b)
15 Algoritmo de Euclides Cómo sería en Haskell? mcd :: Int -> Int -> Int mcd a 0 = a mcd a b = mcd b (mod a b) El peor caso del algoritmo se obtiene cuando a y b son dos números consecutivos de la sucesión de Fibonacci (Lamé, ).
16 Algoritmo de Euclides Cómo sería en Haskell? mcd :: Int -> Int -> Int mcd a 0 = a mcd a b = mcd b (mod a b) El peor caso del algoritmo se obtiene cuando a y b son dos números consecutivos de la sucesión de Fibonacci (Lamé, ). En general, el número de divisiones que realiza el algoritmo nunca supera 5 veces el número de dígitos de a y b, con lo cual la cantidad de llamadas recursivas está acotada por 5 log 10 (a).
17 Cambio de base en Haskell Problema: Dados a, b Z + con b > 1, escribir el número a en base b.
18 Cambio de base en Haskell Problema: Dados a, b Z + con b > 1, escribir el número a en base b. Por ejemplo... 1 Si a = 10 y b = 2, entonces la respuesta es Si a = 17 y b = 3, entonces la respuesta es Si a = 145 y b = 10, entonces la respuesta es
19 Cambio de base en Haskell Problema: Dados a, b Z + con b > 1, escribir el número a en base b. Por ejemplo... 1 Si a = 10 y b = 2, entonces la respuesta es Si a = 17 y b = 3, entonces la respuesta es Si a = 145 y b = 10, entonces la respuesta es Cómo lo haríamos en Haskell si representamos la salida como una lista de enteros?
20 Cambio de base en Haskell Problema: Dados a, b Z + con b > 1, escribir el número a en base b. Por ejemplo... 1 Si a = 10 y b = 2, entonces la respuesta es Si a = 17 y b = 3, entonces la respuesta es Si a = 145 y b = 10, entonces la respuesta es Cómo lo haríamos en Haskell si representamos la salida como una lista de enteros? Cómo cambiamos el programa si queremos representar la salida como una cadena de caracteres?
21 Cambio de base en Haskell Problema: Dados a, b Z + con b > 1, escribir el número a en base b. Por ejemplo... 1 Si a = 10 y b = 2, entonces la respuesta es Si a = 17 y b = 3, entonces la respuesta es Si a = 145 y b = 10, entonces la respuesta es Cómo lo haríamos en Haskell si representamos la salida como una lista de enteros? Cómo cambiamos el programa si queremos representar la salida como una cadena de caracteres? Qué problema tiene esta representación si luego queremos usar el resultado para cálculos posteriores?
22 Ejercicios 1 Consideremos la sucesión t 1, t 2,..., tal que t n es la cantidad de llamadas recursivas del Algoritmo de Euclides cuando se ejecuta con a = F n y b = F n 1 (donde F n representa el n-ésimo número de Fibonacci). Escribir un programa que tome como parámetro un entero n y que retorne t n. 2 Graficar la sucesión t 1, t 2,... definida en el ejercicio anterior. 3 Escribir un programa que tome un entero b > 1 y un entero a representado en base b (expresado como una lista de enteros) y que retorne un Int con el entero a. 4 Escribir un programa que tome un entero b > 1 y un entero a representado en base b (expresado como una lista de enteros) y que retorne una lista de enteros con el entero representado en base 10.
Manos a la obra: Recursión, división y listas
Manos a la obra: Recursión, división y listas Taller de Álgebra I Cuatrimestre de verano de 2015 Calentando motores La clase pasada vimos ejemplos de definiciones recursivas. Hoy vamos a continuar con
Más detallesAlgoritmo de Euclides y ecuaciones de congruencia
Algoritmo de Euclides y ecuaciones de congruencia Taller de Álgebra I Primer cuatrimestre de 2017 Algoritmo de Euclides El algoritmo de Euclides calcula el máximo común divisor entre dos números a, b Z.
Más detallesDivisibilidad y congruencia
Divisibilidad y congruencia Taller de Álgebra I Verano 2017 Algoritmo de la división Teorema Dados a, d Z, d 0, existen únicos q, r Z tales que a = qd + r, 0 r < d. Idea de la demostración: (caso a 0,
Más detallesListas y Recursión. Taller de Álgebra I. Primer Cuatrimestre de 2015
Listas y Recursión Taller de Álgebra I Primer Cuatrimestre de 2015 Un nuevo tipo: Listas Tipo Lista Las listas pueden contener elementos de cualquier tipo (incluso listas) [1] :: [Integer] [1, 2] :: [Integer]
Más detallesNúmeros primos y criterios de divisibilidad
Números primos y criterios de divisibilidad Taller de Álgebra I 1er cuatrimestre de 2014 Verificando si un número es primo Ejercicio: ( para hacer ahora!) Escribir una función que determine si un número
Más detallesEuclides Extendido y Teorema Chino del Resto
Euclides Extendido y Teorema Chino del Resto Taller de Álgebra I Segundo cuatrimestre de 2013 Lema de Bézout Recordemos este lema: Lema (Étienne Bézout) Sean a, b Z, alguno distinto de 0. Entonces existen
Más detallesALGEBRA I - Práctica N 4 (Primera parte) - Primer cuatrimestre de Números enteros
ALGEBRA I - Práctica N 4 (Primera parte) - Primer cuatrimestre de 2002 Números enteros Ejercicio. Dados a, b y c números enteros, decidir cuáles de las siguientes afirmaciones son verdaderas y cuáles son
Más detallesAlgoritmo de Euclides
Algoritmo de Euclides Melanie Sclar Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires AED III Melanie Sclar (UBA) Algoritmo de Euclides AED III 1 / 21 Ejercicio 2.8 de la práctica Ejercicio
Más detallesIntroducción a la Matemática Discreta
Primera práctica Objetivos El objetivo de esta práctica es observar la rápida convergencia del algoritmo de Euclides (Alejandría 300 a.c.) para hallar el máximo común divisor de dos números enteros a y
Más detallesAritmética entera. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Aritmética entera 1 / 15
Aritmética entera AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Aritmética entera 1 / 15 Objetivos Al finalizar este tema tendréis que: Calcular el máximo común divisor de
Más detalles3er Encuentro de Educación en
3er Encuentro de Educación en Cienciadela 3er Encuentro de Educación en Cienciadela Formación de Profesores de Ciencia i de la 3er Encuentro de Educación en Cienciadela Formación de Profesores Vinculo
Más detallesEl Algoritmo de Euclides
El Algoritmo de Euclides Pablo L. De Nápoli Departamento de Matemática Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires 25 de abril de 2014 Pablo L. De Nápoli (Departamento de Matemática
Más detalles1.1 Define un operador ( ) que devuelva True si y solo si tan solo uno de sus argumentos es True. Por ejemplo:? (3 > 2) (2 > 5)
1 Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Práctica 1 1.1 Define un operador ( ) que devuelva True si y solo si tan solo uno de sus argumentos es True. Por ejemplo:?
Más detallesNúmeros primos en Haskell
Números primos en Haskell Taller de Álgebra I Segundo cuatrimestre de 2014 Logo data Direccion = Norte Sur Este Oeste deriving Show type Tortuga = ( Pos, Direccion ) type Pos = (Int, Int ) Ejercicios 1
Más detallesUNIDAD 1. Números naturales y enteros 1º ESO. Contenidos, objetivos y criterios de evaluación DEPARTAMENTO DE MATEMÁTICAS
UNIDAD 1 Números naturales y enteros 1º ESO Contenidos, objetivos y criterios de evaluación ÍNDICE DE LA UNIDAD 1. Los números naturales. Definición y propiedades. 2. Un ejemplo de sistema de numeración.
Más detallesRelaciones de orden. Definición 1. Llamamos conjunto ordenado a un par (E, ) donde E es un conjunto y es un orden definido en E
Relaciones de orden Diremos que una relación R es de orden si verifica las propiedades reflexiva, antisimétrica y transitiva. Generalmente usaremos la notación en lugar de R para expresar relaciones de
Más detallesDivisibilidad y congruencia
de los ejercicios de la clase 8 Divisibilidad y congruencia Taller de Álgebra I Segundo cuatrimestre de 2016 Introducción A continuación les presentamos algunas soluciones para los ejercicios de la clase
Más detallesAlgoritmos en teoría de números
Algoritmos en teoría de números IIC2283 IIC2283 Algoritmos en teoría de números 1 / 92 Para recordar: aritmética modular Dados dos números a, b Z, si b > 0 entonces existen α, β Z tales que 0 β < b y a
Más detallesRelació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 2016-2017 1º Grado en Informática Práctica 3: Recursividad, Ficheros y Argumentos en Línea de órdenes Objetivos
Más detallesTema 1 Aritmética entera
Tema 1 Aritmética entera Tema 1 Aritmética entera 1.1 Los números enteros 1.1.1 Relaciones de orden Una relación en un conjunto A es un subconjunto R del producto cartesiano AxA. Se dice que dos elementos
Más detallesDivisibilidad (en N = N {0})
Divisibilidad (en N = N {0}) Dados dos números naturales a y c, se dice que c es un divisor de a si existe q N tal que a = q c (es decir, si en la división a c el resto es 0). c a significa que c es divisor
Más detallesTipos de datos algebraicos
Tipos de datos algebraicos Taller de Álgebra I Segundo cuatrimestre de 2013 Programación funcional Recordemos que un tipo de datos es un conjunto dotado con una serie de operaciones sobre los elementos
Más detallesEstructura de datos y de la información Boletín de problemas - Tema 9
Estructura de datos y de la información Boletín de problemas - Tema 9 1. Dada la siguiente función recursiva: void F(char c) { if (( A
Más detallesGuia para el exámen parcial 1 - unas soluciones
Matemáticas elementales, Demat-UG, ago-dic, 2017 Guia para el exámen parcial 1 - unas soluciones Fecha del exámen: miercoles, 4 oct, 2017. Profesor: Gil Bor, CIMAT. Definiciones: La representación de a
Más detallesPROGRAMACION ALGORITMOS Y ESTRUCTURAS DE DATOS PRACTICA N 4
PROGRAMACION ALGORITMOS Y ESTRUCTURAS DE DATOS PRACTICA N 4 Ámbito de las variables. Utilización de punteros 1. Dados los siguientes programas. Indique las salidas por pantalla que generan. 1.a void Calculo(
Más detallesCapitulo 4. Introducción a Haskell. Instalación de Haskell. Primeros pasos con Haskell.
Capitulo 4 Introducción a Haskell Es un software libre, fácil de obtener y de instalar, y que además tiene muchísimo material de lectura para descarga gratuita en Internet. Es por estos motivos que fue
Más detallesLa recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados.
RECURSIVIDAD La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados. Los algoritmos recursivos ofrecen soluciones estructuradas, modulares
Más detallesOCW-V.Muto Sistemas de numeración Cap. III CAPITULO III. SISTEMAS DE NUMERACION 1. REPRESENTACION DE LA INFORMACION
CAPITULO III. SISTEMAS DE NUMERACION 1. REPRESENTACION DE LA INFORMACION El sistema de numeración usado habitualmente es el decimal, de base 10, que no es adecuado para ser manejado por el ordenador, fundamentalmente
Más detallesÁlgebra I Práctica 3 - Números enteros (Parte 1)
Divisibilidad Álgebra I Práctica 3 - Números enteros (Parte 1 1. Decidir cuáles de las siguientes afirmaciones son verdaderas para todo a, b, c Z i a b c a c y b c, ii 4 a a, iii a b a ó b, iv 9 a b 9
Más detallesEl algoritmo de Euclides con residuos de menor valor absoluto
Miscelánea Matemática 6 05) -9 SMM El algoritmo de Euclides con residuos de menor valor absoluto Jesús Efrén Pérez Terrazas, Luis Felipe Solís Sansores, Emmanuel Vázquez Cetina Facultad de Matemáticas
Más detallesPráctica 2 - Ejercicio 2.8
Algoritmos y Estructura de Datos III Facultad de Ciencias Exactas y Naturales, Universidad de Buenos Aires 27 de Marzo de 2013 2.8 - Euclides 2.8. a. Escribir el algoritmo de Euclides para calcular el
Más detallesÍndice La División Entera El Máximo Común Divisor Algoritmo de Euclides Ecuaciones Diofánticas Factorización. Aritmética I.
Leandro Marín Septiembre 2010 Índice La División Entera El Máximo Común Divisor Algoritmo de Euclides Ecuaciones Diofánticas Factorización Los Números Enteros Llamaremos números enteros al conjunto infinito
Más detalles4 de Noviembre de 2010 Departamento de Matemáticas
Prototipo de Examen ALM 1er cuatrimestre Universidad de Alcalá 4 de Noviembre de 2010 Departamento de Matemáticas Apellidos, Nombre: NOTA: Durante la prueba no se podra hacer uso de ningún dispositivo
Más detallesWe might call it the grandaddy of all algorithms, because it is the oldest nontrivial algorithm that has survived to the present day. D. E.
We might call it the grandaddy of all algorithms, because it is the oldest nontrivial algorithm that has survived to the present day. D. E. Knuth, 1981 Pregunta: Dados dos números naturales no nulos, determinar
Más detallesEcuaciones de recurrencia. Abraham Sánchez López FCC/BUAP Grupo MOVIS
Ecuaciones de recurrencia Abraham Sánchez López FCC/BUAP Grupo MOVIS Introducción, I Cuando se analiza la complejidad de un algoritmo recursivo, es frecuente que aparezcan funciones de costo también recursivas,
Más detallesRecursión. Capítulo 4
Recursión Capítulo 4 Introducción La recursión o recursividad es un concepto amplio, con muchas variantes, y difícil de precisar con pocas palabras.. Actividades Cotidianas; fotografía donde se observa
Más detallesEcuaciones Diofánticas
2 Ecuaciones Diofánticas (c) 2011 leandromarin.com 1. Introducción Una ecuación diofántica es una ecuación con coeficientes enteros y de la que tenemos que calcular las soluciones enteras. En este tema
Más detalles1. Escribir un algoritmo que resuelva A-B*((B+C) / (C-C 2 ). Considerar que no es posible la división por 0, detectar este caso y salvar el error.
T.P ALGORITMOS 1. Escribir un algoritmo que resuelva A-B*((B+C) / (C-C 2 ). Considerar que no es posible la división por 0, detectar este caso y salvar el error. 2. Escribir un algoritmo que lea tres números
Más detallesSecuencias Calculadas
Secuencias Calculadas Estructuras de Iteración y Recursividad Prof. Hilda Contreras Programación 1 hildac.programacion1@gmail.com Secuencias Calculadas Se aplican a los problemas donde los elementos de
Más detallesRecursividad Definición
Recursividad Definición Un procedimiento o función se dice recursivo si durante su ejecución se invoca directa o indirectamente a sí mismo. Esta invocación depende al menos de una condición que actúa como
Más detallesAritmética Entera MATEMÁTICA DISCRETA I. F. Informática. UPM. MATEMÁTICA DISCRETA I () Aritmética Entera F. Informática.
Aritmética Entera MATEMÁTICA DISCRETA I F. Informática. UPM MATEMÁTICA DISCRETA I () Aritmética Entera F. Informática. UPM 1 / 18 Estructura de los números enteros Estructura de los números enteros Definición
Más detallesARITMÉTICA ENTERA LOS NÚMEROS ENTEROS. = {..., n,..., 3, 2, 1, 0, 1, 2, 3,..., n,...} (Zahlen, en alemán, números)
LOS NÚMEROS ENTEROS ARITMÉTICA ENTERA = {..., n,..., 3, 2, 1, 0, 1, 2, 3,..., n,...} (Zahlen, en alemán, números) Recordamos la estructura de sus propiedades aritméticas la relación de orden usual, compatible
Más detallesAritmética modular. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Aritmética modular 1 / 16
Aritmética modular AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Aritmética modular 1 / 16 Objetivos Al finalizar este tema tendréis que: Saber qué es Z n. Saber operar en
Más detallesEnteros Primera parte.
Capítulo 3 Enteros Primera parte. Die ganzen Zahlen hat der liebe Gott gemacht, alles andere ist Menschenwerk. (Dios hizo los números enteros, todo lo demás es obra del hombre.) Leopold Kronecker (1823-1891),
Más detallesÁlgebra I Práctica 5 - Polinomios
Álgebra I Práctica 5 - Polinomios 1. Para los siguientes z C, hallar Rez), Imz), z, Rez 1 ), Imz 1 ), Re i z) e Imi z). i) z = 2 + i)1 + 3 i). ii) z = 5 i1 + i) 4. iii) z = 2 + 3 i) 2 1 3 i). iv) z = i
Más detalles11 Secuencias, Series y Probabilidad
Programa Inmersión, Verano 06 Notas escritas por Dr. M Notas del cursos. Basadas en los prontuarios de MATE 300 y MATE 303 Clase #0: lunes, 7 de junio de 06. Secuencias, Series y Probabilidad. Continuación:
Más detallesMecanismo de Reducción
Mecanismo de Reducción Taller de Álgebra I 1er Cuatrimestre 2017 Repaso: Qué vimos hasta ahora? Programar para qué? Implementar algoritmos que solucionen problemas. Pensamiento algorítmico Ver los problemas
Más detallesÁlgebra y Matemática Discreta
Álgebra y Matemática Discreta Sesión de Teoría 1 (c) 2013 Leandro Marín, Francisco J. Vera, Gema M. Díaz 16 Sep 2013-22 Sep 2013 Los Números Enteros El Conjunto Z Vamos a empezar por la aritmética más
Más detallesPRUEBA DE FUNDAMENTOS DE INFORMÁTICA. 1.- Qué se mostrará por pantalla tras ejecutar el código correspondiente a la función main?
UNIVERSIDD PONTIFICI COMILLS ESCUEL TECNIC SUPERIOR DE INGENIERI (I.C..I.) DEPRTMENTO DE SISTEMS INFORMÁTICOS TITULCIÓN: INGENIERO TÉCNICO INDUSTRIL PRUEB DE FUNDMENTOS DE INFORMÁTIC Nombre Grupo Preguntas
Más detallesIntroducción al Análisis del Coste de Algoritmos
1/11 Introducción al Análisis del Coste de Algoritmos Josefina Sierra Santibáñez 7 de noviembre de 2017 2/11 Eficiencia de un Algoritmo Analizar un algoritmo significa, en el contexto de este curso, predecir
Más detallesESCUELA PREPARATORIA OFICIAL NO.16 MATERÍA: PENSAMIENTO NUMÉRICO Y ALGEBRAICO I
ARITMÉTICA 1. Números naturales 2. Divisibilidad 3. Números enteros 4. Números decimales 5. Fracciones y números racionales 6. Proporcionalidad 7. Sistema métrico decimal 8. Sistema sexagesimal 9. Números
Más detallesValentín Moreno Programación en FORTRAN ESQUEMA DE SELECCIÓN
ESQUEMA DE SELECCIÓN EJERCICIO 1 Escribir un programa en Fortran que permita introducir dos enteros, A y B, por teclado, y calcule y muestre en pantalla su suma y su producto, con un texto explicativo.
Más detallesConjuntos Numéricos I
Conjuntos Numéricos I En el pasado las matemáticas eran consideradas como la ciencia de la cantidad, referida a las magnitudes (como en la geometría), a los números (como en la aritmética), o a la generalización
Más detallesDIVISIBILIDAD: Resultados
DIVISIBILIDAD: Resultados Página 1 de 9 Se enumeran a continuación, como referencia, ciertos resultados sobre divisibilidad. 1.1 Definición. Dados los enteros a y b, se dice que a divide a b (Notación:
Más detallesIntroducción a la Teoría de Números
Introducción a la Teoría de Números Elaborado por: Jeff Maynard Guillén Eliminatoria II Julio, 2011 Introducción a la Teoría de Números A manera de repaso vamos a recordar algunos conjuntos N = {1, 2,
Más detallesBloque 1. Conceptos y técnicas básicas en programación
Bloque 1. Conceptos y técnicas básicas en programación 1. Introducción 2. Datos y expresiones. Especificación de algoritmos 3. Estructuras algorítmicas básicas 4. Iteración y recursión 5. Iteración y recursión
Más detallesRECORDAR TIPOS DE DATOS
RECORDAR TIPOS DE DATOS VARIABLES: OBJETO CUYO valor cambia: A510 nombres NOTAS Int A=0; float B=1; CONSTANTES: OBJETO cuyo valor no cambia PI= 3.14159 LAS COMAS NO SE PERMITEN Int PI=3.1415 EXPRESIONES:
Más detallesResolución de Problemas y Algoritmos Segundo cuatrimestre de 2015 Clase 18: Recursión - Problemas clásicos
Resolución de Problemas y Algoritmos Segundo cuatrimestre de 2015 Clase 18: Recursión - Problemas clásicos Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la Computación
Más detallesTeoría de números. Herbert Kanarek Universidad de Guanajuato Enero Junio Eugenio Daniel Flores Alatorre
Teoría de números Herbert Kanarek Universidad de Guanajuato Enero Junio 2012 Eugenio Daniel Flores Alatorre Bibliografía The theory of numbers Ivan Nivan H. Zuckerman H. Montgomery Temario I. Divisibilidad
Más detallesAritmética. 7. Si MCD(a; ab)=b, cuántos valores toma ab? 8. Si el MCD(abaa; ac(a 1)(a+2))=28, además MCM(abaa; ac(a 1)(a+2))=...
MCD - MCM I 1. Si MCD(360; abc)=18, calcule la cantidad de los posibles valores que toma abc. A) 18 B) 16 C) 20 D) 21 E) 30 2. Se cumple que MCD(k 2 ; mn)=16 y MCM(k 2 ; mn)=a9(a+1) Halle el valor de k+m+n.
Más detallesEnteros Primera parte.
Capítulo 3 Enteros Primera parte. Die ganzen Zahlen hat der liebe Gott gemacht, alles andere ist Menschenwerk. (Dios hizo los números enteros, todo lo demás es obra del hombre.) Leopold Kronecker (1823-1891),
Más detallesGuardas y Tipos de datos
Guardas y Tipos de datos Taller de Álgebra I 1er Cuatrimestre 2017 Definiciones de funciones por casos Podemos usar guardas para definir funciones por casos: f (n) = { 1 si n = 0 0 si no f n n == 0 = 1
Más detallesa) Si ch tiene el valor X y numero el valor 5, cuál sería el efecto de ejecutar cada una de las siguientes llamadas al procedimiento:
RELACION 2 DPTO. LENGUAJES Y CIENCIAS DE LA COMPUTACIÓN ESCCUELA TÉCNICA SUPERIOR DE INGENIEROS EN TELECOMUNICACIONES UNIVERSIDAD DE MÁLAGA SUBALGORITMOS 1- Considera el siguiente procedimiento: Algoritmo
Más detallesTipos de datos en Haskell
Tipos de datos en Haskell Ejercicios 1. Tipos enumerados Cuando los distintos valores que debemos distinguir en un tipo son finitos, entonces podemos enumerar todos los valores distintos para el tipo.
Más detallesIntroducción a la Matemática Discreta
Introducción a la Matemática Discreta Aritmética Entera Luisa María Camacho Camacho Introd. a la Matemática Discreta 1 / 36 Introducción a la Matemática Discreta Temario Tema 1. Teoría de Conjuntos. Tema
Más detallesÁlgebra y Matemática Discreta
Álgebra y Matemática Discreta Sesión de Teoría 3 (c) 2013 Leandro Marín, Francisco J. Vera, Gema M. Díaz 23 Sep 2013-29 Sep 2013 Congruencias Definición Congruencia Módulo n Sea n 1 un número entero. Diremos
Más detallesDra. Jessica Andrea Carballido
Dra. Jessica Andrea Carballido jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Problema Diseño de la solución Dividir y conquistar Implementación de los
Más detallesAlgoritmos y Estructuras de Datos: Introducción a la Recursión de Programas. Guillermo Román Díez
Algoritmos y Estructuras de Datos: Introducción a la Recursión de Programas Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2015-2016 Guillermo Román, UPM AED: Introducción
Más detallesÁlgebra I Práctica 5 - Polinomios
Álgebra I Práctica 5 - Polinomios Números complejos 1. Para los siguientes z C, hallar Re(z), Im(z), z, Re(z 1 ), Im(z 1 ), Re( i z) e Im(i z). i) z = (2 + i)(1 + 3 i). ii) z = 5 i(1 + i) 4. iii) z = (
Más detallesO bien si queremos calcular el error aproximado porcentual lo hacemos:
En situaciones reales es común que no se conoce el valor verdadero del resultado: las mediciones dependen del instrumento y del procedimiento de medición; los métodos numéricos se aplican, cuando no se
Más detallesTeoría de Números. Orlando Ochoa Castillo 25 de septiembre de 2011
Teoría de Números Orlando Ochoa Castillo 25 de septiembre de 2011 1. Divisibilidad La Teoría de Números es un tema muy importante en las Olimpiadas de Matemáticas, esta área estudia el comportamiento de
Más detallesCapítulo IV. Divisibilidad y Primalidad. Algoritmo de la División
Capítulo IV Divisibilidad y Primalidad IV.1. Algoritmo de la División (Aquí se enuncia con la posibilidad de divisor negativo y la prueba incluye el caso de dividendo negativo.) Teorema 1 Dados m, d Z,
Más detallesPráctica 5.- Recursividad
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Programación Avanzada en Java Prim. 2009 Práctica 5.- Recursividad Datos de la práctica Fecha 6 de marzo de 2009 Conceptos
Más detallesÁlgebra I Práctica 5 - Polinomios
Números complejos Álgebra I Práctica 5 - Polinomios 1. Para los siguientes z C, hallar Re(z), Im(z), z, Re(z 1 ), Im(z 1 ), Re( i z) e Im(i z). i) z = (2 + i)(1 + 3 i). ii) z = 5 i(1 + i) 4. iii) z = (
Más detallesComplejidad de algoritmos recursivos
Tema 3. Complejidad de algoritmos recursivos 1. INTRODUCCIÓN... 1 CLASIFICACIÓN DE FUNCIONES RECURSIVAS... 1 DISEÑO DE FUNCIONES RECURSIVAS... 2 2. VENTAJAS E INCONVENIENTES DE LA RECURSIVIDAD... 4 3.
Más detallesLección 4.2. Sucesiones Infinitas y Notación de Suma. Prof. José G. Rodríguez Ahumada 1 de 18
Lección 4.2 Sucesiones Infinitas y Notación de Suma Prof. José G. Rodríguez Ahumada 1 de 18 Referencia del Texto: Actividades Sección 10.1 Sucesiones infinitas y notación de suma; ejercicios de práctica:
Más detallesDulcinea Raboso 18 de Noviembre, 2017
www.estalmat.org Dulcinea Raboso 8 de Noviembre, 07 Fracciones continuas I Problema Queremos embaldosar una habitación rectangular utilizando exclusivamente baldosas cuadradas, no necesariamente iguales.
Más detallesDIVISIBILIDAD NÚMEROS NATURALES
DIVISIBILIDAD NÚMEROS NATURALES MÚLTIPLOS Un número a es múltiplo de otro b cuando es el resultado de multiplicarlo por otro número c. a = b c Ejemplo: 12 es múltiplo de 2, ya que resulta de multiplicar
Más detallesUna introducción al análisis dinámico. Análisis del algoritmo de Euclides para enteros.
Una introducción al análisis dinámico. Análisis del algoritmo de Euclides para enteros. Eda Cesaratto Universidad Nacional de Gral. Sarmiento and CONICET (Argentina) Jornadas de Combinatoria Analítica
Más detallesÁlgebra y Matemática Discreta
Álgebra y Matemática Discreta Sesión de Teoría 3 (c) 2013 Leandro Marín, Francisco J. Vera, Gema M. Díaz 23 Sep 2013-29 Sep 2013 Congruencias Definición Congruencia Módulo n Sea n 1 un número entero. Diremos
Más detallesTemario. Tipos de recursión. Eficiencia y recursión
RECURSION Temario Tipos de recursión Eficiencia y recursión Tipos de RECURSION Según desde donde se realice el llamado recursivo: Directa: la función se llama a sí misma. Indirecta: la función A llama
Más detallesExponencial, lineal y logarítmico
Exponencial, lineal y logarítmico Se verán en este apartado ejemplos de procesos que cursan en un número de pasos exponencial, lineal o logarítmico en la talla de la entrada. Para ilustrar estos procesos
Más detalles22/03/2012. La división es una de las operaciones menos frecuentes. Revisemos la forma de ejecutarla
Arquitectura de Computadoras Primavera 2012 La división es una de las operaciones menos frecuentes. Revisemos la forma de ejecutarla 1 0 0 1 Cociente Divisor 1 0 0 0 1 0 0 1 0 1 0 Dividendo - 1 0 0 0 1
Más detallesLas demostraciones de las propiedades (1) y (2) quedan a cargo del estudiante.
Sección II CONCEPTOS PREVIOS.. Definición.. Se dice que un número entero! es divisible por otro entero! (distinto de cero) si existe un tercer entero! tal que! =!!. Se expresa como!!, que se lee! es divisible
Más detallesMEL* Ejercicios - Inducción 1
Ejercicios 8. Teo: Principio del Buen Orden Principio de inducción. ( ) Supóngase el Principio del Buen Orden. Sea p un predicado sobre nat tal que p.0 y ( n:nat : p.n p(n+)}. Se quiere demostrar que también
Más detallesTrabajo Práctico Nº 13 Tema: RECURSIVIDAD
1 Dado el siguiente método recursivo: int puzzle(int base, int limite) if(base > limite) return -1; if(base == limite) return (base * puzzle(base + 1, limite)); a) Identificar: el o los casos bases del
Más detalles3.3 (parte II) División de números cardinales
3.3 (parte II) División de números cardinales División de Números Cardinales Modelo de repartición el conjunto de elementos representado por el dividendo se reparte en un número de subconjuntos igual al
Más detallesUNIDAD 2. MÚLTIPLOS Y DIVISORES
UNIDAD. MÚLTIPLOS Y DIVISORES. MÚLTIPLOS DE UN NÚMERO.. DIVISORES DE UN NÚMERO. 3. NÚMEROS PRIMOS Y NÚMEROS COMPUESTOS. 4. CRITERIOS DE DIVISIBILIDAD. 5. MÍNIMO COMÚN MÚLTIPLO. 6. MÁXIMO COMÚN DIVISOR..
Más detallesopen green road Guía Matemática MÚLTIPLOS Y DIVISORES profesor: Nicolás Melgarejo .cl
Guía Matemática MÚLTIPLOS Y DIVISORES profesor: Nicolás Melgarejo.cl 1. Múltiplos y divisibilidad Se dice que un número a es divisible por otro b si al dividir a con b, el residuo o resto es cero, dicho
Más detallesProgramación 2. Lección 3. Introducción a la recursividad
Programación 2 Lección 3. Introducción a la recursividad 1 1. Definiciones recursivas Número natural y número entero Múltiplos de 7 Secuencia de datos Factorial de un número natural Sucesión de Fibonacci
Más detallesEjercicio 4. Graficar los siguientes conjuntos en el plano complejo:
ALGEBRA I - Práctica N 5 - Primer cuatrimestre de 2002 Números complejos Ejercicio 1. Im(z 1 ): En cada uno de los siguientes casos hallar Re(z), Im(z), z, Re(z 1 ) e i) z = (1 + 2i) + i.(2 + i) ii) z
Más detallesÁlgebra I Práctica 7 - Polinomios
FCEyN - UBA - 2do cuatrimestre 2016 Generalidades Álgebra I Práctica 7 - Polinomios 1. Calcular el grado y el coeficiente principal de f Q[X] en los casos i) f = (4X 6 2X 5 + 3X 2 2X + 7) 77. ii) f = (
Más detallesUniv. Nacional de Colombia, Medellín Escuela de Matemáticas Matemáticas Discretas Marzo 8, Soluciones Taller 5
Univ. Nacional de Colombia, Medellín Escuela de Matemáticas Matemáticas Discretas Marzo 8, 00 Soluciones Taller 5. Pruebe por inducción que n 3 = 3 + 3 + 3 3 + + (n ) 3 + n 3 = = ( ) n(n + ) Caso base:
Más detalles6. Estructuras básicas de control 1. Pseudocódigo
6. Estructuras básicas de control 1 Acciones Pseudocódigo Slide 1 Estructuras de control Secuencia Selección simple (si... entonces... ) doble (si... entonces... si no... ) múltiple (según el caso... )
Más detallesAlgoritmos 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