Desafío: Frecuencia de caracteres
Parte de la sección Lógica y Flujo del Journey de PHP de Coddy — lección 66 de 68.
Desafío
FácilRecibirás una única entrada: una cadena de texto.
La entrada será una cadena en este formato: hello world
Lee la cadena de entrada. Cuenta la frecuencia de cada carácter en la cadena (insensible a mayúsculas y minúsculas), excluyendo los espacios. Almacena las frecuencias de los caracteres en un array asociativo donde las claves sean los caracteres y los valores sean sus conteos.
Ordena el array asociativo por clave en orden alfabético ascendente utilizando ksort().
Imprime cada carácter y su frecuencia en el siguiente formato:
[character]: [count]
Imprime cada par carácter-frecuencia en una línea separada, en orden alfabético.
Formato de entrada:
- Una sola línea que contiene una cadena de texto (ejemplo:
hello world)
Salida esperada: Cada carácter y su frecuencia impresos en una línea separada en el formato: [character]: [count], ordenados alfabéticamente por carácter
Pruébalo tú mismo
<?php
// Leer la entrada
$text = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación
// 1. Convertir la cadena a minúsculas
// 2. Contar las frecuencias de los caracteres (excluyendo espacios)
// 3. Ordenar el array por clave usando ksort()
// 4. Imprimir cada carácter y su frecuencia
?>Todas las lecciones de Lógica y Flujo
1Funciones avanzadas
Funciones anónimasClosures y 'use'Funciones de flechaFunciones callbackUso de 'call_user_func'Funciones variablesPaso por referenciaFunciones recursivasResumen: Miscelánea de funciones4Arreglos multidimensionales
Crear un arreglo 2DAcceder a elementos de un arreglo 2DModificar elementos de un arreglo 2DIterar con bucles anidadosArreglos asociativos 2DResumen: Ejercicio de cuadrícula simple7Trabajando con fechas y horas
La función 'date()'Timestamps de Unix con 'time()'Introducción al objeto DateTimeFormateo de objetos DateTimeModificación de objetos DateTimeResumen: Cálculos con fechas10Desafíos finales
Desafío: Verificador de palíndromosDesafío: Frecuencia de caracteresDesafío: Total del carrito de comprasDesafío: Filtro de elementos únicos2Manipulación avanzada de arrays
Agregar con 'array_push'Eliminar con 'array_pop'Agregar con 'array_unshift'Eliminar con 'array_shift'Fusionar arrays indexadosFusionar arrays asociativosExtraer con 'array_slice'Valores con 'in_array'Claves con 'array_search'Resumen: Ejercicio de Playlist3Ordenar Arrays
Ordenar arrays indexados de forma ascendenteOrdenar arrays indexados de forma descendenteOrdenar arrays asociativos por valorOrdenar arrays asociativos por claveOrdenación por orden naturalOrdenación personalizada con 'usort'Resumen: Ordenar tablas de clasificación