Saltar al contenido

Integral definida de funciones polinómicas

Nuestros mejores programadores agotaron sus provisiones de café, investigando todo el tiempo por la resolución, hasta que Miriam encontró el hallazgo en Gogs así que ahora la compartimos aquí.

Solución:

Gelatina, $frac 30 7 = 4,29$

÷J$ŻUḅI

¡Pruébelo en línea!

Toma el polinomio como una lista de coeficientes en formato little-endian (es decir, el ejemplo es 7,2,5,4). Esto puede manejar cualquier grado (positivo) que desee, pero lo he limitado a 30 como dice la pregunta $0 < N < 30$

+2 bytes y una puntuación de $3.33$ si el polinomio debe tomarse en formato big-endian

Cómo funciona

÷J$ŻUḅI - Main link. Takes coeffs on the left and [a, b] on the right
  $     - To the coeffs:
 J      -   Yield [1, 2, 3, ..., N]
÷       -   Divide each coeff by the orders
   Ż    - Prepend 0
    U   - Reverse
     ḅ  - Calculate as polynomials, with x = a and x = b
      I - Reduce by subtraction

j, $frac3012aproximadamente 2,5$

[:-/[-p..p.[

Try it online!

-1 thanks to Bubbler

  • p.. Integral of a polynomial. Returns a list representing the solution polynomial.
  • p. Evaluate polynomial at given bounds.
  • [- Subtract from constant terms (makes both values negative).
  • -/ And subtract negative ending bound answer from negative starting bound answer.

Factor, $frac3056approx0.5357$

[ [ 1 + 3dup nip v^n first2 - swap / * ]  suma de índice de mapa]

¡Pruébelo en línea!

Toma los límites y los coeficientes a la inversa, por ejemplo 3 2 7 2 5 4 y devuelve un número racional, por ejemplo 108+2/3.

Para tomar las entradas como dadas y devolver un flotante, agregue un reversea negy un >float para obtener 75 bytes:

Factor, $frac3075=0,4$

[ reverse [ 1 + 3dup nip v^n first2 - swap / * ] map-index sum neg >float ]

¡Pruébelo en línea!

Recuerda que puedes difundir este ensayo si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *