Buenas noches MV, tengo una duda con un programa en ADA (Estoy empezando con este lenguaje asi que no me metais mucha mierda xD):
Bien, me piden una función que cuente el número de digitos (0123456789) que aparecen en una ristra (unbounded), y que almacene cada uno de ellos en un array predefinido en las librerías de ADA llamado Digits_Count, de forma que en cada posición de ese array quede guardado el número de digitos diferentes que encuentre, es decir:
En la posición 0 del array aparecerá el número de 0's que aparezcan en la ristra
En la posición 1 del array aparecerá el número de 1's que aparezcan en la ristra
En la posición 2 del array aparecerá el número de 2's que aparezcan en la ristra
...
Tengo esto:
with Arrays; use Arrays;
with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Ada.Strings.Maps; use Ada.Strings.Maps;
with Ada.Strings; use Ada.Strings;
function Frec_Digits (Ristra : Unbounded_String) return Digits_Count is
p : Standard.Integer;
begin
for I in Ristra'Range loop
p := Count (Ristra, To_Set("0123456789"));
Digits_Count(i) := p;
end loop;
return Digits_Count;
end Frec_Digits;
Y no consigo averiguar como solucionarlo. Alguien tiene idea de que tengo que modificar?
PD1: no os riais, que estoy algo verde xD.
PD2: Por si sirve de algo dejo el error que me da el compilador, un saludo y gracias de antemano xD