associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "ContaLetras"

Diferenças entre as versões de 1 e 2
Revisão 1e 2007-03-16 04:00:03
Tamanho: 2622
Comentário:
Revisão 2e 2008-09-26 14:06:57
Tamanho: 2622
Editor: localhost
Comentário: converted to 1.6 markup
Nenhuma diferença encontrada!

Receita: Contar letras, vogais e consoantes de um texto

Este é o tipo de problema que sempre cai em Gincanas, então resolvi fazer um programa pra resolver.

Código

   1 # -*- coding: cp1252 -*-
   2 
   3 # Conta as letras, vogais e consoantes de um texto
   4 # 03/2007 - Marco André - marco@sociesc.org.br
   5 
   6 #texto exemplo: Hino à Bandeira
   7 texto = """\
   8 Salve, lindo pendão da esperança,
   9 Salve, símbolo augusto da paz!
  10 Tua nobre presença à lembrança
  11 A grandeza da Pátria nos traz.
  12 
  13 Recebe o afeto que se encerra
  14 Em nosso peito juvenil,
  15 Querido símbolo da terra,
  16 Da amada terra do Brasil!
  17 
  18 Em teu seio formoso retratas
  19 Este céu de puríssimo azul,
  20 A verdura sem par destas matas,
  21 E o esplendor do Cruzeiro do Sul.
  22 
  23 Recebe o afeto que se encerra
  24 Em nosso peito juvenil,
  25 Querido símbolo da terra,
  26 Da amada terra do Brasil!
  27 
  28 Contemplando o teu vulto sagrado,
  29 Compreendemos o nosso dever;
  30 E o Brasil, por seus filhos amado,
  31 Poderoso e feliz há de ser.
  32 
  33 Recebe o afeto que se encerra
  34 Em nosso peito juvenil,
  35 Querido símbolo da terra,
  36 Da amada terra do Brasil!
  37 
  38 Sobre a imensa Nação Brasileira,
  39 Nos momentos de festa ou de dor,
  40 Paira sempre, sagrada bandeira,
  41 Pavilhão da Justiça e do Amor!
  42 
  43 Recebe o afeto que se encerra
  44 Em nosso peito juvenil,
  45 Querido símbolo da terra,
  46 Da amada terra do Brasil!
  47 """
  48 
  49 print "Conta Letras - Vogais e Consoantes\n"
  50 
  51 texto = texto.lower() #converte para minúsculas
  52 #removem espaços, linhas e símbolos de pontuação
  53 texto = texto.replace(" ","")
  54 texto = texto.replace("\n","")
  55 texto = texto.replace(".","")
  56 texto = texto.replace("!","")
  57 texto = texto.replace("?","")
  58 texto = texto.replace(",","")
  59 texto = texto.replace(";","")
  60 
  61 #removem acentos e cedilha
  62 texto = texto.replace("á","a")
  63 texto = texto.replace("à","a")
  64 texto = texto.replace("ã","a")
  65 texto = texto.replace("é","e")
  66 texto = texto.replace("ê","e")
  67 texto = texto.replace("í","i")
  68 texto = texto.replace("ó","o")
  69 texto = texto.replace("ô","o")
  70 texto = texto.replace("ú","u")
  71 texto = texto.replace("ç","c")
  72 
  73 vogais = 0
  74 consoantes = 0
  75 
  76 for caracter in texto:
  77     if caracter in 'aeiou':
  78        vogais = vogais + 1
  79     else:
  80        consoantes = consoantes + 1
  81         
  82 print "Vogais: %d" %vogais
  83 print "Consoantes: %d" %consoantes
  84 print "Total de letras: %d - %d" %(len(texto), (vogais+consoantes))

A saída, neste caso, fica assim:

 Conta Letras - Vogais e Consoantes
 
 Vogais: 346
 Consoantes: 389
 Total de letras: 735 - 735

Volta para CookBook.


MarcoAndreLopesMendes