Diferencia entre revisiones de «Ejercicios del proyecto Euler 2010»
De Software Libre para la Enseñanza y el Aprendizaje de las Matemáticas (2010-11)
| Línea 10: | Línea 10: | ||
| * [[Ejercicio 8: Hallar el primer número que es divisble por todos los números desde el 1 al 20]]. | * [[Ejercicio 8: Hallar el primer número que es divisble por todos los números desde el 1 al 20]]. | ||
| * [[Ejercicio 10: Encuentra la suma de todos los primos menores que 2000000]]. | * [[Ejercicio 10: Encuentra la suma de todos los primos menores que 2000000]]. | ||
| + | * [[Ejercicio 29: ¿Cuántos términos distintos hay en la secuencia generada por a^b cuando 2<=a,b<=100?]]. | ||
| * [[Ejercicio 48: Encuentra los últimos 10 dígitos de la serie, 1^1 + 2^2 + 3^3 + ... + 1000^1000]]. | * [[Ejercicio 48: Encuentra los últimos 10 dígitos de la serie, 1^1 + 2^2 + 3^3 + ... + 1000^1000]]. | ||
| − | + | ||
|     Solución: |     Solución: | ||
|     (%i1)terminos(n):= block([lista], |     (%i1)terminos(n):= block([lista], | ||
Revisión del 23:09 5 may 2010
En esta sección se encuentran ejercicios del proyecto Euler realizados con los sistemas de software libre.
- Ejercicio 2: Sumar los términos pares de la sucesión de Fibonacci que no superen los 4000000.
- Ejercicio 3: Calcular el mayor factor primo de un número compuesto.
- Ejercicio 4: Calcular el mayor palíndromo producto de números de 3 cifras.
- Ejercicio 5: Buscar el número primo que ocupa la posición 10001 en la secuencia de números primos.
- Ejercicio 6: Diferencia entre el cuadrado de la suma de los primeros cien números y la suma de los cuadrados.
- Ejercicio 7: Encontrar el mcm de los numeros del 1 al 20.
- Ejercicio 8: Hallar el primer número que es divisble por todos los números desde el 1 al 20.
- Ejercicio 10: Encuentra la suma de todos los primos menores que 2000000.
- [[Ejercicio 29: ¿Cuántos términos distintos hay en la secuencia generada por a^b cuando 2<=a,b<=100?]].
- Ejercicio 48: Encuentra los últimos 10 dígitos de la serie, 1^1 + 2^2 + 3^3 + ... + 1000^1000.
  Solución:
  (%i1)terminos(n):= block([lista],
       lista:[],
       (for a from 2 thru n do 
               (for b from 2 thru n do 
                          (if (member(a^b,lista))
                              then (lista)
                              else (lista: cons(a^b, lista)))))
      (length (lista)))$
  (%01)done(9183)
  Nota: No me aparece el enlace al grabar el enunciado del ejercicio, por ello coloco aquí la solución.
