PFH: La semana en Exercitium (21 de octubre de 2022)

Esta semana he publicado en Exercitium las soluciones de los siguientes problemas:

A continuación se muestran las soluciones.

1. Ternas pitagóricas

Una terna (x,y,z) de enteros positivos es pitagórica si x² + y² = z² y x < y < z.

Definir la función

tal que pitagoricas n es la lista de todas las ternas pitagóricas cuyas componentes están entre 1 y n. Por ejemplo,

[expand title=”Soluciones en Haskell”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium/blob/main/src/Ternas_pitagoricas.hs).
[/expand]

[expand title=”Soluciones en Python”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium-Python/blob/main/src/ternas_pitagoricas.py).
[/expand]

2. Ternas pitagóricas con suma dada

Una terna pitagórica es una terna de números naturales (a,b,c) tal que a<b<c y a²+b²=c². Por ejemplo (3,4,5) es una terna pitagórica.

Definir la función

tal que ternasPitagoricas x es la lista de las ternas pitagóricas cuya suma es x. Por ejemplo,

[expand title=”Soluciones con Haskell”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium/blob/main/src/Ternas_pitagoricas_con_suma_dada.hs).
[/expand]

[expand title=”Soluciones con Python”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium-Python/blob/main/src/ternas_pitagoricas_con_suma_dada.py).
[/expand]

3. Producto escalar

El producto escalar de dos listas de enteros xs y ys de longitud n viene dado por la suma de los productos de los elementos correspondientes.

Definir la función

tal que productoEscalar xs ys es el producto escalar de las listas xs e ys. Por ejemplo,

[expand title=”Soluciones en Haskell”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium/blob/main/src/Producto_escalar.hs).
[/expand]

[expand title=”Soluciones en Python”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium-Python/blob/main/src/producto_escalar.py).
[/expand]

4. Suma de elementos consecutivos

Definir la función

tal que sumaConsecutivos xs es la suma de los pares de elementos consecutivos de la lista xs. Por ejemplo,

[expand title=”Soluciones en Haskell”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium/blob/main/src/Suma_elementos_consecutivos.hs).
[/expand]

[expand title=”Soluciones en Python”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium-Python/blob/main/src/suma_elementos_consecutivos.py).
[/expand]

5. Representación densa de polinomios

Los polinomios pueden representarse de forma dispersa o densa. Por ejemplo, el polinomio 6x^4-5x^2+4x-7 se puede representar de forma dispersa por [6,0,-5,4,-7] y de forma densa por [(4,6),(2,-5),(1,4),(0,-7)].

Definir la función

tal que densa xs es la representación densa del polinomio cuya representación dispersa es xs. Por ejemplo,

[expand title=”Soluciones en Haskell”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium/blob/main/src/Representacion_densa_de_polinomios.hs).
[/expand]

[expand title=”Soluciones en Python”]

El código se encuentra en [GitHub](https://github.com/jaalonso/Exercitium-Python/blob/main/src/representacion_densa_de_polinomios.py)
[/expand]