Ayuda, no se tardan ni 10 min. Me urge!!!

Adik
06 de Agosto del 2004
necesito un programa donde se le introduzca texto y como resultado me diga cuantas letras y numeros contiene.
ejemplo:
A=14 0=3
B=4 1=2
. .
. .
. .
Z=0 9=1

espero me pueda alguien ayudar, el programa es para un amigo que esta estudiando mantenimiento industrial, pero le dieron la materia de programacion como de relleno y a el no le gusta nada de esto. yo se lo hiba a hacer pero por mas que me esfuerzo no creo aprender en una semana, ya estube leyendo un libro de C++ y si ya tengo la idea, pero aun tengo muchas dudas, espero comprendan, de antemano muchas gracias. MIL Gracias a Mirmidon por la ayuda pero me imagino que habra una forma mas corta.

ana
06 de Agosto del 2004
Hay otras soluciones, por supuesto. Pero más que decir que son más cortas se diría que son más elegantes. Pero se necesitan muchos más conceptos de programación. Y si no teneis mucha idea de este tema, yo os recomendaría la solución que ya os han dado.
Yo te voy a comentar como hacerlo con listas enlazadas.

class datos
{
char caracter ;
int cont;
}

class lista
{
datos un_dato;
lista *sig;
}

lista *ppio;

void insertar(lista **ppio, char caracter)
{

int insertar = 1;

lista *actual;
lista *ant;
lista elemen;

actual = *ppio;
ant = NULL;
elemen.un_dato.cont = 1;
elemen.sig = NULL;

while (actual)
{
if (actual->un_dato.caracter == caracter)
{
actual->un_dato.cont++;
insertar = 0;
}

} //while

if (insertar)
{
elemen->sig = actual;

if (!ant)
{
*ppio = elemen;
}

else
{
ant->sig=elemen;
}

} //if


} //insertar

void borrar(lista **ppio)
{
lista *actual;
lista *ant;

actual=*ppio;
ant = NULL;

while (actual)
{
ant=actual;
actual=actual->sig;
delete ant;
}

ppio = NULL;
return;

}


- Tienes que leer la cadena
- haz un bucle para recorrer la cadena y llamar a insertar con cada carácter de dicha cadena.
- Tienes que crearte otra función que recorra la lista y saque los datos. A esta función la llamas al término del bucle anterior.
- Antes de terminar el programa debes llamar a borrar() para liberar memoria.

comprobarás que aunque más bonito es bastante más complicado.