Buscar este blog

Aviso

El autor de éste blog no se hace responsable de los posibles daños o perdidas de información, que pudieran ocasionarse en su sistema o su vida por la aplicación de la información aquí contenida.

domingo, 27 de junio de 2021

Programación Funcional

Funciones Puras

Una función pura, deberá cumplir con dos cosas específicamente. Primero. Dados los mismos parámetros de entrada la función debe retornar siempre el mismo valor. Segundo. La función no debe tener efectos colaterales, es decir no debe haber nada en el entorno que la altere. Como por ejemplo, variables globales.

Inmutabilidad

Hablando de variables, fomentaremos el uso de variables de tipo constante, o variables inmutables. La inmutabilidad es uno de los principios de la programación funcional donde nos promueve la ausencia de estado mutable o también conocido como Stateless, para entender esto mejor lo primero que debemos comprender es qué cosa se considera estado. Estado: será cualquier dato que se pueda guardar y modificar posteriormente en memoria Una variable Un archivo Un socket Para el caso de las variables en Kotlin preferirémos declararlas como ´val´ en vez de ´var´. Una buena práctica en nuestros programas es nunca tener variables de tipo ´var´ declaradas de manera global pues estas van en contra de la inmutabilidad, aunque sé que a veces es complicado prescindir de ellas en el resto del programa. Su mejor lugar es cuando están declaradas de manera local al método.

Ref: https://platzi.com/clases/1543-kotlin-2019/19391-programacion-funcional-funciones-puras-e-inmutabil/

domingo, 6 de junio de 2021

Cómo BUSCARV múltiples valores en LibreOffice Calc

Es normal que queramos obtener múltiples valores al usar BUSCARV o VLOOKUP, pero esto no es posible, lo que tenemos que hacer es utilizar otras funciones que nos permitan hacerlo.

Sintetizamos la operación en 4 pasos:

1. Se crea el índice de la lista o arreglo

2. Se busca en la lista o arreglo los valores del índice que coincidan con nuestra búsqueda

3. Se ordenan los valores de la lista resultante de los índices

4. Se busca con el índice resultante el valor en la columna adyacente

5. (Opcional) Si no nos gusta ver el #VALUE! podemos usar la función IFERROR

Realmente es fácil de entender por pasos, pero a veces no queremos tener que hacer una columna de índices o hacer tantas fórmulas encadenadas una con otras, así que les comparto la versión resumida sin necesidad de índices:

=INDEX($C$2:$C$7,SMALL(IF($B$2:$B$7="Colombia",MATCH(ROW($B$2:$B$7),ROW($B$2:$B$7)),""),ROWS($A$1:A1)))

La misma pero en múltiples líneas para mayor entendimiento:

=INDEX($C$2:$C$7,
SMALL(
IF(
$B$2:$B$7="Colombia",
MATCH(
ROW($B$2:$B$7),
ROW($B$2:$B$7)
),
""
),
ROWS($A$1:A1)
)
)
Ahora ya puedes aplicarla sin problema cambiando los rangos y valores a buscar, es un poco larga pero es al parecer la más corta posible.

Buena suerte!

Referencia:

 - https://www.get-digital-help.com/how-to-return-multiple-values-using-vlookup-in-excel/#vertically

Más populares

Archivo del blog