| 
	
		|  Autor | Tema: contar letras de un texto  (Leído 29,444 veces) |  
	| 
			| 
					
						| Flamer 
								       
								
								 Desconectado 
								Mensajes: 1.071
								
								 
								crack, crack y mas crack...
								
								
								
								
								
								     | 
 
te funsiono el miosaludos
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ALONSOQ 
								
								 Desconectado 
								Mensajes: 62
								
								   | 
 
hola ALONSOQ tengo años que no manejo c++, yo puro vb6 y no lo tengo instalado el c++ en mi pc pero tedejo este codigo aver si tesirve me base en el codigo que pusiero los demas compañeros: char Caracter;char Cadena[256];
 int contador=0;
 
 printf("Introduce la cadena...")
 gets(Cadena);
 
 int Cadena_largo=strlen(cadena);
 
 for(int x=0;x<Cadena_largo;x++)
 {
 Caracter=Cadena[x];
 for(int y=0;y<Cadena_largo;y++)
 {
 if (Cadena[y]==Caracter)
 {
 Contador++;
 }
 }
 printf("La Letra ",Caracter," Se Repitio ",Contador," veces...");
 Contador=0;
 }
 return 0;
 
corrijanme si estoy mal llaque no esta compilado.  y si es eso lo que quieres saludos flamerGracias por tu aportación, esto es lo que llevo hecho, pero no funciona  #include<stdio.h>#include<conio.h>#include<string.h>#include<ctype.h>main(){char cadena[255];char aux[255];int i,j, tamano;char caracter;int a=0;for (i=0;i<tamano;i++){    caracter=cadena[i];     for (j=0;j<255;j++)    {    if (cadena[j]=caracter)   a++;    } }    } 
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Flamer 
								       
								
								 Desconectado 
								Mensajes: 1.071
								
								 
								crack, crack y mas crack...
								
								
								
								
								
								     | 
 
aaaaa lo que se me viene ala mente orita es que terrepite las letras contadas dime si estoy mal o en que te marca error para corregir si es que puedo por que como digo tengo muncho qu no programo en c++saludos
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| BlackZeroX 
								Wiki  Desconectado 
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								     | 
 
Podrías ponerlo en C; no entiendo nada.
 Que lastima... Dulces Lunas!¡. |  
						| 
								|  |  
								|  |  En línea | 
 
 The Dark Shadow is my passion. |  |  |  | 
			| 
					
						| do-while 
								       
								
								 Desconectado 
								Mensajes: 1.276
								
								 
								¿Habra que sacarla de paseo?
								
								
								
								
								
								   | 
 
¡Buenas! Aqui tienes el pseudocodigo: cadena texto;entero repeticiones[rango: 'a'..'z'] = {0...0},i=0
 
 leer texto
 minusculas(texto)
 
 mientas texto[i] != 0
 
 si texto[i] es letra
 repeticiones[texto[i]] = repeticiones[texto[i]] + 1
 fin si
 
 i = i + 1
 
 fin mientras
 
Asi tienes las veces que se repite cada letra en el texto introducido. Ahora solo tienes que adaptarlo a C. ¡Saludos!Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje. |  
						| 
								|  |  
								| « Última modificación:  3 Julio 2012, 00:28 am por do-while » |  En línea | 
 
 - Doctor, confundo los números y los colores.- Vaya marrón.
 - ¿Marrón? ¡Por el culo te la hinco!
 |  |  |  | 
			| 
					
						| SXF | 
 
#include <string.h>#include <ctype.h>#include <stdio.h> int main(){ char cadena[30]; char letra[30]; int count=0; strcpy(cadena,"hola mundo hola");  for(int k=0;k<sizecdn2;k++){    for(int j=0; j<sizecdn; j++){    if(cadena[j]==letra[k])count++;    }    printf("La letra %c aparece %d veces\n",letra[ k],  count);    count=0;}  return 0;}
 Aqui creo que lo tienes   . |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| BlackZeroX 
								Wiki  Desconectado 
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								     | 
 
