Desafio: Frequência de Caracteres
Parte da seção Lógica & Fluxo do Journey de PHP da Coddy — lição 66 de 68.
Desafio
FácilVocê receberá uma única entrada: uma string de texto.
A entrada será uma string neste formato: hello world
Leia a string de entrada. Conte a frequência de cada caractere na string (insensível a maiúsculas e minúsculas), excluindo espaços. Armazene as frequências dos caracteres em um array associativo onde as chaves são os caracteres e os valores são suas contagens.
Ordene o array associativo pela chave em ordem alfabética crescente usando ksort().
Imprima cada caractere e sua frequência no seguinte formato:
[character]: [count]
Imprima cada par caractere-frequência em uma linha separada, em ordem alfabética.
Formato de entrada:
- Uma única linha contendo uma string de texto (exemplo:
hello world)
Saída esperada: Cada caractere e sua frequência impressos em uma linha separada no formato: [character]: [count], ordenados alfabeticamente pelo caractere
Experimente você mesmo
<?php
// Ler a entrada
$text = trim(fgets(STDIN));
// TODO: Escreva seu código abaixo
// 1. Converter a string para letras minúsculas
// 2. Contar as frequências dos caracteres (excluindo espaços)
// 3. Ordenar o array pela chave usando ksort()
// 4. Imprimir cada caractere e sua frequência
?>Todas as lições de Lógica & Fluxo
1Funções Avançadas
Funções AnônimasClosures e 'use'Arrow FunctionsFunções de CallbackUsando 'call_user_func'Funções VariáveisPassagem por ReferênciaFunções RecursivasRecapitulação: Mix de Funções4Arrays Multidimensionais
Criando um Array 2DAcessando Elementos de um Array 2DModificando Elementos de um Array 2DIterando com Loops AninhadosArrays Associativos 2DRecapitulação: Exercício de Grade Simples7Trabalhando com Datas e Horas
A Função 'date()'Unix Timestamps com 'time()'Introdução ao Objeto DateTimeFormatando Objetos DateTimeModificando Objetos DateTimeRecapitulação: Cálculos de Data10Desafios Finais
Desafio: Verificador de PalíndromosDesafio: Frequência de CaracteresDesafio: Total do Carrinho de ComprasDesafio: Filtro de Itens Únicos2Manipulações Avançadas de Arrays
Adicionando com 'array_push'Removendo com 'array_pop'Adicionando com 'array_unshift'Removendo com 'array_shift'Mesclando Arrays IndexadosMesclando Arrays AssociativosExtraindo com 'array_slice'Valores com 'in_array'Chaves com 'array_search'Recapitulação: Exercício de Playlist3Ordenação de Arrays
Ordenar Arrays Indexados (Crescente)Ordenar Arrays Indexados (Decrescente)Ordenar Arrays Associativos por ValorOrdenar Arrays Associativos por ChaveOrdenação por Ordem NaturalOrdenação Personalizada com 'usort'Recapitulação: Ordenação de Leaderboard