reporta la lista {r, 5, b, i, 3, k, 2, 3, t, 6}.
En esta página, utilizarás el bloque mapear para crear un bloque iniciales del nombre y luego usarás mapear junto con iniciales del nombre para encontrar las iniciales de todos tus contactos.
iniciales del nombre que acepta un contacto como entrada y reporta las iniciales de esa persona.
para dividir el nombre completo del contacto en una lista de sus nombres, y luego uní la primera letra de cada nombre:
¡Inténtalo! (Cada punto rosa representa un espacio).
En un caso, dividir se centra en los caracteres exactos de la cadena. En el otro caso, te está dando lo que realmente quieres: las palabras en el nombre del contacto. En un nivel inferior de abstracción, el texto está hecho de caracteres y miras a través de cada uno de los caracteres. Pero en un nivel superior de abstracción (como cuando estás leyendo), el texto se compone de palabras. Snap! te permite pensar en este nivel superior de abstracción.
letra (1) de (elemento (3) de (lista de nombres)). letra (1) de cada elemento en la lista de nombres. Eso suena como si lo que necesitáramos fuera una función de orden superior. Las funciones de orden superior son buenas para hacer cosas con elementos individuales de una lista.Una función de orden superior (higher-order function) es una función que toma una función como entrada (o reporta una función como salida).
mapear.

El bloque
toma dos entradas: una función (un reportero con un espacio de entrada en blanco) y una lista, y reporta una nueva lista en la que cada elemento es el resultado de llamar a la función con un elemento de la lista original como entrada. Por ejemplo:

Tú eliges la función que describe el resultado de un elemento de entrada y mapear aplica esa función a cada elemento en la lista de entrada y luego reporta la lista de valores de resultado. Si tu función tiene elemento 1 de o elemento 2 de en ella, probablemente esté tratando de hacer la parte del trabajo de mapear.
mapear es una función de orden superior al igual que mantener y combinar. La función mapeada sobre la lista siempre tiene una ranura de entrada en blanco. Aquí es donde va el elemento de la lista cada vez que se realiza la función.
Esta imagen muestra cómo se podrían usar las tres funciones de orden superior:

Observa las expresiones de funciones de orden superior con estos procedimientos de formas (imaginarias).
Aquí hay una revisión rápida de las funciones de orden superior mapear, mantener y combinar.
Mapear realiza una función en cada elemento de una lista y reporta la lista de elementos modificados.
Mantener usa una función de predicado (una pregunta de verdadero/falso) para verificar cada elemento en una lista y reporta los elementos que hacen que el predicado sea verdadero. (Aprendiste sobre mantener en Unidad 2 Laboratorio 3, Página 5: Mantener elementos de una lista).-reporting.es.png)
Combinar usa una función de combinación (una función con dos entradas) para reportar los resultados de combinar todos los elementos en una lista que usen esa función. (Aprendiste sobre combinar en Unidad 2 Laboratorio 4, Página 3: Más reporteros matemáticos.)
mapear y combinar juntos para crear un reportero de iniciales del nombre que toma un nombre como entrada y reporte las iniciales de esa persona.
iniciales del nombre.
Primero, crea una expresión para reportar una lista de los nombres de todos tus contactos.
→
→

reporta la lista {r, 5, b, i, 3, k, 2, 3, t, 6}.
reporta la lista {conejo}.
elemento de espera una lista como entrada, pero mapear coloca un único elemento de palabras y números, en ese espacio.Mapear realiza la función de entrada sobre cada elemento en la lista de entrada.
La lista dentro de una lista que se muestra arriba deja más claro ahora que responde a este elemento de autocomprobación cuál es la estructura, pero tienes razón, en un programa real sería mejor usar un tipo de dato abstracto:
reporta la lista {Augusta, Boise, Columbia, Des Moines}.
reporta la lista {Augusta, Maine}.
Mapear realiza la función de entrada en cada elemento de la lista, no en toda la lista. La expresión elemento (1) de (capitales) (sin usar mapear en absoluto) reportaría la lista {Augusta, Maine}.
reporta la lista {A, B, C, D}.
mapear (letra (1) de (elemento (1) de ( ))) sobre (capitales) reportaría la lista {A, B, C, D}.
reporta la lista {Maine, Idaho, Carolina del Sur, Iowa}.
mapear (elemento (2) de ()) sobre (capitales) reportaría la lista {Maine, Idaho, Carolina del Sur, Iowa}.
reporta la lista {{Boise, Idaho}, {Columbia, Carolina del Sur}, {Des Moines, Iowa}}.
Mapear realiza la función de entrada en cada elemento de la lista, no en toda la lista. La expresión todas menos la primera de (capitales) (sin usar mapear en absoluto) reportaría la lista de listas {{Boise, Idaho}, {Columbia, South Carolina}, {Des Moines, Iowa}}.
Considera esta lista de cuadrados:

¿Cuál de las siguientes expresiones reportará una lista? Elige todas las que correspondan.



combinar reportará un número.



"Esta empresa gasta más dinero en los grandes jefes que en las personas que hacen el trabajo", dice Alyssa. ¿Tiene razón? Escribe una expresión para calcular los salarios totales de todos los que cobran menos de 100,000 dólares al año. Luego encuentra el total de todos los que cobraron más de 100,000 dólares al año.