Алгоритм решения задачи может быть следующим. Каждый символ введенной строки пытаемся перевести в число. Если это удается, то полученное число прибавляем к сумме.
Приведем текст программы:
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.