Es muy sencillo...verás..
Si tienes que contar 'bicis', usas un contador:
que incrementas cada vez que cuentas una...
Pero y si necesitas llevar la cuenta de varias cosas distintas?... usas un array como contador...
En tu caso si quieres contar cifras (o caracteres, que es lo mismo, solo cambia el enfoque).
Creas un array de 10 elementos, en el índice 0, llevas la cuenta de aparición de cada cifra 0, en el índice 1, la cuenta de aparición de la cifra 1, etc...
Luego, la función, si operas desde un valor numérico, sería tan simple como esto:
Function ContarPresenciaDecifras(entero Valor)
Crear array de 10 elementos
Bucle mientras Valor > 0
cifra = (valor mod 10)
Array(cifra) +=1
valor = (valor \ 10) // una división entera, no necesitamos decimales
Si valor es menor que 10 luego //cuando solo queda una cifra...
Array(valor) +=1
Valor = -1 //fuerza la salida del bucle
Fin si
Fin bucle
Fin funcion
Si operas con una cadena de texto, la obtención de las cifras varía ligeramente, pero la cuenta es casi idéntica.
Espero que para la presentación de los datos puedas manejarte solo...
gracias por la respuesta, pero ahora solo conozco un poco de while, y for , me gustaria hacer el programa con estas sentencias,