Informática, perguntado por lucas27484, 6 meses atrás

PYTHON

Escreva um programa que receba como entrada uma string, e mostre na tela um dicionário com o histograma dessa entrada como saída.

Entrada:

A entrada do programa consiste de uma string.

Saída:

A saída do programa consiste em mostrar na tela o histograma da entrada, ou seja, a distribuição de frequências de cada caractere presente naquela string, em forma de um dicionário.

Observação:

No primeiro estudo de caso, a string de entrada tem 1 letra A, 6 letras b, 6 letras l, 4 letras u, 2 letras é e 1 ' ' (espaço). Portando o dicionário final segue essa distribuição

teste no anexo

Anexos:

Soluções para a tarefa

Respondido por GeBEfte
3

Vamos diretamente ao programa e, posteriormente, comento um pouquinho do que foi feito no código.

[Python 3.8]

\sf dados~ =~ list(inpu t())\\histograma~ =~ dict()\\for~ char~ in dados:\\~~~~	contador~ =~ histograma.get(char,~ 0)\\~~~~	histograma.update(\{char~ :~ contador+1\})\\print(histograma)

Comentários:

--> Colocamos todos caracteres de uma string digitada pelo usuário em uma lista chamada "dados".

--> Utilizamos um laço for para percorrer todos caracteres ("char") guardados na lista. Se o caractere já for uma chave (key) presente no dicionário "histograma", atribuímos seu valor à variável "contador", caso contrário, "contador" recebe valor 0.

--> Utilizando o método update(), atualizamos o valor da chave char caso esta chave já esteja presente no dicionário e, caso não esteja presente, criamos uma nova chave de nome char atribuindo valor 1 (contador+1).

\Huge{\begin{array}{c}\Delta \tt{\!\!\!\!\!\!\,\,o}\!\!\!\!\!\!\!\!\:\,\perp\end{array}}Qualquer~d\acute{u}vida,~deixe~ um~coment\acute{a}rio

Perguntas interessantes