Алгоритм решения задачи может быть следующим. Каждый символ введенной строки пытаемся перевести в число. Если это удается, то полученное число прибавляем к сумме.

    Приведем текст программы:

Program Summa;
Var
   St:String;
   Sum:Integer;
   i,k,d:Byte;
Begin
   WriteLn('Введите строку: ');
   ReadLn(St);
   Sum:=0;{Начальное значение суммы.}
   {"Просматриваем" все символы в исходной строке.}
   For i:=1 To Length(St) Do 
     Begin
       {Перевод очередного символа  в число.}
       Val(St[i],d,k); 
       {Если символ является цифрой,}
       {то находим сумму.}
       If k=0 Then Sum:=Sum+d; 
     End;
   WriteLn('Сумма цифр в строке равна: ', Sum);
End.
Текст этой программы можно взять здесь.