Histograma de uma frase
Publicado por Renan Birck Pinheiro (última atualização em 07/10/2009)
[ Hits: 9.806 ]
Homepage: http://renanbirck.rocks
Programa que lê uma frase (até 100 caracteres) e dá a distribuição das letras nela.
#include <stdio.h> #include <stdlib.h> // Copyleft '09 Renan Birck int main() { char *frase; int numcharsmai[26], numcharsmin[26], i, numast; printf("***** HISTOGRAMA DE UMA STRING *****\n"); printf("Por favor note que ele não conta caracteres acentuados. \n"); printf("Introduza a frase: "); fgets(frase,100,stdin); // zera os contadores. for(i = 0; i<26; i++) numcharsmai[i] = numcharsmin[i] = 0; // anda na frase, aumentando o vetor adequadamente. while(*frase) { if(('a' <= *frase) && (*frase <= 'z')) numcharsmin[*frase - 'a']++; if(('A' <= *frase) && (*frase <= 'Z')) numcharsmai[*frase - 'A']++; frase++; } // Imprime as letras minúsculas. for(i = 'a'; i<='z'; i++) if(numcharsmin[i-'a']) // se não houver 0 de uma dada letra { printf("%c: ", i); for(numast = 0; numast < numcharsmin[i-'a']; numast++) printf("*"); // um asterisco por letra printf( "\t %d \n",numcharsmin[i-'a']); } // Imprime as letras maiúsculas. for(i = 'A'; i<='Z'; i++) if(numcharsmai[i-'A']) { printf("%c: ", i); for(numast = 0; numast < numcharsmai[i-'A']; numast++) printf("*"); printf( "\t %d \n", numcharsmai[i-'A']); } return 0; }
Números pares e ímpares de X a Y
Calculo de Diagonais de Triangulo
Equação do segundo grau em C++
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (0)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (5)