Dobrowolsky Postado Junho 12, 2008 Denunciar Share Postado Junho 12, 2008 ei galera preciso fazer um programa q conte quantas vogais e consoantes existentes em uma mensagem digitada pelo usuario.alguém ai sabe qual funçao me faz isso?brigado ^^ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcelo Utikawa da Fonseca Postado Junho 12, 2008 Denunciar Share Postado Junho 12, 2008 Não existe uma função para isto, tem que fazer na unha mesmo...Existe um macete que pode te ajudar: absolutamente tudo em um programa são dados numéricos, até mesmo os caracteres!Cada caracter possui um valor pré-definido em uma tabela. Ela é chamada de Tabela ASCII. Um detalhe importante nesta tabela é que as letras estão todas em ordem alfabética e agrupadas em sequência! Assim você pode fazer comparações como faria com um número. Inclusive até mesmo operações aritméticas você pode fazer com os caracteres. Por exemplo:printf("%c\n", 'A' + 3); A saída deste código será a letra 'D' pois o computador converteu o valor de 'A' em um número pela tabela ASCII, somou 3 e depois converteu para o caracter correspondente novamente. Assim você pode fazer uma comparação como a que está a seguir para saber se um determinado caracter é uma letra: if(ch >= 'A' && ch <= 'Z')Caso queira que eu explique melhor é só avisar! :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dobrowolsky Postado Junho 12, 2008 Autor Denunciar Share Postado Junho 12, 2008 hm brigado ^^eu so não tava querendo ter de fazer essa parada na unha hehe vou sofrer pacas =p + ta valendo C/C++ sem sofrimento não é programaçao, vamos la encarar + essa Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcelo Utikawa da Fonseca Postado Junho 13, 2008 Denunciar Share Postado Junho 13, 2008 hehehe. gostei da coragem!Se quiser ajuda é só falar. Eu não disse mais pois acho que você quer tentar fazer e se eu desse a solução seria o mesmo que dizer: "O mocinho morre no final!" :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dobrowolsky Postado Junho 13, 2008 Autor Denunciar Share Postado Junho 13, 2008 (editado) HUAhuAhuasim sime nem é certo tb já falar a soluçao assim, e acaba q eu tb nem aprendo a fazer e a quebra a cabeça afinal programaçao é isso ne? fundir a cucao negocio mesmo é quando realmente não consigo ow então não sei o q usar, pois ainda tenho as limitaçoes ne tem muita coisa q ainda não me foi apresentado... + com o tempo agente aprende ^^vlw pela disposiçaoagora so descobrir o erro =X, axo q não vai ser dificil não#include <stdio.h> #include <string.h> #include <iostream> using namespace std; int main(void) { int x, y, i, n, vogal=0,consoante=0, let; char frase[100]; FILE *arq; cout<<"\nDigite a mensagem.\n"; fflush(stdin); gets(frase); y=strlen(frase); for(i=0; i<y; i++) { let=frase[i]; switch(let) case ((65)||(69)||(73)||(79)||(85)||(97)||(101)||(105)||(111)||(117)): vogal++; break; } consoante=y-vogal; fopen("ContagemVC.bin", "wb"); fwrite(&vogal, sizeof(vogal), 1, arq); fwrite(&consoante, sizeof(consoante), 1, arq); fclose(arq); cout<<"\nA palavra digitada possui: "<<y<<" letras"; cout<<"\n"<<vogal<<" vogais"; cout<<"\n"<<consoante<<" consoantes"; system("pause"); return 0; } Editado Junho 13, 2008 por Dobrowolsky Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcelo Utikawa da Fonseca Postado Junho 13, 2008 Denunciar Share Postado Junho 13, 2008 É isso mesmo, como tudo na vida a dedicação sempre é recompensada... :)Quanto ao código: você considerou que se não for vogal é consoante. Mas e se for um número, espaço, acentuação?O correto é identificar se é consoante também. Além disso você colocou diretamente o número ASCII das vogais. desta forma fica difícil de entender! Eu faria da seguinte forma:let = toupper(frase[i]); // Passa para uppercase para testar apenas com maiúsculas if(let == 'A' || let == 'E' || let == 'I' || let == 'O' || let == 'U') { vogais++; } else if(let>='A' && let <= 'Z') { // Podia ser apenas maior que 'A' mas assim acho que fica melhor de entender! consoantes++; } else { outros++; // Inventei essa variável para se você quiser usar senão exclua este else! } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 p4t0X Postado Junho 13, 2008 Denunciar Share Postado Junho 13, 2008 (editado) er, fiz merda ;< Editado Junho 13, 2008 por p4t0X Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Dobrowolsky
ei galera preciso fazer um programa q conte quantas vogais e consoantes existentes em uma mensagem digitada pelo usuario.
alguém ai sabe qual funçao me faz isso?
brigado ^^
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.