Haskell

Haskell 16: Listas de Duplas ZIP

20 videos

111 minutos

Hola mundo que tal están, les doy la bienvenida al curso de Haskell y bueno vamos a ver en esta ocasión como combinar diferentes listas convirtiendo listas de duplas con una función que es la ZIP, si esto te suena un poco extraño tranquilo porque ahora vamos a ver un ejemplo y esto quedara mucho más claro, bueno vamos a imaginar que tenemos dos listas, por ejemplo tengo aquí una lista que sea 'nombres' y aquí vamos a tener 'juan',

alberto, 'manolo' y 'luis', por ejemplo. Y ahora vamos a tener otra lista que sea 'estaturas', y aquí vamos a tener 1.78, 1.98, 1.67 y 1.80. Bien tengo una lista con 4 nombres y una lista con 4 datos numéricos que bueno tengo entendido que son estaturas, ahora que hay si yo quiero combinar esas dos listas de forma que se me mezclen los elementos de una con las de otras y que el primer elemento de la lista de 'nombres' coincida con el primer elemento

de la lista de 'estaturas' y así sucesivamente de forma que quedan todas entrelazadas, bueno hacemos lo siguiente, ponemos ZIP el nombre de la lista nombres espacio y el nombre de la segunda 'estaturas' y se mezclaron todas uniéndome el primer elemento con la primera estatura, el segundo nombre con la segunda estatura, aquí pone 'Juan', 1.78; 'Alberto', 1.98; 'Manolo', 1.67; 'Luis', 1.8; de forma de que las mezcla en Duplas combinando

el mismo número de posiciones de cada una de las listas, bueno esto es muy interesante puede tener muchas utilidades en este caso fue un ejemplo sencillo, como lo adapten a su código, pero bueno ahí lo tienen, otra cosa que les iba a decir es que si por ejemplo no coinciden en el número de elementos por ejemplo imaginemos que aquí en 'estaturas' tenemos muchos más datos, voy a poner más datos al azar y ahora yo puesto que una de las listas es mucho más larga

que la otra, ahora si intentara hacer esa mezcla que sucedería, bueno pues vamos a hacer otra vez la mezcla y que sucede, que Haskell hace que la lista más larga la corta para dejarlas a las dos al mismo nivel, de esa forma si una es más larga no importa, le da el corte en proporción a la lista más corta y ahí quedan niveladas; ahora vamos a hacer otra cosa, vamos a mezclar este concepto con listas infinitas,

vamos a imaginar que queremos numerar las personas que están inscriptas en algo. Ya tengo aquí mi lista de 'nombres', voy a mostrarla, y ahora vamos a imaginar que las queremos numerar, bueno utilizando listas infinitas yo aquí pongo así [1..] ya ustedes han visto esto en otros videos y pongo 'nombres' me las numera de forma de que cada nombre me pone uno, dos, tres, cuatro, porque ya le dije yo que me tiene que combinar

una lista infinita del 1 al infinito con la lista 'nombres' y que sucede como esta es infinita igualmente le da el corte vieron, así que bueno, es interesante el uso de la función ZIP ya han visto, que combina diferentes listas haciéndome listas de Duplas, bueno espero que te haya gustado el video, puedes darles al like, compartirlo, suscríbete, saludos :)

Si quieres enterarte de los nuevos cursos, suscríbete. No habrá spam, prometido :)

Sobre el autor

foto de jotajotavm
José Javier Villena

jotajota pa los amigos y jota pa los de más cnfianza.

Bio Seria: Analista-Programador en diferentes lenguajes. Tutor PREMIUM de reconocidas plataformas de nivel mundial como CodigoFacilito. Redactor de artículos para Cristalab. Mi canal de YouTube está patrocinado por la editorial ANAYA y LaTostadora. Me gusta explicar con detalle y poner varios ejemplos para que no queden dudas.

Bio Molona: Me presento :) soy informatico, ni frostis d hardware pero muy muxo de programacion, friki a medias o del to segun el dia. Me gusta programar, muxo. Manejo varios lenguajes y tdo lo ke sepa lo comparto x amor al arte. Este no es mi trabjo pero lo ago mejor y con +ganas y calidad que si lo fuera, x eso mismo, xq para mi es divertido. Solo spero al menos algo de agradecimientO!! ;)

Dios, qe gusto haber escrito este parrafo cm me a dao la gana sin pensar en ortografia ni tildes ni historias!!!!!