Haskell

Haskell 07: Índice en Listas

20 videos

111 minutos

Hola mundo como están, mi nombre es José y les doy la bienvenida a este nuevo tutorial del curso del Haskell, que estamos haciendo y bueno pues en esta ocasión vamos a ver un poco como poder hacer referencia a diferentes elementos de nuestra lista con la posición que ocupan OK. Así que aquí, pues entonces les vamos a explicar un poco que en primer lugar que si utilizamos una palabra reservada

“let” eso nos permite crear una lista ponerle un nombre y asociarlo y así poderlo usarlo con ese nombre pongo “let lista = [6,7,8]”, pues la tengo ya allí almacenada pues si yo ahora digo “lista” hay me sale [6,7,8], entonces que sucede si estás acostumbrado al concepto de “arrays” de arreglos entenderán que cada uno de los elementos de una “array” los ocupa una posición tiene un índice,

la primera es la posición 0, la segunda es la posición 7 no, pues así como han numerados; en Haskell sucede igual cada elemento de una lista, pues tiene una posición y para hacer referencia a ellos utiliza el operador “!!”. Entonces por ejemplo si yo aquí quiero hacer referencia al elemento primero pues hago así pongo “lista !!0”, que es el número que quiero hacer referencia me lleva un 6;

aquí le digo “lista !!3”, pues meda error porque no hay una posición 3 esto recuerden que es diferente la longitud que la posición 3, si queremos hacer referencia a la última en este caso, pues tiene 3 la última es la posición 2 “lista !!2” pues hay meda el 8. Haskell puede incluir listas de listas, entonces yo aquí por ejemplo voy a poner que “let lista = [[1,2],[3,4]]” ahora si yo pongo 'lista'

me sale “[[1,2],[3,4]]” pues cada uno perteneciendo a diferentes elementos de la lista de forma que si yo hago referencia al elemento “lista !!0”, de mi lista me va a salir el 1 porque le elemento 0 es esto [1,2] los elementos son los lo que van separados de comas, este es el primer elemento [1,2] y este es el segundo elemento [3,4], el primer elemento es una propia lista en si por eso cuando hago

referencia me sale esa propia lista que es el elemento cero OK. Así que ahora lo que ustedes ya imagines que cuando hago listas lo que no puedo hacer es mezclar listas de diferentes valores así que yo no puedo poner aquí “let lista = [[1,2],[‘a’,’b’]]” entonces yo aquí tengo un lista numérica y además tengo una lista de caracteres, pues eso no puede ser o es una cosa es otra recuerden

siempre este concepto de los valores, pues aquí vamos a ponerlo como estaba antes para que no mede error “let lista = [[1,2],[3,4]”, como seria para intentar acceder a este elemento de aquí [1,2], bueno, pues si hago así “lista !!0” que meda ese elemento [1,2] y si yo ahora hago así, “lista !!0 !!1” vieron sale 2 estoy accediendo dentro de elemento primero con el índice 0 dentro de ese accedo

al elemento con el índice 1, entonces de este elemento 0 [1,2], este es el índice 0 [1] es el cero del cero, y este [2] del uno del cero, lo que siempre estamos trabajando en este [1,2] que es el cero y este es el uno [3,4] del global listas así que, dentro de este elemento que es una lista independiente este es el primero [1] que tiene un cero también y este [2], es el segundo que tiene uno;

y este [3] es el cero del elemento [3,4] uno, y este [4] es uno del elemento uno y si aquí pongo “lista !!1 !!1” va hacer un 4 bien. Entonces con el operador de admiración “!!” puedo acceder a los elementos claves bueno pues en el siguiente video vamos a ver algunas otras palabras reservadas para recibir resultado en función de nuestros valores que tengan la lista funciones que ya están implementadas

para manejo de listas espero que te estén gustando los videos así que pueden darle like, suscribirse compartirlos y les mando 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!!!!!