perdon el codigo en C++ era asi:   #include <iostream>#include <algorithm>#include <map>#include <string> using std::cout;using std::endl;using std::cin;using std::string;using std::map;using std::sort; int main() {     // ==============    string cadena;    map<char, size_t> contador;    register map<char, size_t>::iterator it;     cout << "ingresa el texto: ";    getline(cin, cadena);    cout << endl;    cout << "Longitud: " << cadena.length() << endl;     for (register size_t i = 0; i < cadena.length(); i++) {        contador[cadena[i]]++;    }     cout << "Caracter.\tRepeticiones." << endl;    for (it = contador.begin(); it != contador.end(); ++it) {         cout << (*it).first << "\t" << (*it).second << endl;    }     cin.get();  //  Pausamos     return 0;}  
 en C  #include <stdio.h>#include <string.h>#include <stdlib.h> inline size_t readLine(FILE *file, char **line) {    size_t size = 0;      while (((*line)[ size] = getchar()) != '\n')        (*line) = (char*)realloc((* line), ++ size + 1);     (*line)[size] = '\0';     return size;} int main() {     // ==============    register size_t countChars[256];    char *line;    size_t size;     memset(countChars, 0, 256 * sizeof(size_t));    size = readLine(stdin, &line);     if (!line)    {        fprintf(stderr, "No se pudo leer la linea del teclado.");        return EXIT_FAILURE;    }     //  Contamos cada caracter.    for (register size_t i = 0; i < size; i++)        countChars[(int)(line[i])]++;     for (register int i = 0; i < 256; i++)    {        if (countChars[i])        {   //  Mopstramos solo las letras que se tenian en la frase.            printf("%c (%d) = %d\n", (char)i,  i,  countChars[ i]);  // caracter (ascii) = repetido        }    }       return 0;}  
 Dulces Lunas!¡. |  
						| 
								|  |  
								| « Última modificación:  3 Julio 2012, 03:03 am por BlackZeroX (Astaroth) » |  En línea | 
 
 The Dark Shadow is my passion. |  |  |  | 
			| 
					
						| ALONSOQ 
								
								 Desconectado 
								Mensajes: 62
								
								   | 
 
Muchas gracias a todos, 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ALONSOQ 
								
								 Desconectado 
								Mensajes: 62
								
								   | 
 
#include <string.h>#include <ctype.h>#include <stdio.h> int main(){ char cadena[30]; char letra[30]; int count=0; strcpy(cadena,"hola mundo hola");  for(int k=0;k<sizecdn2;k++){    for(int j=0; j<sizecdn; j++){    if(cadena[j]==letra[k])count++;    }    printf("La letra %c aparece %d veces\n",letra[ k],  count);    count=0;}  return 0;}
 Aqui creo que lo tienes   .Muchas gracias SXF,  A partir de tu codigo he desarrollado lo que me piden  ( para cualquier palabra) serí mucho pedirte que me volvieras a echar un cable, ya que si por ejemplo introduzco la palabra PEPE, el código me devuelve: la P aparece 2 veces, la E aparece 2 veces, la P aparece 2 veces, la E aparece 2 veces. Me gustaría poder omitir las letras que ya han aparecido muchas gracias por tu ayuda, me ha servido de mucho tu explicación. Te adjunto el código #include <string.h>#include <ctype.h>#include <stdio.h> int main(){ char palabra [30];    char cadena[30]; char letra[30];  int count=0; int tamano=0;  for (int p=0;p<tamano;p++) {} /*strcpy(letra,"hola");*//* int sizecdn2=strlen(letra);*/  for(int p=0;p<tamano;p++){    for(int j=0; j<sizecdn; j++){    if(cadena[j]==palabra[p])count++;    }    printf("La letra %c aparece %d veces\n",palabra[ p],  count);    count=0;}  return 0;}
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| DickGumshoe | 
 
Como una de las variables "palabra" o "cadena" es auxiliar, en una de ellas, cada vez que encuentres una carácter que coincida, puedes sustituirlo por un espacio. 
 Saludos.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | Contar letras minusculas y mayusculas Ejercicios
 | kay19 | 0 | 12,329 |  9 Septiembre 2009, 20:06 pm por kay19
 |  
						|   |   | [Código-Python]Contar repeticion de letras en un texto - JaAViEr|0x5d Scripting
 | 0x5d | 1 | 13,717 |  26 Abril 2012, 01:23 am por Karcrack
 |  
						|   |   | [Ayuda] Contar letras de una cadena C# .NET (C#, VB.NET, ASP)
 | Leo_Programador | 1 | 5,639 |  30 Noviembre 2014, 09:26 am por Eleкtro
 |  
						|   |   | contar numero de letras en una palabra de un arreglo. Programación C/C++
 | scc2810 | 1 | 2,774 |  6 Marzo 2017, 00:18 am por integeroverflow
 |  
						|   |   | Contar letras en cualquier oración Programación C/C++
 | erickcasita | 8 | 4,663 |  7 Enero 2018, 18:10 pm por vangodp
 |    |